DiffEq - Modern C++ ODE Integration Library 1.0.0
High-performance C++ library for solving ODEs with async signal processing
Loading...
Searching...
No Matches
diffeq::sde::SDEProblem< StateType > Class Template Reference

SDE problem definition. More...

#include <sde_base.hpp>

Public Types

using state_type = StateType
 
using time_type = typename StateType::value_type
 
using value_type = typename StateType::value_type
 
using drift_function = std::function< void(time_type, const state_type &, state_type &)>
 
using diffusion_function = std::function< void(time_type, const state_type &, state_type &)>
 
using noise_function = std::function< void(time_type, const state_type &, StateType &, const StateType &)>
 

Public Member Functions

 SDEProblem (drift_function drift, diffusion_function diffusion, NoiseType noise_type=NoiseType::DIAGONAL_NOISE)
 
void drift (time_type t, const state_type &x, state_type &fx) const
 
void diffusion (time_type t, const state_type &x, state_type &gx) const
 
NoiseType get_noise_type () const
 
void set_noise_function (noise_function noise)
 
bool has_custom_noise () const
 
void apply_noise (time_type t, const state_type &x, state_type &noise_term, const state_type &dW) const
 

Detailed Description

template<system_state StateType>
class diffeq::sde::SDEProblem< StateType >

SDE problem definition.

Represents SDE of the form: dX = f(t, X) dt + g(t, X) dW

Where:

  • f is the drift function
  • g is the diffusion function
  • dW is the Wiener process (Brownian motion)

Definition at line 32 of file sde_base.hpp.

Member Typedef Documentation

◆ diffusion_function

template<system_state StateType>
using diffeq::sde::SDEProblem< StateType >::diffusion_function = std::function<void(time_type, const state_type&, state_type&)>

Definition at line 40 of file sde_base.hpp.

◆ drift_function

template<system_state StateType>
using diffeq::sde::SDEProblem< StateType >::drift_function = std::function<void(time_type, const state_type&, state_type&)>

Definition at line 39 of file sde_base.hpp.

◆ noise_function

template<system_state StateType>
using diffeq::sde::SDEProblem< StateType >::noise_function = std::function<void(time_type, const state_type&, StateType&, const StateType&)>

Definition at line 41 of file sde_base.hpp.

◆ state_type

template<system_state StateType>
using diffeq::sde::SDEProblem< StateType >::state_type = StateType

Definition at line 34 of file sde_base.hpp.

◆ time_type

template<system_state StateType>
using diffeq::sde::SDEProblem< StateType >::time_type = typename StateType::value_type

Definition at line 35 of file sde_base.hpp.

◆ value_type

template<system_state StateType>
using diffeq::sde::SDEProblem< StateType >::value_type = typename StateType::value_type

Definition at line 36 of file sde_base.hpp.

Constructor & Destructor Documentation

◆ SDEProblem()

template<system_state StateType>
diffeq::sde::SDEProblem< StateType >::SDEProblem ( drift_function  drift,
diffusion_function  diffusion,
NoiseType  noise_type = NoiseType::DIAGONAL_NOISE 
)
inline

Definition at line 43 of file sde_base.hpp.

Member Function Documentation

◆ apply_noise()

template<system_state StateType>
void diffeq::sde::SDEProblem< StateType >::apply_noise ( time_type  t,
const state_type &  x,
state_type &  noise_term,
const state_type &  dW 
) const
inline

Definition at line 65 of file sde_base.hpp.

◆ diffusion()

template<system_state StateType>
void diffeq::sde::SDEProblem< StateType >::diffusion ( time_type  t,
const state_type &  x,
state_type &  gx 
) const
inline

Definition at line 53 of file sde_base.hpp.

◆ drift()

template<system_state StateType>
void diffeq::sde::SDEProblem< StateType >::drift ( time_type  t,
const state_type &  x,
state_type &  fx 
) const
inline

Definition at line 49 of file sde_base.hpp.

◆ get_noise_type()

template<system_state StateType>
NoiseType diffeq::sde::SDEProblem< StateType >::get_noise_type ( ) const
inline

Definition at line 57 of file sde_base.hpp.

◆ has_custom_noise()

template<system_state StateType>
bool diffeq::sde::SDEProblem< StateType >::has_custom_noise ( ) const
inline

Definition at line 63 of file sde_base.hpp.

◆ set_noise_function()

template<system_state StateType>
void diffeq::sde::SDEProblem< StateType >::set_noise_function ( noise_function  noise)
inline

Definition at line 59 of file sde_base.hpp.


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