Making ODE45 stop at periodic solutions?

1 次查看(过去 30 天)
I am working with a Duffin oscillator:
% Recover Quadcopter variables
z = State(1,1);
w = State(2,1);
%%%%%%%%%%%%%%%%%%%%5
F(1,1) = w;
F(2,1) = epsilon*cos(omega_rho*t)-k0*z-k1*z^3-f0*w;
I wanted to find the exsistance and stability of periodic solutions. For that I wanted to evaluate the system with ODE45 and create an event that stops the integration when a periodic/quasi-periodic solution is found, but the basic event locator seems like it cnnot do it, since it cannot evaluate previous states of the solution. I have also read about Delay Differential Equation solvers and event locators, but someone said that it did not work well with quasi-periodic solutions, which I need. Is there a way to do this? If it is done using DDEs, how exactly?

回答(1 个)

Abhisek Pradhan
Abhisek Pradhan 2020-1-3
Event Functions can be used to determine an appropriate time to stop the solution but it does have few limitations.
Delay Differential solvers should work good for this scenario if the appropriate solver is selected.
Refer the following link to know more about Delay differential solvers, types of solvers and where they can be used.
Refer this for examples on solving Delay differential equations.

类别

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

产品


版本

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by