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

Implementation of a general Diagonal Implicit Runge-Kutta method. More...

#include <ode.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
 
typedef DenseMatrix< number_typeButcherTableau
 the type of a Butcher tableau
 

Public Member Functions

 DIRK (const M &model_, const S &newton_, const ButcherTableau &butcher_, const int order_)
 
 DIRK (const M &model_, const S &newton_, const std::string method)
 
void set_dt (time_type dt_)
 set time step for subsequent steps
 
void set_verbosity (size_type verbosity_)
 set verbosity level
 
void step ()
 do one step
 
bool get_error () const
 get current state
 
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)
 
size_type get_order () const
 return consistency order of the method
 
void get_info () const
 print some information
 

Detailed Description

template<class M, class S>
class hdnum::DIRK< M, S >

Implementation of a general Diagonal Implicit Runge-Kutta method.

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
Snonlinear solver

Constructor & Destructor Documentation

◆ DIRK() [1/2]

template<class M , class S >
hdnum::DIRK< M, S >::DIRK ( const M & model_,
const S & newton_,
const ButcherTableau & butcher_,
const int order_ )
inline

constructor stores reference to the model and requires a butcher tableau

◆ DIRK() [2/2]

template<class M , class S >
hdnum::DIRK< M, S >::DIRK ( const M & model_,
const S & newton_,
const std::string method )
inline

constructor stores reference to the model and sets the default butcher tableau corresponding to the given order


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