ODE Event Location detecting events other than zero

13 views (last 30 days)

"Use event functions to detect when certain events occur during the solution of an ODE. Event functions take an expression that you specify, and detect an event when that expression is equal to zero. They can also signal the ODE solver to halt integration when they detect an event."

This section is taken from the "ODE Event location" documentation. My question is, whether there is a event function that is able to halt the integration when the expression is equal to a certain value(i.e not zero; <0 or >0)
Does such a function exist?
Thank you in advance!

Accepted Answer

Mischa Kim
Mischa Kim on 14 Jan 2021
Hi Hariharan,
yes it is. You simply define a function that is equal to zero whenever your expression equals a certain value. For example, say you want to track x = 5. In the events function you then use, e.g. y = x - 5. So whenever a zero is detected (y = 0), by definition you know that x = 5.
Mischa Kim
Mischa Kim on 14 Jan 2021
Yes, this is possible. There is a good example in our documentation here.

Sign in to comment.

More Answers (0)


Find more on Programming in Help Center and File Exchange


Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!