diff options
Diffstat (limited to 'libs/numeric/odeint/examples/stochastic_euler.cpp')
-rw-r--r-- | libs/numeric/odeint/examples/stochastic_euler.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/libs/numeric/odeint/examples/stochastic_euler.cpp b/libs/numeric/odeint/examples/stochastic_euler.cpp index 23474255b..c98d27b09 100644 --- a/libs/numeric/odeint/examples/stochastic_euler.cpp +++ b/libs/numeric/odeint/examples/stochastic_euler.cpp @@ -109,10 +109,10 @@ struct ornstein_det struct ornstein_stoch { - boost::mt19937 m_rng; + boost::mt19937 &m_rng; boost::normal_distribution<> m_dist; - ornstein_stoch( double sigma ) : m_rng() , m_dist( 0.0 , sigma ) { } + ornstein_stoch( boost::mt19937 &rng , double sigma ) : m_rng( rng ) , m_dist( 0.0 , sigma ) { } void operator()( const state_type &x , state_type &dxdt ) { @@ -137,9 +137,10 @@ int main( int argc , char **argv ) using namespace boost::numeric::odeint; //[ ornstein_uhlenbeck_main + boost::mt19937 rng; double dt = 0.1; state_type x = {{ 1.0 }}; - integrate_const( stochastic_euler< N >() , make_pair( ornstein_det() , ornstein_stoch( 1.0 ) ) , + integrate_const( stochastic_euler< N >() , make_pair( ornstein_det() , ornstein_stoch( rng , 1.0 ) ), x , 0.0 , 10.0 , dt , streaming_observer() ); //] return 0; |