Solving ODEs using matlab (ode45)
9 views (last 30 days)
Show older comments
Pazzo Giampalo on 19 Jul 2013
Answered: SANDEEP KUMAR R on 14 Sep 2016
I am new to matlab. I was trying to follow an instruction from mit.edu.
I want to use ode45 to solve ODEs.
I have the following in my function page:
function dxy = diffxy (t, xy)
x = xy(1);
xdot = xy(2);
y = xy(3);
xdot = xdot;
ydot = 3*x+5;
xdoubledot = 3-ydot+2*xdot
dxy = [xdot; xdoubledot; ydot]
To get a solution, I type [T, XY] ode45 ('diffxy', 0, 10, [0 1 0]) in my command window (t from 0 to 10 and the initial value of x is 0, xdot is 1, and ydot is 0). But the following message :
??? [T, XY] ode45 ('diffxy', 0 10, [0 1 0])
Error: Unexpected MATLAB expression.
I wonder if anyone could please help.
Matt Kindig on 19 Jul 2013
Did you forget the assignment sign?
[T, XY] = ode45 ('diffxy', 0 10, [0 1 0])
Please explain "didn't work" with details. And we have to know, where you have written the shown code.
Pazzo on 3 Aug 2013
I found out that I should add a bracket, [ ],along with an equal sign, =, to make it work.
thank you for your help though.
SANDEEP KUMAR R on 14 Sep 2016
Instead of 'diffxy' use @diffxy in ode45
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!