a question on ode23 solver
2 views (last 30 days)
Show older comments
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?
0 Comments
Accepted Answer
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).
0 Comments
More Answers (0)
See Also
Categories
Find more on Ordinary Differential Equations 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!