Event function for ODE solver

8 次查看(过去 30 天)
Kevin Gunawan
Kevin Gunawan 2011-10-31
编辑: Jan 2017-7-26
Hi, I am using ode15s and would like to ask how to use Events function. So basically I need to stop the ODE solver iteration before the given time span, to be exact when the values of y equals to certain values e.g y(i)=0.01 (my y vector stores more than one variable) I have browsed a lot of questions here and all seems suggest the ballode function, but is there anyone who can kindly guide me step by step on how to use it?
Thanks!

回答(2 个)

Mahmudul Hasan
Mahmudul Hasan 2013-10-11
Its easy. Just set the value = y(i)- 0.01 in event function, please. Like:
[value isterminal direction] = event_function(t,y)
value = y(i)-0.01; isterminal=1; direction = 0;
Hope this helps you a lot.
Thanks Mahmudul

Jan
Jan 2011-10-31
  3 个评论
Jan
Jan 2017-7-26
编辑:Jan 2017-7-26
@Zhenke Xi: Calm down. If you want to ask for an example, simply ask for an example.
Open the first link, search for "For more information, see ODE Event Location" and click on the link (it is and the 2nd last paragraph of "Description").
Alternatively you can ask an internet search engine for "Matlab ode event function example". This requires less exclamation marks.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Ordinary Differential Equations 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by