Template Numerical Library version\ main:bb09b17
Loading...
Searching...
No Matches
TNL::Solvers::ODE::Methods::Rule38< Value > Struct Template Reference

Fourth order 3/8 rule method. More...

#include <TNL/Solvers/ODE/Methods/Rule38.h>

Collaboration diagram for TNL::Solvers::ODE::Methods::Rule38< Value >:

Public Types

using ValueType = Value
 

Static Public Member Functions

static constexpr ValueType getCoefficient (const std::size_t stage, const std::size_t i)
 
static constexpr std::size_t getStages ()
 
static constexpr ValueType getTimeCoefficient (std::size_t i)
 
static constexpr ValueType getUpdateCoefficient (std::size_t i)
 
static constexpr bool isAdaptive ()
 

Static Protected Attributes

static constexpr std::array< std::array< Value, Stages >, Stages > k_coefficients
 
static constexpr std::size_t Stages = 4
 
static constexpr std::array< Value, Stages > time_coefficients { 0.0, 1.0/3.0, 2.0/3.0, 1.0 }
 
static constexpr std::array< Value, Stages > update_coefficients { 1.0/8.0, 3.0/8.0, 3.0/8.0, 1.0/8.0 }
 

Detailed Description

template<typename Value = double>
struct TNL::Solvers::ODE::Methods::Rule38< Value >

Fourth order 3/8 rule method.

Template Parameters
Valueis arithmetic type used for computations.

Member Data Documentation

◆ k_coefficients

template<typename Value = double>
std::array< std::array< Value, Stages>, Stages > TNL::Solvers::ODE::Methods::Rule38< Value >::k_coefficients
staticconstexprprotected
Initial value:
{
std::array< Value, Stages >{ 0.0, 0.0, 0.0, 0.0 },
std::array< Value, Stages >{ 1.0/3.0, 0.0, 0.0, 0.0 },
std::array< Value, Stages >{ -1.0/3.0, 1.0, 0.0, 0.0 },
std::array< Value, Stages >{ 1.0, -1.0, 1.0, 0.0 }
}

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