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.

bool isConst()

Check whether the solution of the ODE is time-invariant.

const SiconosMatrix &mat() const

Get the value of _mat, solution of the ODE.

Return
a reference to _mat

Protected Functions

MatrixIntegrator()

Default constructor.

void commonInit(const DynamicalSystem &ds, const NonSmoothDynamicalSystem &nsds, const TimeDiscretisation &td)

Protected Attributes

SP::DynamicalSystem _DS

DynamicalSystem to integrate.

SP::SiconosMatrix _E

The entry Matrix E.

bool _isConst

flag to indicate where the Matrix _mat is constant

SP::SiconosMatrix _mat

The matrix solution to the ODE.

SP::NonSmoothDynamicalSystem _nsds

NonSmoothDynamicalSystem for integration.

SP::LsodarOSI _OSI

OneStepIntegrator of type LsodarOSI.

SP::PluggedObject _plugin

The entry Matrix E, in the plugin form.

SP::EventDriven _sim

Simulation (of EventDriven type)

SP::SubPluggedObject _spo

Plugin to compute the value of a column of E.

SP::TimeDiscretisation _TD

TimeDiscretisation for integration.

Private Functions

ACCEPT_SERIALIZATION(MatrixIntegrator)

serialization hooks