numerical-collection-cpp 0.10.0
A collection of algorithms in numerical analysis implemented in C++
|
Class of DOPRI5 formula using coefficients in [9]. More...
#include <num_collect/ode/runge_kutta/dopri5_formula.h>
Public Types | |
using | base_type = formula_base<dopri5_formula<Problem>, Problem> |
Type of base class. | |
Public Types inherited from num_collect::ode::formula_base< dopri5_formula< Problem >, Problem > | |
using | problem_type |
Type of problem. | |
using | scalar_type |
Type of scalars. | |
using | variable_type |
Type of variables. | |
Public Member Functions | |
void | step (scalar_type time, scalar_type step_size, const variable_type ¤t, variable_type &estimate) |
Compute the next variable. | |
void | step_embedded (scalar_type time, scalar_type step_size, const variable_type ¤t, variable_type &estimate, variable_type &error) |
Compute the next variable and weak estimate of it with embedded formula. | |
Public Member Functions inherited from num_collect::ode::formula_base< dopri5_formula< Problem >, Problem > | |
formula_base (const problem_type &problem=problem_type()) | |
Constructor. | |
auto | problem () -> problem_type & |
Get the problem. | |
auto | problem () const -> const problem_type & |
Get the problem. | |
void | step (scalar_type time, scalar_type step_size, const variable_type ¤t, variable_type &estimate) |
Compute the next variable. | |
Static Public Attributes | |
static constexpr index_type | lesser_order = 4 |
Order of lesser coefficients of this formula. | |
static constexpr auto | log_tag |
Log tag. | |
static constexpr index_type | order = 5 |
Order of this formula. | |
static constexpr index_type | stages = 7 |
Number of stages of this formula. | |
Coefficients in Butcher array. | |
| |
static constexpr scalar_type | a21 = coeff(1, 5) |
static constexpr scalar_type | a31 = coeff(3, 40) |
static constexpr scalar_type | a32 = coeff(9, 40) |
static constexpr scalar_type | a41 = coeff(44, 45) |
static constexpr scalar_type | a42 = coeff(-56, 15) |
static constexpr scalar_type | a43 = coeff(32, 9) |
static constexpr scalar_type | a51 = coeff(19372, 6561) |
static constexpr scalar_type | a52 = coeff(-25360, 2187) |
static constexpr scalar_type | a53 = coeff(64448, 6561) |
static constexpr scalar_type | a54 = coeff(-212, 729) |
static constexpr scalar_type | a61 = coeff(9017, 3168) |
static constexpr scalar_type | a62 = coeff(-355, 33) |
static constexpr scalar_type | a63 = coeff(46732, 5247) |
static constexpr scalar_type | a64 = coeff(49, 176) |
static constexpr scalar_type | a65 = coeff(-5103, 18656) |
static constexpr scalar_type | a71 = coeff(35, 384) |
static constexpr scalar_type | a72 = coeff(0) |
static constexpr scalar_type | a73 = coeff(500, 1113) |
static constexpr scalar_type | a74 = coeff(125, 192) |
static constexpr scalar_type | a75 = coeff(-2187, 6784) |
static constexpr scalar_type | a76 = coeff(11, 84) |
static constexpr scalar_type | b2 = coeff(1, 5) |
static constexpr scalar_type | b3 = coeff(3, 10) |
static constexpr scalar_type | b4 = coeff(4, 5) |
static constexpr scalar_type | b5 = coeff(8, 9) |
static constexpr scalar_type | b6 = coeff(1) |
static constexpr scalar_type | b7 = coeff(1) |
static constexpr scalar_type | c1 = a71 |
static constexpr scalar_type | c3 = a73 |
static constexpr scalar_type | c4 = a74 |
static constexpr scalar_type | c5 = a75 |
static constexpr scalar_type | c6 = a76 |
static constexpr scalar_type | cw1 = coeff(5179, 57600) |
static constexpr scalar_type | cw3 = coeff(7571, 16695) |
static constexpr scalar_type | cw4 = coeff(393, 640) |
static constexpr scalar_type | cw5 = coeff(-92097, 339200) |
static constexpr scalar_type | cw6 = coeff(187, 2100) |
static constexpr scalar_type | cw7 = coeff(1, 40) |
static constexpr scalar_type | ce1 = c1 - cw1 |
static constexpr scalar_type | ce3 = c3 - cw3 |
static constexpr scalar_type | ce4 = c4 - cw4 |
static constexpr scalar_type | ce5 = c5 - cw5 |
static constexpr scalar_type | ce6 = c6 - cw6 |
static constexpr scalar_type | ce7 = -cw7 |
Private Attributes | |
Intermediate variables. | |
variable_type | k1_ {} |
variable_type | k2_ {} |
variable_type | k3_ {} |
variable_type | k4_ {} |
variable_type | k5_ {} |
variable_type | k6_ {} |
variable_type | k7_ {} |
Additional Inherited Members | |
Protected Member Functions inherited from num_collect::ode::formula_base< dopri5_formula< Problem >, Problem > | |
auto | derived () const noexcept -> const dopri5_formula< Problem > & |
Access derived object. | |
auto | derived () noexcept -> dopri5_formula< Problem > & |
Access derived object. | |
Static Protected Member Functions inherited from num_collect::ode::formula_base< dopri5_formula< Problem >, Problem > | |
static constexpr auto | coeff (T val) -> scalar_type |
Convert coefficients. | |
static constexpr auto | coeff (T1 num, T2 den) -> scalar_type |
Create coefficients. | |
Class of DOPRI5 formula using coefficients in [9].
Problem | Type of problem. |
Definition at line 37 of file dopri5_formula.h.
using num_collect::ode::runge_kutta::dopri5_formula< Problem >::base_type = formula_base<dopri5_formula<Problem>, Problem> |
Type of base class.
Definition at line 40 of file dopri5_formula.h.
|
inline |
Compute the next variable.
[in] | time | Current time. |
[in] | step_size | Step size. |
[in] | current | Current variable. |
[out] | estimate | Estimate of the next variable. |
Definition at line 135 of file dopri5_formula.h.
|
inline |
Compute the next variable and weak estimate of it with embedded formula.
[in] | time | Current time. |
[in] | step_size | Step size. |
[in] | current | Current variable. |
[out] | estimate | Estimate of the next variable. |
[out] | error | Estimate of error. |
Definition at line 182 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 80 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 81 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 82 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 83 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 84 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 85 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 86 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 87 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 88 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 89 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 90 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 91 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 92 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 93 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 94 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 95 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 96 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 97 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 98 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 99 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 100 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 102 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 103 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 104 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 105 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 106 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 107 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 109 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 111 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 112 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 113 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 114 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 125 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 127 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 128 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 129 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 130 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 131 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 117 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 119 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 120 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 121 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 122 of file dopri5_formula.h.
|
staticconstexpr |
Coefficient in Butcher array.
Definition at line 123 of file dopri5_formula.h.
|
private |
Intermediate variable.
Definition at line 202 of file dopri5_formula.h.
|
private |
Intermediate variable.
Definition at line 203 of file dopri5_formula.h.
|
private |
Intermediate variable.
Definition at line 204 of file dopri5_formula.h.
|
private |
Intermediate variable.
Definition at line 205 of file dopri5_formula.h.
|
private |
Intermediate variable.
Definition at line 206 of file dopri5_formula.h.
|
private |
Intermediate variable.
Definition at line 207 of file dopri5_formula.h.
|
private |
Intermediate variable.
Definition at line 208 of file dopri5_formula.h.
|
staticconstexpr |
Order of lesser coefficients of this formula.
Definition at line 67 of file dopri5_formula.h.
|
staticconstexpr |
Log tag.
Definition at line 63 of file dopri5_formula.h.
|
staticconstexpr |
Order of this formula.
Definition at line 60 of file dopri5_formula.h.
|
staticconstexpr |
Number of stages of this formula.
Definition at line 57 of file dopri5_formula.h.