boostorg / boost

Super-project for modularized Boost
https://github.com/boostorg/wiki/wiki/Getting-Started%3A-Overview
Boost Software License 1.0
7.22k stars 1.77k forks source link

ode45 with event #925

Open csb2024 opened 5 months ago

csb2024 commented 5 months ago

odeint2 Is there a way to implement matlab's ode45 event mechanism such as the following code: tspan=[0 t_max]; %Time span of simulation in sec Opt = odeset('Events', @myEvent); [t,x]=ode45(@EoM,tspan,x0,Opt); function [value, isterminal]; %Time span of simulation in sec

function [value, isterminal, direction] = myEvent(t, y) %value = (y(11) < 0); value = y(11); isterminal = 1; % myEvent(t, y) isterminal = 1; % Stop the integration direction = -1; end end

Translated with DeepL.com (free version)