a question on ode23 solver

2 views (last 30 days)
cgo
cgo on 1 Jun 2017
Edited: Jan on 1 Jun 2017
Hi, I am using ODE23 solver in Matlab.
After inputting the following
t = linspace(0,10);
y0 = 0.5;
u = 1.0;
z = ode23(@(t,y)first_order(t,y,u),t,y0);
time = z.x;
y = z.y;
plot(time,y)
and
function dydt = first_order(t,y,u)
tau = 5;
K = 2.0;
dydt = (-y+K*u)/tau;
end
The output is the plot of time versus y. I wanted to have a plot of y' and t so that I can make an analysis of the ODE without having to solve it. Is there a way of doing it?

Accepted Answer

Jan
Jan on 1 Jun 2017
Edited: Jan on 1 Jun 2017
You have y and t from the integration the function first_order calculates the needed y' already. Then simply use it after the integration:
dy = first_order(time, y, u);
Then plotting is easy.
But you asked for "make an analysis of the ODE without having to solve it". This is not possible, because you do not have the required trajectory of y without an integration. All you have is the equation in first_order(), which allows to obtain y' depending on t, y and the initial value y0. But you cannot use this without solving the ODE, because then you do not have y(t).

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!