Simulation< FP, BaseT > Class Template Reference

CPP API: mio::osecir::Simulation< FP, BaseT > Class Template Reference
mio::osecir::Simulation< FP, BaseT > Class Template Reference

specialization of compartment model simulation for secir models. More...

#include <model.h>

Inheritance diagram for mio::osecir::Simulation< FP, BaseT >:
Collaboration diagram for mio::osecir::Simulation< FP, BaseT >:

Public Member Functions

Eigen::Ref< Eigen::VectorX< FP > > advance (FP tmax)
 advance simulation to tmax. More...
 
 Simulation (mio::osecir::Model< FP > const &model, FP t0=0., FP dt=0.1)
 construct a simulation. More...
 

Private Attributes

std::pair< FP, SimulationTime< FP > > m_dynamic_npi = {-std::numeric_limits<FP>::max(), mio::SimulationTime<FP>(0)}
 
FP m_t_last_npi_check
 

Detailed Description

template<typename FP, class BaseT>
class mio::osecir::Simulation< FP, BaseT >

specialization of compartment model simulation for secir models.

Template Parameters
FPfloating point type, e.g., double.
BaseTsimulation type that uses a secir compartment model. default mio::Simulation. For testing purposes only!

Constructor & Destructor Documentation

◆ Simulation()

template<typename FP , class BaseT >
mio::osecir::Simulation< FP, BaseT >::Simulation ( mio::osecir::Model< FP > const &  model,
FP  t0 = 0.,
FP  dt = 0.1 
)
inline

construct a simulation.

Parameters
modelthe model to simulate.
t0start time
dttime steps

Member Function Documentation

◆ advance()

template<typename FP , class BaseT >
Eigen::Ref<Eigen::VectorX<FP> > mio::osecir::Simulation< FP, BaseT >::advance ( FP  tmax)
inline

advance simulation to tmax.

Overwrites Simulation::advance and includes a check for dynamic NPIs in regular intervals.

See also
Simulation::advance
Parameters
tmaxnext stopping point of simulation
Returns
value at tmax

Member Data Documentation

◆ m_dynamic_npi

template<typename FP , class BaseT >
std::pair<FP, SimulationTime<FP> > mio::osecir::Simulation< FP, BaseT >::m_dynamic_npi = {-std::numeric_limits<FP>::max(), mio::SimulationTime<FP>(0)}
private

◆ m_t_last_npi_check

template<typename FP , class BaseT >
FP mio::osecir::Simulation< FP, BaseT >::m_t_last_npi_check
private