Template Class SimpleBDF1Integrator

Inheritance Relationships

Base Type

Class Documentation

template<typename S>
class SimpleBDF1Integrator : public diffeq::core::AdaptiveIntegrator<S>

Simple BDF1 (Backward Euler) integrator for debugging.

This is a simplified implementation to understand the BDF method. BDF1 equation: y_{n+1} = y_n + h * f(t_{n+1}, y_{n+1})

Public Types

using base_type = core::AdaptiveIntegrator<S>
using state_type = typename base_type::state_type
using time_type = typename base_type::time_type
using value_type = typename base_type::value_type
using system_function = typename base_type::system_function

Public Functions

inline explicit SimpleBDF1Integrator(system_function sys, time_type rtol = static_cast<time_type>(1e-3), time_type atol = static_cast<time_type>(1e-6))
inline void step(state_type &state, time_type dt) override
inline time_type adaptive_step(state_type &state, time_type dt) override