MATLAB: Does ODE solver not terminate after it encounters an event at start time ‘tstart’ when ‘isterminal’ is true in MATLAB 7.6 (R2008a)

MATLAB

I have an ODE with an Events function defined that is set to terminate the integration (isterminal =1) whenever an event is encountered. When the Event is encountered at the start time of the ODE solver, the solver does not terminate the integration but continues till the next event is encountered. The other variables like 'te' and 'ye' show that the event at start time is registered.

Best Answer

This is the intended behavior of the ODE solver when it encounters the event at start time. This is done now for backward compatibility. At start time the event is registered and stored but does not terminate the integration.
This is not mentioned clearly in the documentation, though in the example 'ballode.m', there is a comment:
% Events at tstart are never reported.