Function Karana::Integrators::createIntegrator(const IntegratorType&, size_t, size_t, size_t, ResidualsFunction, const Integrator::IntegratorOptions *)

Function Karana::Integrators::createIntegrator(const IntegratorType&, size_t, size_t, size_t, ResidualsFunction, const Integrator::IntegratorOptions *)#

Function Documentation#

kc::ks_ptr<Integrator> Karana::Integrators::createIntegrator(const IntegratorType &integrator_type, size_t num_states, size_t num_q_states, size_t num_algebraic, ResidualsFunction residuals_fn, const Integrator::IntegratorOptions *options = nullptr)#

Factory method for creating DAE Integrator instances.

Parameters:
  • integrator_type – the type of integrator to create

  • num_states – the length of the states vector (continuous+algebraic)

  • num_q_states – Number of leading Q states; zero means no partition is specified.

  • num_algebraic – the number of algebraic values

  • residuals_fn – the residuals function

  • options – options for the integrator

Returns:

a new DAE Integrator instance