amici.amici
Core C++ bindings
This module encompasses the complete public C++ API of AMICI, which was
exposed via swig. All functions listed here are directly accessible in the
main amici package, i.e., amici.amici.ExpData
is available as
amici.ExpData
.
Usage of functions and classes from the base amici
package is
generally recommended as they often include convenience wrappers that avoid
common pitfalls when accessing C++ types from python and implement some
nonstandard type conversions.
Module Attributes
Don't compute sensitivities. |
|
First-order sensitivities. |
|
Second-order sensitivities. |
|
Don't compute sensitivities. |
|
Forward sensitivity analysis. |
|
Adjoint sensitivity analysis. |
|
deprecated |
Functions
AMICI extension was compiled with OpenMP? |
|
|
|
|
Apply parameter scaling according to scaling |
|
Remove parameter scaling according to scaling |
|
Swig-Generated class, which, in contrast to other Vector classes, does not allow for simple interoperability with common Python types, but must be created using |
|
Core integration routine. |
|
Same as runAmiciSimulation, but for multiple ExpData instances. |
|
Apply parameter scaling according to scaling |
|
Get the string representation of the given simulation status code (see ReturnData::status). |
|
Remove parameter scaling according to the parameter scaling in pscale |
Classes
|
Swig-Generated class templating common python types including |
|
Tracks elapsed CPU time. |
|
Swig-Generated class templating common python types including |
|
ExpData carries all information about experimental or condition-specific data |
|
Swig-Generated class that implements smart pointers to ExpData as objects. |
|
Swig-Generated class templating common python types including |
|
An enumeration. |
|
Swig-Generated class templating common python types including |
|
An enumeration. |
|
An enumeration. |
|
An enumeration. |
|
An enumeration. |
|
A log item. |
|
|
|
A logger, holding a list of error messages. |
|
The Model class represents an AMICI ODE/DAE model. |
|
Container for model dimensions. |
|
Swig-Generated class that implements smart pointers to Model as objects. |
|
An enumeration. |
|
An enumeration. |
|
An enumeration. |
|
An enumeration. |
|
|
|
An enumeration. |
|
Stores all data to be returned by |
|
Swig-Generated class that implements smart pointers to ReturnData as objects. |
|
An enumeration. |
|
An enumeration. |
|
An enumeration. |
|
Container for various simulation parameters. |
implements an exchange format to store and transfer the state of a simulation at a specific timepoint. |
|
|
The Solver class provides a generic interface to CVODES and IDAS solvers, individual realizations are realized in the CVodeSolver and the IDASolver class. |
|
Swig-Generated class that implements smart pointers to Solver as objects. |
|
An enumeration. |
|
An enumeration. |
|
|
|
Swig-Generated class templating |
|
Swig-Generated class templating common python types including |
- class amici.amici.BoolVector(*args)[source]
Swig-Generated class templating common python types including
Iterable
[bool
] andnumpy.array
[bool
] to facilitate interfacing with C++ bindings.
- class amici.amici.CpuTimer[source]
Tracks elapsed CPU time.
- elapsed_milliseconds() float [source]
Get elapsed CPU time in milliseconds since initialization or last reset
- Return type
- Returns
CPU time in milliseconds
- class amici.amici.DoubleVector(*args)[source]
Swig-Generated class templating common python types including
Iterable
[float
] andnumpy.array
[float
] to facilitate interfacing with C++ bindings.
- class amici.amici.ExpData(*args)[source]
ExpData carries all information about experimental or condition-specific data
- __init__(*args)[source]
Overload 1:
default constructor
Overload 2:
Copy constructor, needs to be declared to be generated in swig
Overload 3:
constructor that only initializes dimensions
- Parameters
Overload 4:
constructor that initializes timepoints from vectors
- Parameters
nytrue (int) – Number of observables
nztrue (int) – Number of event outputs
nmaxevent (int) – Maximal number of events to track
ts (DoubleVector) – Timepoints (dimension: nt)
Overload 5:
constructor that initializes timepoints and fixed parameters from vectors
- Parameters
nytrue (int) – Number of observables
nztrue (int) – Number of event outputs
nmaxevent (int) – Maximal number of events to track
ts (DoubleVector) – Timepoints (dimension: nt)
fixedParameters (DoubleVector) – Model constants (dimension: nk)
Overload 6:
constructor that initializes timepoints and data from vectors
- Parameters
nytrue (int) – Number of observables
nztrue (int) – Number of event outputs
nmaxevent (int) – Maximal number of events to track
ts (DoubleVector) – Timepoints (dimension: nt)
observedData (DoubleVector) – observed data (dimension: nt x nytrue, row-major)
observedDataStdDev (DoubleVector) – standard deviation of observed data (dimension: nt x nytrue, row-major)
observedEvents (DoubleVector) – observed events (dimension: nmaxevents x nztrue, row-major)
observedEventsStdDev (DoubleVector) – standard deviation of observed events/roots (dimension: nmaxevents x nztrue, row-major)
Overload 7:
constructor that initializes with Model
- Parameters
model (
Model
) – pointer to model specification object
Overload 8:
constructor that initializes with returnData, adds noise according to specified sigmas
- Parameters
rdata (
ReturnData
) – return data pointer with stored simulation resultssigma_y (float) – scalar standard deviations for all observables
sigma_z (float) – scalar standard deviations for all event observables
Overload 9:
constructor that initializes with returnData, adds noise according to specified sigmas
- Parameters
rdata (
ReturnData
) – return data pointer with stored simulation resultssigma_y (DoubleVector) – vector of standard deviations for observables (dimension: nytrue or nt x nytrue, row-major)
sigma_z (DoubleVector) – vector of standard deviations for event observables (dimension: nztrue or nmaxevent x nztrue, row-major)
- property fixedParameters
Model constants
Vector of size Model::nk() or empty
- property fixedParametersPreequilibration
Model constants for pre-equilibration
Vector of size Model::nk() or empty.
- property fixedParametersPresimulation
Model constants for pre-simulation
Vector of size Model::nk() or empty.
- getObservedData() Tuple[float] [source]
Get all measurements.
- Return type
- Returns
observed data (dimension: nt x nytrue, row-major)
- getObservedDataPtr(it: int) amici::realtype const * [source]
Get measurements for a given timepoint index.
- getObservedDataStdDev() Tuple[float] [source]
Get measurement standard deviations.
- Return type
- Returns
standard deviation of observed data
- getObservedDataStdDevPtr(it: int) amici::realtype const * [source]
Get pointer to measurement standard deviations.
- getObservedEvents() Tuple[float] [source]
get function that copies data from ExpData::mz to output
- Return type
- Returns
observed event data
- getObservedEventsPtr(ie: int) amici::realtype const * [source]
get function that returns a pointer to observed data at ieth occurrence
- getObservedEventsStdDev() Tuple[float] [source]
get function that copies data from ExpData::observedEventsStdDev to output
- Return type
- Returns
standard deviation of observed event data
- getObservedEventsStdDevPtr(ie: int) amici::realtype const * [source]
get function that returns a pointer to standard deviation of observed event data at ie-th occurrence
- property id
Arbitrary (not necessarily unique) identifier.
- isSetObservedData(it: int, iy: int) bool [source]
Whether there is a measurement for the given time- and observable- index.
- isSetObservedDataStdDev(it: int, iy: int) bool [source]
Whether standard deviation for a measurement at specified timepoint- and observable index has been set.
- isSetObservedEvents(ie: int, iz: int) bool [source]
get function that checks whether event data at specified indices has been set
- isSetObservedEventsStdDev(ie: int, iz: int) bool [source]
get function that checks whether standard deviation of even data at specified indices has been set
- nmaxevent() int [source]
maximal number of events to track
- Return type
- Returns
maximal number of events to track
- nytrue() int [source]
number of observables of the non-augmented model
- Return type
- Returns
number of observables of the non-augmented model
- nztrue() int [source]
number of event observables of the non-augmented model
- Return type
- Returns
number of event observables of the non-augmented model
- property parameters
Model parameters
Vector of size Model::np() or empty with parameter scaled according to SimulationParameter::pscale.
- property plist
Parameter indices w.r.t. which to compute sensitivities
- property pscale
Parameter scales
Vector of parameter scale of size Model::np(), indicating how/if each parameter is to be scaled.
- property reinitialization_state_idxs_presim
Indices of states to be reinitialized based on provided presimulation constants / fixed parameters.
- property reinitialization_state_idxs_sim
Indices of states to be reinitialized based on provided constants / fixed parameters.
- reinitializeAllFixedParameterDependentInitialStates(nx_rdata: int)
Set reinitialization of all states based on model constants for all simulation phases.
Convenience function to populate reinitialization_state_idxs_presim and reinitialization_state_idxs_sim
- Parameters
nx_rdata (
int
) – Number of states (Model::nx_rdata)
- reinitializeAllFixedParameterDependentInitialStatesForPresimulation(nx_rdata: int)
Set reinitialization of all states based on model constants for presimulation (only meaningful if preequilibration is performed).
Convenience function to populate reinitialization_state_idxs_presim and reinitialization_state_idxs_sim
- Parameters
nx_rdata (
int
) – Number of states (Model::nx_rdata)
- reinitializeAllFixedParameterDependentInitialStatesForSimulation(nx_rdata: int)
Set reinitialization of all states based on model constants for the ‘main’ simulation (only meaningful if presimulation or preequilibration is performed).
Convenience function to populate reinitialization_state_idxs_presim and reinitialization_state_idxs_sim
- Parameters
nx_rdata (
int
) – Number of states (Model::nx_rdata)
- property reinitializeFixedParameterInitialStates
Flag indicating whether reinitialization of states depending on fixed parameters is activated
- setObservedData(*args)[source]
Overload 1:
Set all measurements.
- Parameters
observedData (DoubleVector) – observed data (dimension: nt x nytrue, row-major)
Overload 2:
Set measurements for a given observable index
- Parameters
observedData (DoubleVector) – observed data (dimension: nt)
iy (int) – observed data index
- setObservedDataStdDev(*args)[source]
Overload 1:
Set standard deviations for measurements.
- Parameters
observedDataStdDev (DoubleVector) – standard deviation of observed data (dimension: nt x nytrue, row-major)
Overload 2:
Set indentical standard deviation for all measurements.
- Parameters
stdDev (float) – standard deviation (dimension: scalar)
Overload 3:
Set standard deviations of observed data for a specific observable index.
- Parameters
observedDataStdDev (DoubleVector) – standard deviation of observed data (dimension: nt)
iy (int) – observed data index
Overload 4:
Set all standard deviation for a given observable index to the input value.
- setObservedEvents(*args)[source]
Overload 1:
set function that copies observed event data from input to ExpData::observedEvents
- Parameters
observedEvents (DoubleVector) – observed data (dimension: nmaxevent x nztrue, row-major)
Overload 2:
set function that copies observed event data for specific event observable
- Parameters
observedEvents (DoubleVector) – observed data (dimension: nmaxevent)
iz (int) – observed event data index
- setObservedEventsStdDev(*args)[source]
Overload 1:
set function that copies data from input to ExpData::observedEventsStdDev
- Parameters
observedEventsStdDev (DoubleVector) – standard deviation of observed event data
Overload 2:
set function that sets all ExpData::observedDataStdDev to the input value
- Parameters
stdDev (float) – standard deviation (dimension: scalar)
Overload 3:
set function that copies standard deviation of observed data for specific observable
- Parameters
observedEventsStdDev (DoubleVector) – standard deviation of observed data (dimension: nmaxevent)
iz (int) – observed data index
Overload 4:
set function that sets all standard deviation of a specific observable to the input value
- setTimepoints(ts: Sequence[float])[source]
Set output timepoints.
- Parameters
ts (
typing.Sequence
[float
]) – timepoints
- property sx0
Initial state sensitivities
Dimensions: Model::nx() * Model::nplist(), Model::nx() * ExpData::plist.size(), if ExpData::plist is not empty, or empty
- property t_presim
Duration of pre-simulation.
If this is > 0, presimulation will be performed from (model->t0 - t_presim) to model->t0 using the fixedParameters in fixedParametersPresimulation
- property ts_
Timepoints for which model state/outputs/… are requested
Vector of timepoints.
- property tstart_
starting time
- property x0
Initial state
Vector of size Model::nx() or empty
- class amici.amici.ExpDataPtr(*args)[source]
Swig-Generated class that implements smart pointers to ExpData as objects.
- property fixedParameters
Model constants
Vector of size Model::nk() or empty
- property fixedParametersPreequilibration
Model constants for pre-equilibration
Vector of size Model::nk() or empty.
- property fixedParametersPresimulation
Model constants for pre-simulation
Vector of size Model::nk() or empty.
- property id
Arbitrary (not necessarily unique) identifier.
- property parameters
Model parameters
Vector of size Model::np() or empty with parameter scaled according to SimulationParameter::pscale.
- property plist
Parameter indices w.r.t. which to compute sensitivities
- property pscale
Parameter scales
Vector of parameter scale of size Model::np(), indicating how/if each parameter is to be scaled.
- property reinitialization_state_idxs_presim
Indices of states to be reinitialized based on provided presimulation constants / fixed parameters.
- property reinitialization_state_idxs_sim
Indices of states to be reinitialized based on provided constants / fixed parameters.
- property reinitializeFixedParameterInitialStates
Flag indicating whether reinitialization of states depending on fixed parameters is activated
- property sx0
Initial state sensitivities
Dimensions: Model::nx() * Model::nplist(), Model::nx() * ExpData::plist.size(), if ExpData::plist is not empty, or empty
- property t_presim
Duration of pre-simulation.
If this is > 0, presimulation will be performed from (model->t0 - t_presim) to model->t0 using the fixedParameters in fixedParametersPresimulation
- property ts_
Timepoints for which model state/outputs/… are requested
Vector of timepoints.
- property tstart_
starting time
- property x0
Initial state
Vector of size Model::nx() or empty
- class amici.amici.ExpDataPtrVector(*args)[source]
Swig-Generated class templating common python types including
Iterable
[amici.amici.ExpData
] andnumpy.array
[amici.amici.ExpData
] to facilitate interfacing with C++ bindings.
- class amici.amici.FixedParameterContext(value)
An enumeration.
- preequilibration = 1
- presimulation = 2
- simulation = 0
- class amici.amici.IntVector(*args)[source]
Swig-Generated class templating common python types including
Iterable
[int
] andnumpy.array
[int
] to facilitate interfacing with C++ bindings.
- class amici.amici.InternalSensitivityMethod(value)
An enumeration.
- simultaneous = 1
- staggered = 2
- staggered1 = 3
- class amici.amici.LinearSolver(value)
An enumeration.
- KLU = 9
- LAPACKBand = 4
- LAPACKDense = 3
- SPBCG = 7
- SPGMR = 6
- SPTFQMR = 8
- SuperLUMT = 10
- band = 2
- dense = 1
- diag = 5
- class amici.amici.LogItem(*args)[source]
A log item.
- property identifier
Short identifier for the logged event
- property message
A more detailed and readable message
- property severity
Severity level
- class amici.amici.Logger[source]
A logger, holding a list of error messages.
- property items
The log items
- class amici.amici.Model(*args, **kwargs)[source]
The Model class represents an AMICI ODE/DAE model.
The model can compute various model related quantities based on symbolically generated code.
- __init__(*args, **kwargs)[source]
- Overload 1:
Default ctor
Overload 2:
Constructor with model dimensions
- Parameters
nx_rdata (int) – Number of state variables
nxtrue_rdata (int) – Number of state variables of the non-augmented model
nx_solver (int) – Number of state variables with conservation laws applied
nxtrue_solver (int) – Number of state variables of the non-augmented model with conservation laws applied
nx_solver_reinit (int) – Number of state variables with conservation laws subject to reinitialization
np (int) – Number of parameters
nk (int) – Number of constants
ny (int) – Number of observables
nytrue (int) – Number of observables of the non-augmented model
nz (int) – Number of event observables
nztrue (int) – Number of event observables of the non-augmented model
ne (int) – Number of events
nJ (int) – Number of objective functions
nw (int) – Number of repeating elements
ndwdx (int) – Number of nonzero elements in the x derivative of the repeating elements
ndwdp (int) – Number of nonzero elements in the p derivative of the repeating elements
ndwdw (int) – Number of nonzero elements in the w derivative of the repeating elements
ndxdotdw (int) – Number of nonzero elements in the \(w\) derivative of \(xdot\)
ndJydy (IntVector) – Number of nonzero elements in the \(y\) derivative of \(dJy\) (shape nytrue)
ndxrdatadxsolver (int) – Number of nonzero elements in the \(x\) derivative of \(x_rdata\)
ndxrdatadtcl (int) – Number of nonzero elements in the \(tcl\) derivative of \(x_rdata\)
ndtotal_cldx_rdata (int) – Number of nonzero elements in the \(x_rdata\) derivative of \(total_cl\)
nnz (int) – Number of nonzero elements in Jacobian
ubw (int) – Upper matrix bandwidth in the Jacobian
lbw (int) – Lower matrix bandwidth in the Jacobian
- clone() amici.amici.Model [source]
Clone this instance.
- Return type
- Returns
The clone
- fdsigmaydy(dsigmaydy: Iterable[float], t: float const, p: Iterable[float], k: Iterable[float], y: Iterable[float])[source]
Model-specific implementation of fsigmay
- Parameters
dsigmaydy (
typing.Iterable
[float
]) – partial derivative of standard deviation of measurements w.r.t. model outputst (
float
) – current timep (
typing.Iterable
[float
]) – parameter vectork (
typing.Iterable
[float
]) – constant vectory (
typing.Iterable
[float
]) – model output at timepoint t
- fdtotal_cldp(dtotal_cldp: Iterable[float], x_rdata: Iterable[float], p: Iterable[float], k: Iterable[float], ip: int const)[source]
Compute dtotal_cl / dp
- Parameters
dtotal_cldp (
typing.Iterable
[float
]) – dtotal_cl / dpx_rdata (
typing.Iterable
[float
]) – State variables with conservation laws appliedp (
typing.Iterable
[float
]) – parameter vectork (
typing.Iterable
[float
]) – constant vectorip (
int
) – Sensitivity index
- fdtotal_cldx_rdata(dtotal_cldx_rdata: Iterable[float], x_rdata: Iterable[float], p: Iterable[float], k: Iterable[float], tcl: Iterable[float])[source]
Compute dtotal_cl / dx_rdata
- Parameters
dtotal_cldx_rdata (
typing.Iterable
[float
]) – dtotal_cl / dx_rdatax_rdata (
typing.Iterable
[float
]) – State variables with conservation laws appliedp (
typing.Iterable
[float
]) – parameter vectork (
typing.Iterable
[float
]) – constant vectortcl (
typing.Iterable
[float
]) – Total abundances for conservation laws
- fdx_rdatadp(dx_rdatadp: Iterable[float], x: Iterable[float], tcl: Iterable[float], p: Iterable[float], k: Iterable[float], ip: int const)[source]
Compute dx_rdata / dp
- Parameters
dx_rdatadp (
typing.Iterable
[float
]) – dx_rdata / dpp (
typing.Iterable
[float
]) – parameter vectork (
typing.Iterable
[float
]) – constant vectorx (
typing.Iterable
[float
]) – State variables with conservation laws appliedtcl (
typing.Iterable
[float
]) – Total abundances for conservation lawsip (
int
) – Sensitivity index
- fdx_rdatadtcl(dx_rdatadtcl: Iterable[float], x: Iterable[float], tcl: Iterable[float], p: Iterable[float], k: Iterable[float])[source]
Compute dx_rdata / dtcl
- Parameters
dx_rdatadtcl (
typing.Iterable
[float
]) – dx_rdata / dtclp (
typing.Iterable
[float
]) – parameter vectork (
typing.Iterable
[float
]) – constant vectorx (
typing.Iterable
[float
]) – State variables with conservation laws appliedtcl (
typing.Iterable
[float
]) – Total abundances for conservation laws
- fdx_rdatadx_solver(dx_rdatadx_solver: Iterable[float], x: Iterable[float], tcl: Iterable[float], p: Iterable[float], k: Iterable[float])[source]
Compute dx_rdata / dx_solver
- Parameters
dx_rdatadx_solver (
typing.Iterable
[float
]) – dx_rdata / dx_solverp (
typing.Iterable
[float
]) – parameter vectork (
typing.Iterable
[float
]) – constant vectorx (
typing.Iterable
[float
]) – State variables with conservation laws appliedtcl (
typing.Iterable
[float
]) – Total abundances for conservation laws
- getAddSigmaResiduals() bool [source]
Checks whether residuals should be added to account for parameter dependent sigma.
- Return type
boolean
- Returns
sigma_res
- getAlwaysCheckFinite() bool [source]
Get setting of whether the result of every call to Model::f* should be checked for finiteness.
- Return type
boolean
- Returns
that
- getAmiciCommit() str
Returns the AMICI commit that was used to generate the model
- Return type
- Returns
AMICI commit string
- getAmiciVersion() str
Returns the AMICI version that was used to generate the model
- Return type
- Returns
AMICI version string
- getExpressionIds() Tuple[str] [source]
Get IDs of the expression.
- Return type
- Returns
Expression IDs
- getExpressionNames() Tuple[str] [source]
Get names of the expressions.
- Return type
- Returns
Expression names
- getFixedParameterById(par_id: str) float [source]
Get value of fixed parameter with the specified ID.
- getFixedParameterByName(par_name: str) float [source]
Get value of fixed parameter with the specified name.
If multiple parameters have the same name, the first parameter with matching name is returned.
- getFixedParameterIds() Tuple[str] [source]
Get IDs of the fixed model parameters.
- Return type
- Returns
Fixed parameter IDs
- getFixedParameterNames() Tuple[str] [source]
Get names of the fixed model parameters.
- Return type
- Returns
Fixed parameter names
- getFixedParameters() Tuple[float] [source]
Get values of fixed parameters.
- Return type
- Returns
Vector of fixed parameters with same ordering as in Model::getFixedParameterIds
- getInitialStateSensitivities() Tuple[float] [source]
Get the initial states sensitivities.
- Return type
- Returns
vector of initial state sensitivities
- getInitialStates() Tuple[float] [source]
Get the initial states.
- Return type
- Returns
Initial state vector
- getMinimumSigmaResiduals() float [source]
Gets the specified estimated lower boundary for sigma_y.
- Return type
- Returns
lower boundary
- getObservableIds() Tuple[str] [source]
Get IDs of the observables.
- Return type
- Returns
Observable IDs
- getObservableNames() Tuple[str] [source]
Get names of the observables.
- Return type
- Returns
Observable names
- getObservableScaling(iy: int) amici.amici.ObservableScaling [source]
Get scaling type for observable
- getParameterById(par_id: str) float [source]
Get value of first model parameter with the specified ID.
- getParameterByName(par_name: str) float [source]
Get value of first model parameter with the specified name.
- getParameterIds() Tuple[str] [source]
Get IDs of the model parameters.
- Return type
- Returns
Parameter IDs
- getParameterList() Tuple[int] [source]
Get the list of parameters for which sensitivities are computed.
- Return type
- Returns
List of parameter indices
- getParameterNames() Tuple[str] [source]
Get names of the model parameters.
- Return type
- Returns
The parameter names
- getParameterScale() amici.amici.ParameterScalingVector [source]
Get parameter scale for each parameter.
- Return type
- Returns
Vector of parameter scales
- getParameters() Tuple[float] [source]
Get parameter vector.
- Return type
- Returns
The user-set parameters (see also Model::getUnscaledParameters)
- getReinitializationStateIdxs() Tuple[int] [source]
Return indices of states to be reinitialized based on provided constants / fixed parameters
- Return type
- Returns
Those indices.
- getReinitializeFixedParameterInitialStates() bool [source]
Get whether initial states depending on fixedParameters are to be reinitialized after preequilibration and presimulation.
- Return type
boolean
- Returns
flag true / false
- getSolver() amici.amici.Solver
Retrieves the solver object
- Return type
- Returns
The Solver instance
- getStateIdsSolver() Tuple[str] [source]
Get IDs of the solver states.
- Return type
- Returns
State IDs
- getStateIsNonNegative() Tuple[bool] [source]
Get flags indicating whether states should be treated as non-negative.
- Return type
- Returns
Vector of flags
- getStateNamesSolver() Tuple[str] [source]
Get names of the solver states.
- Return type
- Returns
State names
- getSteadyStateSensitivityMode() amici.amici.SteadyStateSensitivityMode [source]
Gets the mode how sensitivities are computed in the steadystate simulation.
- Return type
- Returns
Mode
- getTimepoints() Tuple[float] [source]
Get the timepoint vector.
- Return type
- Returns
Timepoint vector
- getUnscaledParameters() Tuple[float] [source]
Get parameters with transformation according to parameter scale applied.
- Return type
- Returns
Unscaled parameters
- hasCustomInitialStateSensitivities() bool [source]
Return whether custom initial state sensitivities have been set.
- Return type
boolean
- Returns
true if has custom initial state sensitivities, otherwise false.
- hasCustomInitialStates() bool [source]
Return whether custom initial states have been set.
- Return type
boolean
- Returns
true if has custom initial states, otherwise false
- hasExpressionIds() bool [source]
Report whether the model has expression IDs set.
- Return type
boolean
- Returns
Boolean indicating whether expression ids were set. Also returns true if the number of corresponding variables is just zero.
- hasExpressionNames() bool [source]
Report whether the model has expression names set.
- Return type
boolean
- Returns
Boolean indicating whether expression names were set. Also returns true if the number of corresponding variables is just zero.
- hasFixedParameterIds() bool [source]
Report whether the model has fixed parameter IDs set.
- Return type
boolean
- Returns
Boolean indicating whether fixed parameter IDs were set. Also returns true if the number of corresponding variables is just zero.
- hasFixedParameterNames() bool [source]
Report whether the model has fixed parameter names set.
- Return type
boolean
- Returns
Boolean indicating whether fixed parameter names were set. Also returns true if the number of corresponding variables is just zero.
- hasObservableIds() bool [source]
Report whether the model has observable IDs set.
- Return type
boolean
- Returns
Boolean indicating whether observable ids were set. Also returns true if the number of corresponding variables is just zero.
- hasObservableNames() bool [source]
Report whether the model has observable names set.
- Return type
boolean
- Returns
Boolean indicating whether observable names were set. Also returns true if the number of corresponding variables is just zero.
- hasParameterIds() bool [source]
Report whether the model has parameter IDs set.
- Return type
boolean
- Returns
Boolean indicating whether parameter IDs were set. Also returns true if the number of corresponding variables is just zero.
- hasParameterNames() bool [source]
Report whether the model has parameter names set.
- Return type
boolean
- Returns
Boolean indicating whether parameter names were set. Also returns true if the number of corresponding variables is just zero.
- hasQuadraticLLH() bool [source]
Checks whether the defined noise model is gaussian, i.e., the nllh is quadratic
- Return type
boolean
- Returns
boolean flag
- hasStateIds() bool [source]
Report whether the model has state IDs set.
- Return type
boolean
- Returns
Boolean indicating whether state IDs were set. Also returns true if the number of corresponding variables is just zero.
- hasStateNames() bool [source]
Report whether the model has state names set.
- Return type
boolean
- Returns
Boolean indicating whether state names were set. Also returns true if the number of corresponding variables is just zero.
- property idlist
Flag array for DAE equations
- isFixedParameterStateReinitializationAllowed() bool
Function indicating whether reinitialization of states depending on fixed parameters is permissible
- Return type
boolean
- Returns
flag indicating whether reinitialization of states depending on fixed parameters is permissible
- property lbw
Lower bandwidth of the Jacobian
- property logger
Logger
- property nJ
Dimension of the augmented objective function for 2nd order ASA
- nMaxEvent() int [source]
Get maximum number of events that may occur for each type.
- Return type
- Returns
Maximum number of events that may occur for each type
- ncl() int [source]
Get number of conservation laws.
- Return type
- Returns
Number of conservation laws (i.e., difference between nx_rdata and nx_solver).
- property ndJydy
Number of nonzero elements in the \(y\) derivative of \(dJy\) (dimension nytrue)
- property ndtotal_cldx_rdata
Number of nonzero elements in the \(x_rdata\) derivative of \(total_cl\)
- property ndwdp
Number of nonzero elements in the p derivative of the repeating elements
- property ndwdw
Number of nonzero elements in the w derivative of the repeating elements
- property ndwdx
Number of nonzero elements in the x derivative of the repeating elements
- property ndxdotdw
Number of nonzero elements in the \(w\) derivative of \(xdot\)
- property ndxrdatadtcl
Number of nonzero elements in the \(tcl\) derivative of \(x_rdata\)
- property ndxrdatadxsolver
Number of nonzero elements in the \(x\) derivative of \(x_rdata\)
- property ne
Number of events
- property nnz
Number of nonzero entries in Jacobian
- np() int [source]
Get total number of model parameters.
- Return type
- Returns
Length of parameter vector
- nplist() int [source]
Get number of parameters wrt to which sensitivities are computed.
- Return type
- Returns
Length of sensitivity index vector
- property nw
Number of common expressions
- property nx_rdata
Number of states
- nx_reinit() int [source]
Get number of solver states subject to reinitialization.
- Return type
- Returns
Model member nx_solver_reinit
- property nx_solver
Number of states with conservation laws applied
- property nx_solver_reinit
Number of solver states subject to reinitialization
- property nxtrue_rdata
Number of states in the unaugmented system
- property nxtrue_solver
Number of states in the unaugmented system with conservation laws applied
- property ny
Number of observables
- property nytrue
Number of observables in the unaugmented system
- property nz
Number of event outputs
- property nztrue
Number of event outputs in the unaugmented system
- property o2mode
Flag indicating whether for amici::Solver::sensi_ == amici::SensitivityOrder::second directional or full second order derivative will be computed
- property pythonGenerated
Flag indicating Matlab- or Python-based model generation
- requireSensitivitiesForAllParameters()[source]
Require computation of sensitivities for all parameters p [0..np[ in natural order.
NOTE: Resets initial state sensitivities.
- setAddSigmaResiduals(sigma_res: bool)[source]
Specifies whether residuals should be added to account for parameter dependent sigma.
If set to true, additional residuals of the form \(\sqrt{\log(\sigma) + C}\) will be added. This enables least-squares optimization for variables with Gaussian noise assumption and parameter dependent standard deviation sigma. The constant \(C\) can be set via
setMinimumSigmaResiduals()
.- Parameters
sigma_res (
bool
) – if true, additional residuals are added
- setAllStatesNonNegative()[source]
Set flags indicating that all states should be treated as non-negative.
- setAlwaysCheckFinite(alwaysCheck: bool)[source]
Set whether the result of every call to Model::f* should be checked for finiteness.
- Parameters
alwaysCheck (
bool
) –
- setFixedParameterById(par_id: str, value: float)[source]
Set value of first fixed parameter with the specified ID.
- setFixedParameterByName(par_name: str, value: float)[source]
Set value of first fixed parameter with the specified name.
- setFixedParameters(k: Sequence[float])[source]
Set values for constants.
- Parameters
k (
typing.Sequence
[float
]) – Vector of fixed parameters
- setFixedParametersByIdRegex(par_id_regex: str, value: float) int [source]
Set values of all fixed parameters with the ID matching the specified regex.
- setFixedParametersByNameRegex(par_name_regex: str, value: float) int [source]
Set value of all fixed parameters with name matching the specified regex.
- setInitialStateSensitivities(sx0: Sequence[float])[source]
Set the initial state sensitivities.
- Parameters
sx0 (
typing.Sequence
[float
]) – vector of initial state sensitivities with chainrule applied. This could be a slice of ReturnData::sx or ReturnData::sx0
- setInitialStates(x0: Sequence[float])[source]
Set the initial states.
- Parameters
x0 (
typing.Sequence
[float
]) – Initial state vector
- setMinimumSigmaResiduals(min_sigma: float)[source]
Sets the estimated lower boundary for sigma_y. When
setAddSigmaResiduals()
is activated, this lower boundary must ensure that log(sigma) + min_sigma > 0.- Parameters
min_sigma (
float
) – lower boundary
- setNMaxEvent(nmaxevent: int)[source]
Set maximum number of events that may occur for each type.
- Parameters
nmaxevent (
int
) – Maximum number of events that may occur for each type
- setParameterById(*args)[source]
Overload 1:
Set model parameters according to the parameter IDs and mapped values.
- Parameters
p (StringDoubleMap) – Map of parameters IDs and values
ignoreErrors (boolean, optional) – Ignore errors such as parameter IDs in p which are not model parameters
Overload 2:
Set value of first model parameter with the specified ID.
- setParameterByName(*args)[source]
Overload 1:
Set value of first model parameter with the specified name.
Overload 2:
Set model parameters according to the parameter name and mapped values.
- Parameters
p (StringDoubleMap) – Map of parameters names and values
ignoreErrors (boolean, optional) – Ignore errors such as parameter names in p which are not model parameters
Overload 3:
Set model parameters according to the parameter name and mapped values.
- Parameters
p (StringDoubleMap) – Map of parameters names and values
ignoreErrors – Ignore errors such as parameter names in p which are not model parameters
- setParameterList(plist: Sequence[int])[source]
Set the list of parameters for which sensitivities are to be computed.
NOTE: Resets initial state sensitivities.
- Parameters
plist (
typing.Sequence
[int
]) – List of parameter indices
- setParameters(p: Sequence[float])[source]
Set the parameter vector.
- Parameters
p (
typing.Sequence
[float
]) – Vector of parameters
- setParametersByIdRegex(par_id_regex: str, value: float) int [source]
Set all values of model parameters with IDs matching the specified regular expression.
- setParametersByNameRegex(par_name_regex: str, value: float) int [source]
Set all values of all model parameters with names matching the specified regex.
- setReinitializationStateIdxs(idxs: Sequence[int])[source]
Set indices of states to be reinitialized based on provided constants / fixed parameters
- Parameters
idxs (
typing.Sequence
[int
]) – Array of state indices
- setReinitializeFixedParameterInitialStates(flag: bool)[source]
Set whether initial states depending on fixed parameters are to be reinitialized after preequilibration and presimulation.
- Parameters
flag (
bool
) – Fixed parameters reinitialized?
- setStateIsNonNegative(stateIsNonNegative: amici.amici.BoolVector)[source]
Set flags indicating whether states should be treated as non-negative.
- Parameters
stateIsNonNegative (
amici.amici.BoolVector
) – Vector of flags
- setSteadyStateSensitivityMode(mode: amici.amici.SteadyStateSensitivityMode)[source]
Set the mode how sensitivities are computed in the steadystate simulation.
- Parameters
mode (
amici.amici.SteadyStateSensitivityMode
) – Steadystate sensitivity mode
- setTimepoints(ts: Sequence[float])[source]
Set the timepoint vector.
- Parameters
ts (
typing.Sequence
[float
]) – New timepoint vector
- setUnscaledInitialStateSensitivities(sx0: Sequence[float])[source]
Set the initial state sensitivities.
- Parameters
sx0 (
typing.Sequence
[float
]) – Vector of initial state sensitivities without chainrule applied. This could be the readin from a model.sx0data saved to HDF5.
- property ubw
Upper bandwidth of the Jacobian
- class amici.amici.ModelDimensions(*args)[source]
Container for model dimensions.
Holds number of states, observables, etc.
- __init__(*args)[source]
- Overload 1:
Default ctor
Overload 2:
Constructor with model dimensions
- Parameters
nx_rdata (int) – Number of state variables
nxtrue_rdata (int) – Number of state variables of the non-augmented model
nx_solver (int) – Number of state variables with conservation laws applied
nxtrue_solver (int) – Number of state variables of the non-augmented model with conservation laws applied
nx_solver_reinit (int) – Number of state variables with conservation laws subject to reinitialization
np (int) – Number of parameters
nk (int) – Number of constants
ny (int) – Number of observables
nytrue (int) – Number of observables of the non-augmented model
nz (int) – Number of event observables
nztrue (int) – Number of event observables of the non-augmented model
ne (int) – Number of events
nJ (int) – Number of objective functions
nw (int) – Number of repeating elements
ndwdx (int) – Number of nonzero elements in the x derivative of the repeating elements
ndwdp (int) – Number of nonzero elements in the p derivative of the repeating elements
ndwdw (int) – Number of nonzero elements in the w derivative of the repeating elements
ndxdotdw (int) – Number of nonzero elements in the \(w\) derivative of \(xdot\)
ndJydy (IntVector) – Number of nonzero elements in the \(y\) derivative of \(dJy\) (shape nytrue)
ndxrdatadxsolver (int) – Number of nonzero elements in the \(x\) derivative of \(x_rdata\)
ndxrdatadtcl (int) – Number of nonzero elements in the \(tcl\) derivative of \(x_rdata\)
ndtotal_cldx_rdata (int) – Number of nonzero elements in the \(x_rdata\) derivative of \(total_cl\)
nnz (int) – Number of nonzero elements in Jacobian
ubw (int) – Upper matrix bandwidth in the Jacobian
lbw (int) – Lower matrix bandwidth in the Jacobian
- property lbw
Lower bandwidth of the Jacobian
- property nJ
Dimension of the augmented objective function for 2nd order ASA
- property ndJydy
Number of nonzero elements in the \(y\) derivative of \(dJy\) (dimension nytrue)
- property ndtotal_cldx_rdata
Number of nonzero elements in the \(x_rdata\) derivative of \(total_cl\)
- property ndwdp
Number of nonzero elements in the p derivative of the repeating elements
- property ndwdw
Number of nonzero elements in the w derivative of the repeating elements
- property ndwdx
Number of nonzero elements in the x derivative of the repeating elements
- property ndxdotdw
Number of nonzero elements in the \(w\) derivative of \(xdot\)
- property ndxrdatadtcl
Number of nonzero elements in the \(tcl\) derivative of \(x_rdata\)
- property ndxrdatadxsolver
Number of nonzero elements in the \(x\) derivative of \(x_rdata\)
- property ne
Number of events
- property nk
Number of constants
- property nnz
Number of nonzero entries in Jacobian
- property np
Number of parameters
- property nw
Number of common expressions
- property nx_rdata
Number of states
- property nx_solver
Number of states with conservation laws applied
- property nx_solver_reinit
Number of solver states subject to reinitialization
- property nxtrue_rdata
Number of states in the unaugmented system
- property nxtrue_solver
Number of states in the unaugmented system with conservation laws applied
- property ny
Number of observables
- property nytrue
Number of observables in the unaugmented system
- property nz
Number of event outputs
- property nztrue
Number of event outputs in the unaugmented system
- property ubw
Upper bandwidth of the Jacobian
- class amici.amici.ModelPtr(*args)[source]
Swig-Generated class that implements smart pointers to Model as objects.
- property idlist
Flag array for DAE equations
- property lbw
Lower bandwidth of the Jacobian
- property logger
Logger
- property nJ
Dimension of the augmented objective function for 2nd order ASA
- property ndJydy
Number of nonzero elements in the \(y\) derivative of \(dJy\) (dimension nytrue)
- property ndtotal_cldx_rdata
Number of nonzero elements in the \(x_rdata\) derivative of \(total_cl\)
- property ndwdp
Number of nonzero elements in the p derivative of the repeating elements
- property ndwdw
Number of nonzero elements in the w derivative of the repeating elements
- property ndwdx
Number of nonzero elements in the x derivative of the repeating elements
- property ndxdotdw
Number of nonzero elements in the \(w\) derivative of \(xdot\)
- property ndxrdatadtcl
Number of nonzero elements in the \(tcl\) derivative of \(x_rdata\)
- property ndxrdatadxsolver
Number of nonzero elements in the \(x\) derivative of \(x_rdata\)
- property ne
Number of events
- property nnz
Number of nonzero entries in Jacobian
- property nw
Number of common expressions
- property nx_rdata
Number of states
- property nx_solver
Number of states with conservation laws applied
- property nx_solver_reinit
Number of solver states subject to reinitialization
- property nxtrue_rdata
Number of states in the unaugmented system
- property nxtrue_solver
Number of states in the unaugmented system with conservation laws applied
- property ny
Number of observables
- property nytrue
Number of observables in the unaugmented system
- property nz
Number of event outputs
- property nztrue
Number of event outputs in the unaugmented system
- property o2mode
Flag indicating whether for amici::Solver::sensi_ == amici::SensitivityOrder::second directional or full second order derivative will be computed
- property pythonGenerated
Flag indicating Matlab- or Python-based model generation
- property ubw
Upper bandwidth of the Jacobian
- class amici.amici.NonlinearSolverIteration(value)
An enumeration.
- fixedpoint = 1
- functional = 1
- newton = 2
- amici.amici.NonlinearSolverIteration_fixedpoint = 1
deprecated
- class amici.amici.ReturnData(*args)[source]
Stores all data to be returned by
amici.amici.runAmiciSimulation()
.NOTE: multi-dimensional arrays are stored in row-major order (C-style)
- property FIM
fisher information matrix (shape nplist x nplist, row-major)
- property J
Jacobian of differential equation right hand side (shape nx x nx, row-major)
- __init__(*args)[source]
Overload 1:
Default constructor
Overload 2:
Constructor
- Parameters
ts (DoubleVector) – see amici::SimulationParameters::ts
model_dimensions (
ModelDimensions
) – Model dimensionsnplist (int) – see amici::ModelDimensions::nplist
nmaxevent (int) – see amici::ModelDimensions::nmaxevent
nt (int) – see amici::ModelDimensions::nt
newton_maxsteps (int) – see amici::Solver::newton_maxsteps
pscale (ParameterScalingVector) – see amici::SimulationParameters::pscale
o2mode (int) – see amici::SimulationParameters::o2mode
sensi (SensitivityOrder) – see amici::Solver::sensi
sensi_meth (SensitivityMethod) – see amici::Solver::sensi_meth
rdrm (RDataReporting) – see amici::Solver::rdata_reporting
quadratic_llh (boolean) – whether model defines a quadratic nllh and computing res, sres and FIM makes sense
sigma_res (boolean) – indicates whether additional residuals are to be added for each sigma
sigma_offset (float) – offset to ensure real-valuedness of sigma residuals
Overload 3:
constructor that uses information from model and solver to appropriately initialize fields
- property chi2
\(\chi^2\) value
- property cpu_time
computation time of forward solve [ms]
Warning
If AMICI was built without boost, this tracks the CPU-time of the current process. Therefore, in a multi-threaded context, this value may be incorrect.
- property cpu_timeB
computation time of backward solve [ms]
Warning
If AMICI was built without boost, this tracks the CPU-time of the current process. Therefore, in a multi-threaded context, this value may be incorrect.
- property cpu_time_total
total CPU time from entering runAmiciSimulation until exiting [ms]
Warning
If AMICI was built without boost, this tracks the CPU-time of the current process. Therefore, in a multi-threaded context, this value may be incorrect.
- property id
Arbitrary (not necessarily unique) identifier.
- property lbw
Lower bandwidth of the Jacobian
- property llh
log-likelihood value
- property messages
log messages
- property nJ
Dimension of the augmented objective function for 2nd order ASA
- property ndJydy
Number of nonzero elements in the \(y\) derivative of \(dJy\) (dimension nytrue)
- property ndtotal_cldx_rdata
Number of nonzero elements in the \(x_rdata\) derivative of \(total_cl\)
- property ndwdp
Number of nonzero elements in the p derivative of the repeating elements
- property ndwdw
Number of nonzero elements in the w derivative of the repeating elements
- property ndwdx
Number of nonzero elements in the x derivative of the repeating elements
- property ndxdotdw
Number of nonzero elements in the \(w\) derivative of \(xdot\)
- property ndxrdatadtcl
Number of nonzero elements in the \(tcl\) derivative of \(x_rdata\)
- property ndxrdatadxsolver
Number of nonzero elements in the \(x\) derivative of \(x_rdata\)
- property ne
Number of events
- property newton_maxsteps
maximal number of newton iterations for steady state calculation
- property nk
Number of constants
- property nmaxevent
maximal number of occurring events (for every event type)
- property nnz
Number of nonzero entries in Jacobian
- property np
Number of parameters
- property nplist
number of parameter for which sensitivities were requested
- property nt
number of considered timepoints
- property numerrtestfails
number of error test failures forward problem (shape nt)
- property numerrtestfailsB
number of error test failures backward problem (shape nt)
- property numnonlinsolvconvfails
number of linear solver convergence failures forward problem (shape nt)
- property numnonlinsolvconvfailsB
number of linear solver convergence failures backward problem (shape nt)
- property numrhsevals
number of right hand side evaluations forward problem (shape nt)
- property numrhsevalsB
number of right hand side evaluations backward problem (shape nt)
- property numsteps
number of integration steps forward problem (shape nt)
- property numstepsB
number of integration steps backward problem (shape nt)
- property nw
Number of common expressions
- property nx
number of states (alias nx_rdata, kept for backward compatibility)
- property nx_rdata
Number of states
- property nx_solver
Number of states with conservation laws applied
- property nx_solver_reinit
Number of solver states subject to reinitialization
- property nxtrue
number of states in the unaugmented system (alias nxtrue_rdata, kept for backward compatibility)
- property nxtrue_rdata
Number of states in the unaugmented system
- property nxtrue_solver
Number of states in the unaugmented system with conservation laws applied
- property ny
Number of observables
- property nytrue
Number of observables in the unaugmented system
- property nz
Number of event outputs
- property nztrue
Number of event outputs in the unaugmented system
- property o2mode
flag indicating whether second-order sensitivities were requested
- property order
employed order forward problem (shape nt)
- property posteq_cpu_time
computation time of the steady state solver [ms] (postequilibration)
Warning
If AMICI was built without boost, this tracks the CPU-time of the current process. Therefore, in a multi-threaded context, this value may be incorrect.
- property posteq_cpu_timeB
computation time of the steady state solver of the backward problem [ms] (postequilibration)
Warning
If AMICI was built without boost, this tracks the CPU-time of the current process. Therefore, in a multi-threaded context, this value may be incorrect.
- property posteq_numsteps
number of Newton steps for steady state problem (preequilibration) [newton, simulation, newton] (shape 3) (postequilibration)
- property posteq_numstepsB
number of simulation steps for adjoint steady state problem (postequilibration) [== 0 if analytical solution worked, > 0 otherwise]
- property posteq_status
flags indicating success of steady state solver (postequilibration)
- property posteq_t
time when steadystate was reached via simulation (postequilibration)
- property posteq_wrms
weighted root-mean-square of the rhs when steadystate was reached (postequilibration)
- property preeq_cpu_time
computation time of the steady state solver [ms] (preequilibration)
Warning
If AMICI was built without boost, this tracks the CPU-time of the current process. Therefore, in a multi-threaded context, this value may be incorrect.
- property preeq_cpu_timeB
computation time of the steady state solver of the backward problem [ms] (preequilibration)
Warning
If AMICI was built without boost, this tracks the CPU-time of the current process. Therefore, in a multi-threaded context, this value may be incorrect.
- property preeq_numsteps
number of Newton steps for steady state problem (preequilibration) [newton, simulation, newton] (length = 3)
- property preeq_numstepsB
number of simulation steps for adjoint steady state problem (preequilibration) [== 0 if analytical solution worked, > 0 otherwise]
- property preeq_status
flags indicating success of steady state solver (preequilibration)
- property preeq_t
time when steadystate was reached via simulation (preequilibration)
- property preeq_wrms
weighted root-mean-square of the rhs when steadystate was reached (preequilibration)
- property pscale
scaling of parameterization
- property rdata_reporting
reporting mode
- property res
observable (shape nt*ny, row-major)
- property rz
event trigger output (shape nmaxevent x nz, row-major)
- property s2llh
second-order parameter derivative of log-likelihood (shape nJ-1 x nplist, row-major)
- property s2rz
second-order parameter derivative of event trigger output (shape nmaxevent x nztrue x nplist x nplist, row-major)
- property sensi
sensitivity order
- property sensi_meth
sensitivity method
- property sigma_res
boolean indicating whether residuals for standard deviations have been added
- property sigmay
observable standard deviation (shape nt x ny, row-major)
- property sigmaz
event output sigma standard deviation (shape nmaxevent x nz, row-major)
- property sllh
parameter derivative of log-likelihood (shape nplist)
- property sres
parameter derivative of residual (shape nt*ny x nplist, row-major)
- property srz
parameter derivative of event trigger output (shape nmaxevent x nplist x nz, row-major)
- property ssigmay
parameter derivative of observable standard deviation (shape nt x nplist x ny, row-major)
- property ssigmaz
parameter derivative of event output standard deviation (shape nmaxevent x nplist x nz, row-major)
- property status
Simulation status code.
One of:
AMICI_SUCCESS, indicating successful simulation
AMICI_MAX_TIME_EXCEEDED, indicating that the simulation did not finish within the allowed time (see Solver.{set,get}MaxTime)
AMICI_ERROR, indicating that some error occurred during simulation (a more detailed error message will have been printed).
AMICI_NOT_RUN, if no simulation was started
- property sx
parameter derivative of state (shape nt x nplist x nx, row-major)
- property sx0
initial sensitivities (shape nplist x nx, row-major)
- property sx_ss
preequilibration sensitivities found by Newton solver (shape nplist x nx, row-major)
- property sy
parameter derivative of observable (shape nt x nplist x ny, row-major)
- property sz
parameter derivative of event output (shape nmaxevent x nplist x nz, row-major)
- property ts
timepoints (shape nt)
- property ubw
Upper bandwidth of the Jacobian
- property w
w data from the model (recurring terms in xdot, for imported SBML models from python, this contains the flux vector) (shape nt x nw, row major)
- property x
state (shape nt x nx, row-major)
- property x0
initial state (shape nx)
- property x_ss
preequilibration steady state found by Newton solver (shape nx)
- property xdot
time derivative (shape nx)
- property y
observable (shape nt x ny, row-major)
- property z
event output (shape nmaxevent x nz, row-major)
- class amici.amici.ReturnDataPtr(*args)[source]
Swig-Generated class that implements smart pointers to ReturnData as objects.
- property FIM
fisher information matrix (shape nplist x nplist, row-major)
- property J
Jacobian of differential equation right hand side (shape nx x nx, row-major)
- property chi2
\(\chi^2\) value
- property cpu_time
computation time of forward solve [ms]
Warning
If AMICI was built without boost, this tracks the CPU-time of the current process. Therefore, in a multi-threaded context, this value may be incorrect.
- property cpu_timeB
computation time of backward solve [ms]
Warning
If AMICI was built without boost, this tracks the CPU-time of the current process. Therefore, in a multi-threaded context, this value may be incorrect.
- property cpu_time_total
total CPU time from entering runAmiciSimulation until exiting [ms]
Warning
If AMICI was built without boost, this tracks the CPU-time of the current process. Therefore, in a multi-threaded context, this value may be incorrect.
- property id
Arbitrary (not necessarily unique) identifier.
- property lbw
Lower bandwidth of the Jacobian
- property llh
log-likelihood value
- property messages
log messages
- property nJ
Dimension of the augmented objective function for 2nd order ASA
- property ndJydy
Number of nonzero elements in the \(y\) derivative of \(dJy\) (dimension nytrue)
- property ndtotal_cldx_rdata
Number of nonzero elements in the \(x_rdata\) derivative of \(total_cl\)
- property ndwdp
Number of nonzero elements in the p derivative of the repeating elements
- property ndwdw
Number of nonzero elements in the w derivative of the repeating elements
- property ndwdx
Number of nonzero elements in the x derivative of the repeating elements
- property ndxdotdw
Number of nonzero elements in the \(w\) derivative of \(xdot\)
- property ndxrdatadtcl
Number of nonzero elements in the \(tcl\) derivative of \(x_rdata\)
- property ndxrdatadxsolver
Number of nonzero elements in the \(x\) derivative of \(x_rdata\)
- property ne
Number of events
- property newton_maxsteps
maximal number of newton iterations for steady state calculation
- property nk
Number of constants
- property nmaxevent
maximal number of occurring events (for every event type)
- property nnz
Number of nonzero entries in Jacobian
- property np
Number of parameters
- property nplist
number of parameter for which sensitivities were requested
- property nt
number of considered timepoints
- property numerrtestfails
number of error test failures forward problem (shape nt)
- property numerrtestfailsB
number of error test failures backward problem (shape nt)
- property numnonlinsolvconvfails
number of linear solver convergence failures forward problem (shape nt)
- property numnonlinsolvconvfailsB
number of linear solver convergence failures backward problem (shape nt)
- property numrhsevals
number of right hand side evaluations forward problem (shape nt)
- property numrhsevalsB
number of right hand side evaluations backward problem (shape nt)
- property numsteps
number of integration steps forward problem (shape nt)
- property numstepsB
number of integration steps backward problem (shape nt)
- property nw
Number of common expressions
- property nx
number of states (alias nx_rdata, kept for backward compatibility)
- property nx_rdata
Number of states
- property nx_solver
Number of states with conservation laws applied
- property nx_solver_reinit
Number of solver states subject to reinitialization
- property nxtrue
number of states in the unaugmented system (alias nxtrue_rdata, kept for backward compatibility)
- property nxtrue_rdata
Number of states in the unaugmented system
- property nxtrue_solver
Number of states in the unaugmented system with conservation laws applied
- property ny
Number of observables
- property nytrue
Number of observables in the unaugmented system
- property nz
Number of event outputs
- property nztrue
Number of event outputs in the unaugmented system
- property o2mode
flag indicating whether second-order sensitivities were requested
- property order
employed order forward problem (shape nt)
- property posteq_cpu_time
computation time of the steady state solver [ms] (postequilibration)
Warning
If AMICI was built without boost, this tracks the CPU-time of the current process. Therefore, in a multi-threaded context, this value may be incorrect.
- property posteq_cpu_timeB
computation time of the steady state solver of the backward problem [ms] (postequilibration)
Warning
If AMICI was built without boost, this tracks the CPU-time of the current process. Therefore, in a multi-threaded context, this value may be incorrect.
- property posteq_numsteps
number of Newton steps for steady state problem (preequilibration) [newton, simulation, newton] (shape 3) (postequilibration)
- property posteq_numstepsB
number of simulation steps for adjoint steady state problem (postequilibration) [== 0 if analytical solution worked, > 0 otherwise]
- property posteq_status
flags indicating success of steady state solver (postequilibration)
- property posteq_t
time when steadystate was reached via simulation (postequilibration)
- property posteq_wrms
weighted root-mean-square of the rhs when steadystate was reached (postequilibration)
- property preeq_cpu_time
computation time of the steady state solver [ms] (preequilibration)
Warning
If AMICI was built without boost, this tracks the CPU-time of the current process. Therefore, in a multi-threaded context, this value may be incorrect.
- property preeq_cpu_timeB
computation time of the steady state solver of the backward problem [ms] (preequilibration)
Warning
If AMICI was built without boost, this tracks the CPU-time of the current process. Therefore, in a multi-threaded context, this value may be incorrect.
- property preeq_numsteps
number of Newton steps for steady state problem (preequilibration) [newton, simulation, newton] (length = 3)
- property preeq_numstepsB
number of simulation steps for adjoint steady state problem (preequilibration) [== 0 if analytical solution worked, > 0 otherwise]
- property preeq_status
flags indicating success of steady state solver (preequilibration)
- property preeq_t
time when steadystate was reached via simulation (preequilibration)
- property preeq_wrms
weighted root-mean-square of the rhs when steadystate was reached (preequilibration)
- property pscale
scaling of parameterization
- property rdata_reporting
reporting mode
- property res
observable (shape nt*ny, row-major)
- property rz
event trigger output (shape nmaxevent x nz, row-major)
- property s2llh
second-order parameter derivative of log-likelihood (shape nJ-1 x nplist, row-major)
- property s2rz
second-order parameter derivative of event trigger output (shape nmaxevent x nztrue x nplist x nplist, row-major)
- property sensi
sensitivity order
- property sensi_meth
sensitivity method
- property sigma_res
boolean indicating whether residuals for standard deviations have been added
- property sigmay
observable standard deviation (shape nt x ny, row-major)
- property sigmaz
event output sigma standard deviation (shape nmaxevent x nz, row-major)
- property sllh
parameter derivative of log-likelihood (shape nplist)
- property sres
parameter derivative of residual (shape nt*ny x nplist, row-major)
- property srz
parameter derivative of event trigger output (shape nmaxevent x nplist x nz, row-major)
- property ssigmay
parameter derivative of observable standard deviation (shape nt x nplist x ny, row-major)
- property ssigmaz
parameter derivative of event output standard deviation (shape nmaxevent x nplist x nz, row-major)
- property status
Simulation status code.
One of:
AMICI_SUCCESS, indicating successful simulation
AMICI_MAX_TIME_EXCEEDED, indicating that the simulation did not finish within the allowed time (see Solver.{set,get}MaxTime)
AMICI_ERROR, indicating that some error occurred during simulation (a more detailed error message will have been printed).
AMICI_NOT_RUN, if no simulation was started
- property sx
parameter derivative of state (shape nt x nplist x nx, row-major)
- property sx0
initial sensitivities (shape nplist x nx, row-major)
- property sx_ss
preequilibration sensitivities found by Newton solver (shape nplist x nx, row-major)
- property sy
parameter derivative of observable (shape nt x nplist x ny, row-major)
- property sz
parameter derivative of event output (shape nmaxevent x nplist x nz, row-major)
- property ts
timepoints (shape nt)
- property ubw
Upper bandwidth of the Jacobian
- property w
w data from the model (recurring terms in xdot, for imported SBML models from python, this contains the flux vector) (shape nt x nw, row major)
- property x
state (shape nt x nx, row-major)
- property x0
initial state (shape nx)
- property x_ss
preequilibration steady state found by Newton solver (shape nx)
- property xdot
time derivative (shape nx)
- property y
observable (shape nt x ny, row-major)
- property z
event output (shape nmaxevent x nz, row-major)
- amici.amici.SensitivityMethod_adjoint = 2
Adjoint sensitivity analysis.
- amici.amici.SensitivityMethod_forward = 1
Forward sensitivity analysis.
- amici.amici.SensitivityMethod_none = 0
Don’t compute sensitivities.
- amici.amici.SensitivityOrder_first = 1
First-order sensitivities.
- amici.amici.SensitivityOrder_none = 0
Don’t compute sensitivities.
- amici.amici.SensitivityOrder_second = 2
Second-order sensitivities.
- class amici.amici.SimulationParameters(*args)[source]
Container for various simulation parameters.
- __init__(*args)[source]
Overload 1:
Constructor
- Parameters
timepoints (DoubleVector) – Timepoints for which simulation results are requested
Overload 2:
Constructor
- Parameters
fixedParameters (DoubleVector) – Model constants
parameters (DoubleVector) – Model parameters
Overload 3:
Constructor
- Parameters
fixedParameters (DoubleVector) – Model constants
parameters (DoubleVector) – Model parameters
plist (IntVector) – Model parameter indices w.r.t. which sensitivities are to be computed
Overload 4:
Constructor
- Parameters
timepoints (DoubleVector) – Timepoints for which simulation results are requested
fixedParameters (DoubleVector) – Model constants
parameters (DoubleVector) – Model parameters
- property fixedParameters
Model constants
Vector of size Model::nk() or empty
- property fixedParametersPreequilibration
Model constants for pre-equilibration
Vector of size Model::nk() or empty.
- property fixedParametersPresimulation
Model constants for pre-simulation
Vector of size Model::nk() or empty.
- property parameters
Model parameters
Vector of size Model::np() or empty with parameter scaled according to SimulationParameter::pscale.
- property plist
Parameter indices w.r.t. which to compute sensitivities
- property pscale
Parameter scales
Vector of parameter scale of size Model::np(), indicating how/if each parameter is to be scaled.
- property reinitialization_state_idxs_presim
Indices of states to be reinitialized based on provided presimulation constants / fixed parameters.
- property reinitialization_state_idxs_sim
Indices of states to be reinitialized based on provided constants / fixed parameters.
- reinitializeAllFixedParameterDependentInitialStates(nx_rdata: int)[source]
Set reinitialization of all states based on model constants for all simulation phases.
Convenience function to populate reinitialization_state_idxs_presim and reinitialization_state_idxs_sim
- Parameters
nx_rdata (
int
) – Number of states (Model::nx_rdata)
- reinitializeAllFixedParameterDependentInitialStatesForPresimulation(nx_rdata: int)[source]
Set reinitialization of all states based on model constants for presimulation (only meaningful if preequilibration is performed).
Convenience function to populate reinitialization_state_idxs_presim and reinitialization_state_idxs_sim
- Parameters
nx_rdata (
int
) – Number of states (Model::nx_rdata)
- reinitializeAllFixedParameterDependentInitialStatesForSimulation(nx_rdata: int)[source]
Set reinitialization of all states based on model constants for the ‘main’ simulation (only meaningful if presimulation or preequilibration is performed).
Convenience function to populate reinitialization_state_idxs_presim and reinitialization_state_idxs_sim
- Parameters
nx_rdata (
int
) – Number of states (Model::nx_rdata)
- property reinitializeFixedParameterInitialStates
Flag indicating whether reinitialization of states depending on fixed parameters is activated
- property sx0
Initial state sensitivities
Dimensions: Model::nx() * Model::nplist(), Model::nx() * ExpData::plist.size(), if ExpData::plist is not empty, or empty
- property t_presim
Duration of pre-simulation.
If this is > 0, presimulation will be performed from (model->t0 - t_presim) to model->t0 using the fixedParameters in fixedParametersPresimulation
- property ts_
Timepoints for which model state/outputs/… are requested
Vector of timepoints.
- property tstart_
starting time
- property x0
Initial state
Vector of size Model::nx() or empty
- class amici.amici.SimulationState[source]
implements an exchange format to store and transfer the state of a simulation at a specific timepoint.
- property dx
state variables
- property state
state of the model that was used for simulation
- property sx
state variable sensitivity
- property t
timepoint
- property x
state variables
- class amici.amici.Solver(*args, **kwargs)[source]
The Solver class provides a generic interface to CVODES and IDAS solvers, individual realizations are realized in the CVodeSolver and the IDASolver class. All transient private/protected members (CVODES/IDAS memory, interface variables and status flags) are specified as mutable and not included in serialization or equality checks. No solver setting parameter should be marked mutable.
NOTE: Any changes in data members here must be propagated to copy ctor, equality operator, serialization functions in serialization.h, and amici::hdf5::(read/write)SolverSettings(From/To)HDF5 in hdf5.cpp.
- clone() amici.amici.Solver [source]
Clone this instance
- Return type
- Returns
The clone
- getAbsoluteTolerance() float [source]
Get the absolute tolerances for the forward problem
Same tolerance is used for the backward problem if not specified differently via setAbsoluteToleranceASA.
- Return type
- Returns
absolute tolerances
- getAbsoluteToleranceB() float [source]
Returns the absolute tolerances for the backward problem for adjoint sensitivity analysis
- Return type
- Returns
absolute tolerances
- getAbsoluteToleranceFSA() float [source]
Returns the absolute tolerances for the forward sensitivity problem
- Return type
- Returns
absolute tolerances
- getAbsoluteToleranceQuadratures() float [source]
returns the absolute tolerance for the quadrature problem
- Return type
- Returns
absolute tolerance
- getAbsoluteToleranceSteadyState() float [source]
returns the absolute tolerance for the steady state problem
- Return type
- Returns
absolute tolerance
- getAbsoluteToleranceSteadyStateSensi() float [source]
returns the absolute tolerance for the sensitivities of the steady state problem
- Return type
- Returns
absolute tolerance
- getCpuTime() float [source]
Reads out the CPU time needed for forward solve
- Return type
- Returns
cpu_time
- getCpuTimeB() float [source]
Reads out the CPU time needed for backward solve
- Return type
- Returns
cpu_timeB
- getInternalSensitivityMethod() amici.amici.InternalSensitivityMethod [source]
returns the internal sensitivity method
- Return type
- Returns
internal sensitivity method
- getInterpolationType() amici.amici.InterpolationType [source]
- Return type
- Returns
- getLinearMultistepMethod() amici.amici.LinearMultistepMethod [source]
returns the linear system multistep method
- Return type
- Returns
linear system multistep method
- getLinearSolver() amici.amici.LinearSolver [source]
- Return type
- Returns
- getMaxSteps() int [source]
returns the maximum number of solver steps for the forward problem
- Return type
- Returns
maximum number of solver steps
- getMaxStepsBackwardProblem() int [source]
returns the maximum number of solver steps for the backward problem
- Return type
- Returns
maximum number of solver steps
- getMaxTime() float [source]
Returns the maximum time allowed for integration
- Return type
- Returns
Time in seconds
- getNewtonDampingFactorLowerBound() float [source]
Get a lower bound of the damping factor used in the Newton solver
- Return type
- Returns
- getNewtonDampingFactorMode() amici.amici.NewtonDampingFactorMode [source]
Get a state of the damping factor used in the Newton solver
- Return type
- Returns
- getNewtonMaxSteps() int [source]
Get maximum number of allowed Newton steps for steady state computation
- Return type
- Returns
- getNewtonStepSteadyStateCheck() bool [source]
Returns how convergence checks for steadystate computation are performed. If activated, convergence checks are limited to every 25 steps in the simulation solver to limit performance impact.
- Return type
boolean
- Returns
boolean flag indicating newton step (true) or the right hand side (false)
- getNonlinearSolverIteration() amici.amici.NonlinearSolverIteration [source]
returns the nonlinear system solution method
- Return type
- Returns
- getRelativeTolerance() float [source]
Get the relative tolerances for the forward problem
Same tolerance is used for the backward problem if not specified differently via setRelativeToleranceASA.
- Return type
- Returns
relative tolerances
- getRelativeToleranceB() float [source]
Returns the relative tolerances for the adjoint sensitivity problem
- Return type
- Returns
relative tolerances
- getRelativeToleranceFSA() float [source]
Returns the relative tolerances for the forward sensitivity problem
- Return type
- Returns
relative tolerances
- getRelativeToleranceQuadratures() float [source]
Returns the relative tolerance for the quadrature problem
- Return type
- Returns
relative tolerance
- getRelativeToleranceSteadyState() float [source]
returns the relative tolerance for the steady state problem
- Return type
- Returns
relative tolerance
- getRelativeToleranceSteadyStateSensi() float [source]
returns the relative tolerance for the sensitivities of the steady state problem
- Return type
- Returns
relative tolerance
- getReturnDataReportingMode() amici.amici.RDataReporting [source]
returns the ReturnData reporting mode
- Return type
- Returns
ReturnData reporting mode
- getSensiSteadyStateCheck() bool [source]
Returns how convergence checks for steadystate computation are performed.
- Return type
boolean
- Returns
boolean flag indicating state and sensitivity equations (true) or only state variables (false).
- getSensitivityMethod() amici.amici.SensitivityMethod [source]
Return current sensitivity method
- Return type
- Returns
method enum
- getSensitivityMethodPreequilibration() amici.amici.SensitivityMethod [source]
Return current sensitivity method during preequilibration
- Return type
- Returns
method enum
- getSensitivityOrder() amici.amici.SensitivityOrder [source]
Get sensitivity order
- Return type
- Returns
sensitivity order
- getStabilityLimitFlag() bool [source]
returns stability limit detection mode
- Return type
boolean
- Returns
stldet can be false (deactivated) or true (activated)
- getStateOrdering() int [source]
Gets KLU / SuperLUMT state ordering mode
- Return type
- Returns
State-ordering as integer according to SUNLinSolKLU::StateOrdering or SUNLinSolSuperLUMT::StateOrdering (which differ).
- getSteadyStateSensiToleranceFactor() float [source]
returns the steady state sensitivity simulation tolerance factor.
Steady state sensitivity simulation tolerances are the product of the sensitivity simulation tolerances and this factor, unless manually set with set(Absolute/Relative)ToleranceSteadyStateSensi().
- Return type
- Returns
steady state simulation tolerance factor
- getSteadyStateToleranceFactor() float [source]
returns the steady state simulation tolerance factor.
Steady state simulation tolerances are the product of the simulation tolerances and this factor, unless manually set with set(Absolute/Relative)ToleranceSteadyState().
- Return type
- Returns
steady state simulation tolerance factor
- property logger
- nplist() int [source]
number of parameters with which the solver was initialized
- Return type
- Returns
sx.getLength()
- nquad() int [source]
number of quadratures with which the solver was initialized
- Return type
- Returns
xQB.getLength()
- nx() int [source]
number of states with which the solver was initialized
- Return type
- Returns
x.getLength()
- setAbsoluteTolerance(atol: float)[source]
Sets the absolute tolerances for the forward problem
Same tolerance is used for the backward problem if not specified differently via setAbsoluteToleranceASA.
- Parameters
atol (
float
) – absolute tolerance (non-negative number)
- setAbsoluteToleranceB(atol: float)[source]
Sets the absolute tolerances for the backward problem for adjoint sensitivity analysis
- Parameters
atol (
float
) – absolute tolerance (non-negative number)
- setAbsoluteToleranceFSA(atol: float)[source]
Sets the absolute tolerances for the forward sensitivity problem
- Parameters
atol (
float
) – absolute tolerance (non-negative number)
- setAbsoluteToleranceQuadratures(atol: float)[source]
sets the absolute tolerance for the quadrature problem
- Parameters
atol (
float
) – absolute tolerance (non-negative number)
- setAbsoluteToleranceSteadyState(atol: float)[source]
sets the absolute tolerance for the steady state problem
- Parameters
atol (
float
) – absolute tolerance (non-negative number)
- setAbsoluteToleranceSteadyStateSensi(atol: float)[source]
sets the absolute tolerance for the sensitivities of the steady state problem
- Parameters
atol (
float
) – absolute tolerance (non-negative number)
- setInternalSensitivityMethod(ism: amici.amici.InternalSensitivityMethod)[source]
sets the internal sensitivity method
- Parameters
ism (
amici.amici.InternalSensitivityMethod
) – internal sensitivity method
- setInterpolationType(interpType: amici.amici.InterpolationType)[source]
sets the interpolation of the forward solution that is used for the backwards problem
- Parameters
interpType (
amici.amici.InterpolationType
) – interpolation type
- setLinearMultistepMethod(lmm: amici.amici.LinearMultistepMethod)[source]
sets the linear system multistep method
- Parameters
lmm (
amici.amici.LinearMultistepMethod
) – linear system multistep method
- setLinearSolver(linsol: amici.amici.LinearSolver)[source]
- Parameters
linsol (
amici.amici.LinearSolver
) –
- setMaxSteps(maxsteps: int)[source]
sets the maximum number of solver steps for the forward problem
- Parameters
maxsteps (
int
) – maximum number of solver steps (positive number)
- setMaxStepsBackwardProblem(maxsteps: int)[source]
sets the maximum number of solver steps for the backward problem
- Parameters
maxsteps (
int
) – maximum number of solver steps (non-negative number)
Notes: default behaviour (100 times the value for the forward problem) can be restored by passing maxsteps=0
- setMaxTime(maxtime: float)[source]
Set the maximum CPU time allowed for integration
- Parameters
maxtime (
float
) – Time in seconds. Zero means infinite time.
- setNewtonDampingFactorLowerBound(dampingFactorLowerBound: float)[source]
Set a lower bound of the damping factor in the Newton solver
- Parameters
dampingFactorLowerBound (
float
) –
- setNewtonDampingFactorMode(dampingFactorMode: amici.amici.NewtonDampingFactorMode)[source]
Turn on/off a damping factor in the Newton method
- Parameters
dampingFactorMode (
amici.amici.NewtonDampingFactorMode
) –
- setNewtonMaxSteps(newton_maxsteps: int)[source]
Set maximum number of allowed Newton steps for steady state computation
- Parameters
newton_maxsteps (
int
) –
- setNewtonStepSteadyStateCheck(flag: bool)[source]
Sets how convergence checks for steadystate computation are performed.
- Parameters
flag (
bool
) – boolean flag to pick newton step (true) or the right hand side (false, default)
- setNonlinearSolverIteration(iter: amici.amici.NonlinearSolverIteration)[source]
sets the nonlinear system solution method
- Parameters
iter (
amici.amici.NonlinearSolverIteration
) – nonlinear system solution method
- setRelativeTolerance(rtol: float)[source]
Sets the relative tolerances for the forward problem
Same tolerance is used for the backward problem if not specified differently via setRelativeToleranceASA.
- Parameters
rtol (
float
) – relative tolerance (non-negative number)
- setRelativeToleranceB(rtol: float)[source]
Sets the relative tolerances for the adjoint sensitivity problem
- Parameters
rtol (
float
) – relative tolerance (non-negative number)
- setRelativeToleranceFSA(rtol: float)[source]
Sets the relative tolerances for the forward sensitivity problem
- Parameters
rtol (
float
) – relative tolerance (non-negative number)
- setRelativeToleranceQuadratures(rtol: float)[source]
sets the relative tolerance for the quadrature problem
- Parameters
rtol (
float
) – relative tolerance (non-negative number)
- setRelativeToleranceSteadyState(rtol: float)[source]
sets the relative tolerance for the steady state problem
- Parameters
rtol (
float
) – relative tolerance (non-negative number)
- setRelativeToleranceSteadyStateSensi(rtol: float)[source]
sets the relative tolerance for the sensitivities of the steady state problem
- Parameters
rtol (
float
) – relative tolerance (non-negative number)
- setReturnDataReportingMode(rdrm: amici.amici.RDataReporting)[source]
sets the ReturnData reporting mode
- Parameters
rdrm (
amici.amici.RDataReporting
) – ReturnData reporting mode
- setSensiSteadyStateCheck(flag: bool)[source]
Sets for which variables convergence checks for steadystate computation are performed.
- Parameters
flag (
bool
) – boolean flag to pick state and sensitivity equations (true, default) or only state variables (false).
- setSensitivityMethod(sensi_meth: amici.amici.SensitivityMethod)[source]
Set sensitivity method
- Parameters
sensi_meth (
amici.amici.SensitivityMethod
) –
- setSensitivityMethodPreequilibration(sensi_meth_preeq: amici.amici.SensitivityMethod)[source]
Set sensitivity method for preequilibration
- Parameters
sensi_meth_preeq (
amici.amici.SensitivityMethod
) –
- setSensitivityOrder(sensi: amici.amici.SensitivityOrder)[source]
Set the sensitivity order
- Parameters
sensi (
amici.amici.SensitivityOrder
) – sensitivity order
- setStabilityLimitFlag(stldet: bool)[source]
set stability limit detection mode
- Parameters
stldet (
bool
) – can be false (deactivated) or true (activated)
- setStateOrdering(ordering: int)[source]
Sets KLU / SuperLUMT state ordering mode
This only applies when linsol is set to LinearSolver::KLU or LinearSolver::SuperLUMT. Mind the difference between SUNLinSolKLU::StateOrdering and SUNLinSolSuperLUMT::StateOrdering.
- Parameters
ordering (
int
) – state ordering
- setSteadyStateSensiToleranceFactor(factor: float)[source]
set the steady state sensitivity simulation tolerance factor.
Steady state sensitivity simulation tolerances are the product of the sensitivity simulation tolerances and this factor, unless manually set with set(Absolute/Relative)ToleranceSteadyStateSensi().
- Parameters
factor (
float
) – tolerance factor (non-negative number)
- setSteadyStateToleranceFactor(factor: float)[source]
set the steady state simulation tolerance factor.
Steady state simulation tolerances are the product of the simulation tolerances and this factor, unless manually set with set(Absolute/Relative)ToleranceSteadyState().
- Parameters
factor (
float
) – tolerance factor (non-negative number)
- switchForwardSensisOff()[source]
Disable forward sensitivity integration (used in steady state sim)
- timeExceeded(interval: int = 1) bool [source]
Check whether maximum integration time was exceeded
- Parameters
interval (
int
) – Only check the time everyinterval
ths call to avoid potentially relatively expensive syscalls- Return type
boolean
- Returns
True if the maximum integration time was exceeded, false otherwise.
- class amici.amici.SolverPtr(*args)[source]
Swig-Generated class that implements smart pointers to Solver as objects.
- property logger
- class amici.amici.SteadyStateSensitivityMode(value)
An enumeration.
- integrateIfNewtonFails = 2
- integrationOnly = 1
- newtonOnly = 0
- class amici.amici.SteadyStateStatus(value)
An enumeration.
- failed = -1
- failed_convergence = -2
- failed_damping = -4
- failed_factorization = -3
- failed_too_long_simulation = -5
- not_run = 0
- success = 1
- class amici.amici.StringDoubleMap(*args)[source]
Swig-Generated class templating
Dict
[str
,float
] to facilitate interfacing with C++ bindings.
- class amici.amici.StringVector(*args)[source]
Swig-Generated class templating common python types including
Iterable
[str
] andnumpy.array
[str
] to facilitate interfacing with C++ bindings.
- amici.amici.compiledWithOpenMP() bool [source]
AMICI extension was compiled with OpenMP?
- Return type
- amici.amici.getScaledParameter(unscaledParameter: float, scaling: amici.amici.ParameterScaling) float [source]
Apply parameter scaling according to scaling
- Parameters
unscaledParameter (
float
) –scaling (
amici.amici.ParameterScaling
) – parameter scaling
- Return type
- Returns
Scaled parameter
- amici.amici.getUnscaledParameter(scaledParameter: float, scaling: amici.amici.ParameterScaling) float [source]
Remove parameter scaling according to scaling
- Parameters
scaledParameter (
float
) – scaled parameterscaling (
amici.amici.ParameterScaling
) – parameter scaling
- Return type
- Returns
Unscaled parameter
- amici.amici.parameterScalingFromIntVector(intVec: Sequence[int]) Tuple[amici.amici.ParameterScaling] [source]
Swig-Generated class, which, in contrast to other Vector classes, does not allow for simple interoperability with common Python types, but must be created using
amici.amici.parameterScalingFromIntVector()
- Return type
- amici.amici.runAmiciSimulation(solver: amici.amici.Solver, edata: amici.amici.ExpData, model: amici.amici.Model, rethrow: bool = False) amici.amici.ReturnData [source]
Core integration routine. Initializes the solver and runs the forward and backward problem.
- Parameters
solver (
amici.amici.Solver
) – Solver instanceedata (
amici.amici.ExpData
) – pointer to experimental data objectmodel (
amici.amici.Model
) – model specification objectrethrow (
bool
) – rethrow integration exceptions?
- Return type
- Returns
rdata pointer to return data object
- amici.amici.runAmiciSimulations(solver: amici.amici.Solver, edatas: amici.amici.ExpDataPtrVector, model: amici.amici.Model, failfast: bool, num_threads: int) Tuple[amici.amici.ReturnData] [source]
Same as runAmiciSimulation, but for multiple ExpData instances. When compiled with OpenMP support, this function runs multi-threaded.
- Parameters
solver (
amici.amici.Solver
) – Solver instanceedatas (
amici.amici.ExpDataPtrVector
) – experimental data objectsmodel (
amici.amici.Model
) – model specification objectfailfast (
bool
) – flag to allow early terminationnum_threads (
int
) – number of threads for parallel execution
- Return type
Iterable[ReturnData]
- Returns
vector of pointers to return data objects
- amici.amici.scaleParameters(bufferUnscaled: Iterable[float], pscale: Iterable[ParameterScaling], bufferScaled: Iterable[float])[source]
Apply parameter scaling according to scaling
- Parameters
bufferUnscaled (
typing.Iterable
[float
]) –pscale (
typing.Iterable
[amici.amici.ParameterScaling
]) – parameter scalingbufferScaled (
typing.Iterable
[float
]) – destination
- amici.amici.simulation_status_to_str(status: int) str [source]
Get the string representation of the given simulation status code (see ReturnData::status).
- amici.amici.unscaleParameters(bufferScaled: Iterable[float], pscale: Iterable[ParameterScaling], bufferUnscaled: Iterable[float])[source]
Remove parameter scaling according to the parameter scaling in pscale
All vectors must be of same length.
- Parameters
bufferScaled (
typing.Iterable
[float
]) – scaled parameterspscale (
typing.Iterable
[amici.amici.ParameterScaling
]) – parameter scalingbufferUnscaled (
typing.Iterable
[float
]) – unscaled parameters are written to the array