@@ -1335,10 +1335,11 @@ Get the standard parameters of the system `sys` and its subsystems.
1335
1335
# Keyword arguments
1336
1336
1337
1337
- `initial_parameters`: Whether to include parameters for initial values of variables in the initialization system.
1338
+ - `dependent_parameters`: Whether to include parameters that are determined by parameter dependencies.
1338
1339
1339
1340
See also [`full_parameters`](@ref) and [`ModelingToolkit.get_ps`](@ref).
1340
1341
"""
1341
- function parameters (sys:: AbstractSystem ; initial_parameters = false )
1342
+ function parameters (sys:: AbstractSystem ; initial_parameters = false , dependent_parameters = false )
1342
1343
ps = get_ps (sys)
1343
1344
if ps == SciMLBase. NullParameters ()
1344
1345
return []
@@ -1347,12 +1348,15 @@ function parameters(sys::AbstractSystem; initial_parameters = false)
1347
1348
ps = first .(ps)
1348
1349
end
1349
1350
systems = get_systems (sys)
1350
- result = unique (isempty (systems) ? ps :
1351
+ ps = unique (isempty (systems) ? ps :
1351
1352
[ps; reduce (vcat, namespace_parameters .(systems))])
1352
1353
if ! initial_parameters && ! is_initializesystem (sys)
1353
- filter! (x -> ! iscall (x) || ! isa (operation (x), Initial), result )
1354
+ filter! (x -> ! iscall (x) || ! isa (operation (x), Initial), ps )
1354
1355
end
1355
- return result
1356
+ if dependent_parameters
1357
+ ps = vcat (ps, ModelingToolkit. dependent_parameters (sys))
1358
+ end
1359
+ return ps
1356
1360
end
1357
1361
1358
1362
function dependent_parameters (sys:: AbstractSystem )
@@ -1399,7 +1403,7 @@ Get all parameters of the system `sys` and its subsystems, including initial val
1399
1403
See also [`parameters`](@ref) and [`ModelingToolkit.get_ps`](@ref).
1400
1404
"""
1401
1405
function full_parameters (sys:: AbstractSystem )
1402
- vcat ( parameters (sys; initial_parameters = true ) , dependent_parameters (sys) )
1406
+ return parameters (sys; initial_parameters = true , dependent_parameters = true )
1403
1407
end
1404
1408
1405
1409
"""
0 commit comments