Skip to content

Commit

Permalink
document the fully_determined kwarg to structural_simplify
Browse files Browse the repository at this point in the history
  • Loading branch information
MasonProtter committed Jul 20, 2024
1 parent b0542be commit 6fb9889
Showing 1 changed file with 6 additions and 3 deletions.
9 changes: 6 additions & 3 deletions src/systems/systems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,16 +8,19 @@ $(SIGNATURES)
Structurally simplify algebraic equations in a system and compute the
topological sort of the observed equations. When `simplify=true`, the `simplify`
function will be applied during the tearing process. It also takes kwargs
`allow_symbolic=false` and `allow_parameter=true` which limits the coefficient
types during tearing.
function will be applied during the tearing process. The kwargs
`allow_symbolic=false` and `allow_parameter=true` limit the coefficient
types during tearing. The kwarg `fully_determined=true` controls whether or not
an error will be thrown if the number of equations don't match the number of inputs,
outputs, and equations.
The optional argument `io` may take a tuple `(inputs, outputs)`.
This will convert all `inputs` to parameters and allow them to be unconnected, i.e.,
simplification will allow models where `n_unknowns = n_equations - n_inputs`.
"""
function structural_simplify(
sys::AbstractSystem, io = nothing; simplify = false, split = true,
allow_symbolic = false, allow_parameter = false, fully_determined = true,
kwargs...)
newsys′ = __structural_simplify(sys, io; simplify, kwargs...)
if newsys′ isa Tuple
Expand Down

0 comments on commit 6fb9889

Please sign in to comment.