|
DiffEq - Modern C++ ODE Integration Library 1.0.0
High-performance C++ library for solving ODEs with async signal processing
|
SRI (Stochastic Runge-Kutta for general Itô SDEs) integrator. More...
#include <sri.hpp>


Public Types | |
| using | base_type = sde::AbstractSDEIntegrator< StateType > |
| 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 | tableau_type = SRITableau< value_type > |
Public Types inherited from diffeq::sde::AbstractSDEIntegrator< StateType > | |
| using | state_type = StateType |
| using | time_type = typename StateType::value_type |
| using | value_type = typename StateType::value_type |
| using | sde_problem_type = SDEProblem< StateType > |
| using | wiener_process_type = WienerProcess< StateType > |
Public Member Functions | |
| SRIIntegrator (std::shared_ptr< typename base_type::sde_problem_type > problem, std::shared_ptr< typename base_type::wiener_process_type > wiener=nullptr, tableau_type tableau=SRIIntegrator::create_sriw1_tableau()) | |
| void | step (state_type &state, time_type dt) override |
| std::string | name () const override |
| void | set_tableau (const tableau_type &tableau) |
Public Member Functions inherited from diffeq::sde::AbstractSDEIntegrator< StateType > | |
| AbstractSDEIntegrator (std::shared_ptr< sde_problem_type > problem, std::shared_ptr< wiener_process_type > wiener=nullptr) | |
| void | integrate (state_type &state, time_type dt, time_type end_time) |
| time_type | current_time () const |
| void | set_time (time_type t) |
| std::shared_ptr< sde_problem_type > | get_problem () const |
| std::shared_ptr< wiener_process_type > | get_wiener_process () const |
| void | set_wiener_process (std::shared_ptr< wiener_process_type > wiener) |
Additional Inherited Members | |
Protected Member Functions inherited from diffeq::sde::AbstractSDEIntegrator< StateType > | |
| void | advance_time (time_type dt) |
| virtual size_t | get_default_dimension () |
Protected Attributes inherited from diffeq::sde::AbstractSDEIntegrator< StateType > | |
| std::shared_ptr< sde_problem_type > | problem_ |
| std::shared_ptr< wiener_process_type > | wiener_ |
| time_type | current_time_ |
SRI (Stochastic Runge-Kutta for general Itô SDEs) integrator.
Implements the SRI family of methods for general Itô SDEs: dX = f(t, X) dt + g(t, X) dW
Strong order: 1.5 Weak order: 2.0
Reference: Rößler A., Runge–Kutta Methods for the Strong Approximation of Solutions of Stochastic Differential Equations, SIAM J. Numer. Anal., 48 (3), pp. 922–952. DOI:10.1137/09076636X
| using diffeq::SRIIntegrator< StateType >::base_type = sde::AbstractSDEIntegrator<StateType> |
| using diffeq::SRIIntegrator< StateType >::state_type = typename base_type::state_type |
| using diffeq::SRIIntegrator< StateType >::tableau_type = SRITableau<value_type> |
| using diffeq::SRIIntegrator< StateType >::time_type = typename base_type::time_type |
| using diffeq::SRIIntegrator< StateType >::value_type = typename base_type::value_type |
|
inlineexplicit |
|
inlineoverridevirtual |
Implements diffeq::sde::AbstractSDEIntegrator< StateType >.
|
inline |
|
inlineoverridevirtual |
Implements diffeq::sde::AbstractSDEIntegrator< StateType >.