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.

Classes

BoolVector(*args)

Swig-Generated class templating common python types including Iterable [bool] and numpy.array [bool] to facilitate interfacing with C++ bindings.

ContextManager()

Generic implementation for a context manager, explicitly deletes copy and move operators for derived classes

DoubleVector(*args)

Swig-Generated class templating common python types including Iterable [float] and numpy.array [float] to facilitate interfacing with C++ bindings.

ExpData(*args)

ExpData carries all information about experimental or condition-specific data

ExpDataPtr(*args)

Swig-Generated class that implements smart pointers to ExpData as objects.

ExpDataPtrVector(*args)

Swig-Generated class templating common python types including Iterable [amici.amici.ExpData] and numpy.array [amici.amici.ExpData] to facilitate interfacing with C++ bindings.

FixedParameterContext(value)

An enumeration.

IntVector(*args)

Swig-Generated class templating common python types including Iterable [int] and numpy.array [int] to facilitate interfacing with C++ bindings.

InternalSensitivityMethod(value)

An enumeration.

InterpolationType(value)

An enumeration.

LinearMultistepMethod(value)

An enumeration.

LinearSolver(value)

An enumeration.

Model(*args, **kwargs)

The Model class represents an AMICI ODE/DAE model.

ModelContext(model)

The ModelContext temporarily stores amici::Model::state and restores it when going out of scope

ModelPtr(*args)

Swig-Generated class that implements smart pointers to Model as objects.

NewtonDampingFactorMode(value)

An enumeration.

NonlinearSolverIteration(value)

An enumeration.

ParameterScaling(value)

An enumeration.

ParameterScalingVector(*args)

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()

RDataReporting(value)

An enumeration.

ReturnData(*args)

Stores all data to be returned by amici.amici.runAmiciSimulation().

ReturnDataPtr(*args)

Swig-Generated class that implements smart pointers to ReturnData as objects.

SecondOrderMode(value)

An enumeration.

SensitivityMethod(value)

An enumeration.

SensitivityOrder(value)

An enumeration.

Solver(*args, **kwargs)

The Solver class provides a generic interface to CVODES and IDAS solvers, individual realizations are realized in the CVodeSolver and the IDASolver class.

SolverPtr(*args)

Swig-Generated class that implements smart pointers to Solver as objects.

SteadyStateSensitivityMode(value)

An enumeration.

SteadyStateStatus(value)

An enumeration.

SteadyStateStatusVector(*args)

StringDoubleMap(*args)

Swig-Generated class templating Dict [str, float] to facilitate interfacing with C++ bindings.

StringVector(*args)

Swig-Generated class templating common python types including Iterable [str] and numpy.array [str] to facilitate interfacing with C++ bindings.

Functions Summary

backtraceString(maxFrames)

Returns the current backtrace as std::string

compiledWithOpenMP()

rtype

bool

enum(prefix)

getScaledParameter(unscaledParameter, scaling)

Apply parameter scaling according to scaling

getUnscaledParameter(scaledParameter, scaling)

Remove parameter scaling according to scaling

parameterScalingFromIntVector(intVec)

rtype

amici.amici.ParameterScalingVector

runAmiciSimulation(solver, edata, model[, …])

Core integration routine.

runAmiciSimulations(solver, edatas, model, …)

Same as runAmiciSimulation, but for multiple ExpData instances.

scaleParameters(bufferUnscaled, pscale, …)

Apply parameter scaling according to scaling

unscaleParameters(bufferScaled, pscale, …)

Remove parameter scaling according to the parameter scaling in pscale

Functions

amici.amici.backtraceString(maxFrames: int)str[source]

Returns the current backtrace as std::string

Parameters

maxFrames (int) – Number of frames to include

Return type

string

Returns

Backtrace

amici.amici.compiledWithOpenMP()bool[source]
Return type

bool

amici.amici.enum(prefix)[source]
amici.amici.getScaledParameter(unscaledParameter: float, scaling: amici.amici.ParameterScaling)float[source]

Apply parameter scaling according to scaling

Parameters
Return type

float

Returns

Scaled parameter

amici.amici.getUnscaledParameter(scaledParameter: float, scaling: amici.amici.ParameterScaling)float[source]

Remove parameter scaling according to scaling

Parameters
Return type

float

Returns

Unscaled parameter

amici.amici.parameterScalingFromIntVector(intVec: amici.amici.IntVector)amici.amici.ParameterScalingVector[source]
Return type

amici.amici.ParameterScalingVector

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
Return type

ReturnData

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) → Iterable[amici.amici.ReturnData][source]

Same as runAmiciSimulation, but for multiple ExpData instances. When compiled with OpenMP support, this function runs multi-threaded.

Parameters
Return type

Iterable[ReturnData]

Returns

vector of pointers to return data objects

amici.amici.scaleParameters(bufferUnscaled: Iterable[float], pscale: Iterable[amici.amici.ParameterScaling], bufferScaled: Iterable[float])None[source]

Apply parameter scaling according to scaling

Parameters
Return type

None

amici.amici.unscaleParameters(bufferScaled: Iterable[float], pscale: Iterable[amici.amici.ParameterScaling], bufferUnscaled: Iterable[float])None[source]

Remove parameter scaling according to the parameter scaling in pscale

All vectors must be of same length.

Parameters
Return type

None