Icarus
Vehicle Simulation as a Transformable Computational Graph, built on Vulcan and Janus
Loading...
Searching...
No Matches
icarus::IntegratorConfig< Scalar > Struct Template Reference

Configuration for integrator creation. More...

#include <IntegratorTypes.hpp>

Static Public Member Functions

static IntegratorConfig RK4Default ()
 Create default RK4 config.
static IntegratorConfig RK45Adaptive (Scalar abs_tol_val=Scalar{1e-6}, Scalar rel_tol_val=Scalar{1e-6})
 Create adaptive RK45 config with tolerances.
static IntegratorConfig ForMethod (IntegratorType method)
 Create config for specified method.

Public Attributes

IntegratorType type = IntegratorType::RK4
 Method to use.
Scalar abs_tol = Scalar{1e-6}
 Absolute tolerance.
Scalar rel_tol = Scalar{1e-6}
 Relative tolerance.
Scalar min_dt = Scalar{1e-10}
 Minimum step size.
Scalar max_dt = Scalar{1.0}
 Maximum step size.
Scalar safety_factor = Scalar{0.9}
 Step size safety factor.

Detailed Description

template<typename Scalar>
struct icarus::IntegratorConfig< Scalar >

Configuration for integrator creation.

Supports both fixed-step and adaptive integrators.

Template Parameters
ScalarNumeric type (double or casadi::MX)

Member Function Documentation

◆ ForMethod()

template<typename Scalar>
IntegratorConfig icarus::IntegratorConfig< Scalar >::ForMethod ( IntegratorType method)
inlinestatic

Create config for specified method.

◆ RK45Adaptive()

template<typename Scalar>
IntegratorConfig icarus::IntegratorConfig< Scalar >::RK45Adaptive ( Scalar abs_tol_val = Scalar{1e-6},
Scalar rel_tol_val = Scalar{1e-6} )
inlinestatic

Create adaptive RK45 config with tolerances.

◆ RK4Default()

template<typename Scalar>
IntegratorConfig icarus::IntegratorConfig< Scalar >::RK4Default ( )
inlinestatic

Create default RK4 config.

Member Data Documentation

◆ abs_tol

template<typename Scalar>
Scalar icarus::IntegratorConfig< Scalar >::abs_tol = Scalar{1e-6}

Absolute tolerance.

◆ max_dt

template<typename Scalar>
Scalar icarus::IntegratorConfig< Scalar >::max_dt = Scalar{1.0}

Maximum step size.

◆ min_dt

template<typename Scalar>
Scalar icarus::IntegratorConfig< Scalar >::min_dt = Scalar{1e-10}

Minimum step size.

◆ rel_tol

template<typename Scalar>
Scalar icarus::IntegratorConfig< Scalar >::rel_tol = Scalar{1e-6}

Relative tolerance.

◆ safety_factor

template<typename Scalar>
Scalar icarus::IntegratorConfig< Scalar >::safety_factor = Scalar{0.9}

Step size safety factor.

◆ type

template<typename Scalar>
IntegratorType icarus::IntegratorConfig< Scalar >::type = IntegratorType::RK4

Method to use.


The documentation for this struct was generated from the following file: