Skip to content

Commit eb6872b

Browse files
feat: optionally filter Initial parameters in parameters
1 parent 242bd31 commit eb6872b

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

src/systems/abstractsystem.jl

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1273,7 +1273,7 @@ Get the parameters of the system `sys` and its subsystems.
12731273
12741274
See also [`@parameters`](@ref) and [`ModelingToolkit.get_ps`](@ref).
12751275
"""
1276-
function parameters(sys::AbstractSystem)
1276+
function parameters(sys::AbstractSystem; initial_parameters = false)
12771277
ps = get_ps(sys)
12781278
if ps == SciMLBase.NullParameters()
12791279
return []
@@ -1282,7 +1282,12 @@ function parameters(sys::AbstractSystem)
12821282
ps = first.(ps)
12831283
end
12841284
systems = get_systems(sys)
1285-
unique(isempty(systems) ? ps : [ps; reduce(vcat, namespace_parameters.(systems))])
1285+
result = unique(isempty(systems) ? ps :
1286+
[ps; reduce(vcat, namespace_parameters.(systems))])
1287+
if !initial_parameters
1288+
filter!(x -> !iscall(x) || !isa(operation(x), Initial), result)
1289+
end
1290+
return result
12861291
end
12871292

12881293
function dependent_parameters(sys::AbstractSystem)
@@ -1310,7 +1315,7 @@ function parameter_dependencies(sys::AbstractSystem)
13101315
end
13111316

13121317
function full_parameters(sys::AbstractSystem)
1313-
vcat(parameters(sys), dependent_parameters(sys))
1318+
vcat(parameters(sys; initial_parameters = true), dependent_parameters(sys))
13141319
end
13151320

13161321
"""

0 commit comments

Comments
 (0)