File kernel/src/simulationTools/MatrixIntegrator.hpp#
Go to the source code of this file
-
class MatrixIntegrator
Public Functions
-
MatrixIntegrator(const DynamicalSystem &ds, const NonSmoothDynamicalSystem &nsds, const TimeDiscretisation &td, const SP::SiconosMatrix E)
Constructor to compute \(\int exp(A\tau)E\amthrm{d}\tau\).
- Parameters:
ds – the DynamicalSystem
nsds – current nonsmooth dynamical system
td – current time discretisation
E – a matrix
-
MatrixIntegrator(const DynamicalSystem &ds, const NonSmoothDynamicalSystem &nsds, const TimeDiscretisation &td, SP::PluggedObject plugin, const unsigned int p)
Constructor to compute \(\int exp(A\tau)E(\tau)\mathrm{d}\tau\).
- Parameters:
ds – the DynamicalSystem
nsds – current nonsmooth dynamical system
td – current time discretisation
plugin – the plugin to compute \(E(t)\)
p – the number of column in E
-
MatrixIntegrator(const DynamicalSystem &ds, const NonSmoothDynamicalSystem &nsds, const TimeDiscretisation &td)
Constructor to compute \(\int exp(A\tau)\mathrm{d}\tau\).
- Parameters:
ds – the DynamicalSystem
nsds – current nonsmooth dynamical system
td – current time discretisation
-
void integrate()
Computes the next value of _mat.
-
inline const SiconosMatrix &mat() const
Get the value of _mat, solution of the ODE.
- Returns:
a reference to _mat
-
inline bool isConst()
Check whether the solution of the ODE is time-invariant.
Protected Functions
-
void commonInit(const DynamicalSystem &ds, const NonSmoothDynamicalSystem &nsds, const TimeDiscretisation &td)#
-
inline MatrixIntegrator()#
Default constructor.
Protected Attributes
-
bool _isConst#
flag to indicate where the Matrix _mat is constant
-
SP::DynamicalSystem _DS#
DynamicalSystem to integrate.
-
SP::NonSmoothDynamicalSystem _nsds#
NonSmoothDynamicalSystem for integration.
-
SP::TimeDiscretisation _TD#
TimeDiscretisation for integration.
-
SP::EventDriven _sim#
Simulation (of EventDriven type)
-
SP::LsodarOSI _OSI#
OneStepIntegrator of type LsodarOSI.
Private Functions
-
ACCEPT_SERIALIZATION(MatrixIntegrator)#
-
MatrixIntegrator(const DynamicalSystem &ds, const NonSmoothDynamicalSystem &nsds, const TimeDiscretisation &td, const SP::SiconosMatrix E)