Heidelberg Educational Numerics Library Version 0.27 (from 15 March 2021)
Public Types | Public Member Functions | List of all members
hdnum::RungeKutta< M, S > Class Template Reference

classical Runge-Kutta method (order n with n stages) More...

#include <rungekutta.hh>

Public Types

typedef M::size_type size_type
 export size_type
 
typedef M::time_type time_type
 export time_type
 
typedef M::number_type number_type
 export number_type
 

Public Member Functions

 RungeKutta (const M &model_, DenseMatrix< number_type > A_, Vector< number_type > b_, Vector< number_type > c_)
 constructor stores reference to the model
 
 RungeKutta (const M &model_, DenseMatrix< number_type > A_, Vector< number_type > b_, Vector< number_type > c_, number_type sigma_)
 constructor stores reference to the model
 
void set_dt (time_type dt_)
 set time step for subsequent steps
 
bool check_explicit ()
 test if method is explicit
 
void step ()
 do one step
 
void set_state (time_type t_, const Vector< number_type > &u_)
 set current state
 
const Vector< number_type > & get_state () const
 get current state
 
time_type get_time () const
 get current time
 
time_type get_dt () const
 get dt used in last step (i.e. to compute current state)
 
void set_verbosity (int verbosity_)
 how much should the ODE solver talk
 

Detailed Description

template<class M, class S = Newton>
class hdnum::RungeKutta< M, S >

classical Runge-Kutta method (order n with n stages)

The ODE solver is parametrized by a model. The model also exports all relevant types for time and states. The ODE solver encapsulates the states needed for the computation.

Template Parameters
MThe model type
S(Nonlinear) solver (default is Newton)

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