Parsing input ODE system
StructuralIdentifiability.@ODEmodel
— MacroMacro for creating an ODE from a list of equations. Also injects all variables into the global scope.
This macro accepts a sybolically written ODE system and generates an ODE
structure instance:
ode = @ODEmodel(
x1'(t) = -k1 * x1(t),
y1(t) = x1(t)
)
StructuralIdentifiability.ODE
— TypeThe main structure that represents input ODE system.
Stores information about states (x_vars
), outputs (y_vars
), inputs (u_vars
), parameters (parameters
) and the equations.
This structure is constructed via @ODEmodel
macro.
StructuralIdentifiability.set_parameter_values
— Functionset_parameter_values(ode, param_values)
Input:
ode
- an ODE as aboveparam_values
- values for (possibly, some of) the parameters as dictionaryparameter
=>value
Output:
- new ode with the parameters in param_values plugged with the given numbers
Create Compartmental Model
StructuralIdentifiability.linear_compartment_model
— Functionlinear_compartment_model(graph, inputs, outputs, leaks)
Input: defines a linear compartment model with nodes numbered from 1 to n
by
graph
- and array of integer arrays representing the adjacency lists of the graphinputs
- array of input nodesoutputs
- array of output nodesleaks
- array of sink nodes
Output:
- the corresponding ODE system in the notation of https://doi.org/10.1007/s11538-015-0098-0