Finding Input-Output Equations
StructuralIdentifiability.find_ioequations — Functionfind_ioequations(ode, [var_change_policy=:default])Finds the input-output equations of an ODE system Input:
ode- the ODE systemvar_change_policy- whether to perform automatic variable change, can be one of:default,:yes,:nologlevel- logging level (default: Logging.Info)
Output:
- a dictionary from “leaders” to the corresponding input-output equations; if an extra projection is needed, it will be the value corresponding to
rand_proj_var
Reducing with respect to Input-Output Equations
StructuralIdentifiability.PBRepresentation — TypeThe structure for storing a projection-based representation of differential ideal (see Section 2.3 https://arxiv.org/abs/2111.00991). Contains the following fields:
y_names- the names of the variables with finite order in the profile (typically, outputs)u_names- the names of the variables with infinite order in the profile (typically, inputs)param_names- the names of the parametersprofile- the profile of the PB-representation (see Definition 2.13) as a dict fromy_nameswith finite orders to the ordersprojections- the corresponding projections (see Definition 2.15) as a dict fromy_namesto the projections
StructuralIdentifiability.pseudodivision — Functionpseudodivision(f, g, x)Computes the result of pseudodivision of f by g as univariate polynomials in x Input:
f- the polynomial to be dividedg- the polynomial to divide byx- the variable for the division
Output: the pseudoremainder of f divided by g w.r.t. x
StructuralIdentifiability.diffreduce — Functiondiffreduce(diffpoly, pbr)Computes the result of differential reduction of a differential polynomial diffpoly with respect to the charset defined by a PB-representation pbr Input:
diffpoly- a polynomial representing a differential polynomial to be reducedpbr- a projection-based representation
Output: the result of differential reduction of diffpoly by pbr considered as a characteristic set (see Remark 2.20 in the paper)
StructuralIdentifiability.io_switch! — Functionio_switch(pbr)In a single-output pb-representation pbr makes the leading variable to be the first of the inputs