Solving 2nd order differential equation using ode45
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Brendan Görres
am 5 Jan. 2019
Kommentiert: Torsten
am 7 Jan. 2019
I am trying to solve this equation
x=0.5*x''*t^2;
Initial guess
x(0)=0;%starting point
x''(0)=0;%starting acceleration
So the place my vehicle is, depends on the acceleration an the time. I want to solve this equation with ode45 so that I get the place and acc during all given times.
This is my code:
[t,x]=ode45(@fun,[0 30],[0 0])
function dX=fun(t,X)
dX(1)=X(2);
dX(2)=2*X(1)/t^2;
dX=[dX(1);dX(2)];
end
Problem is that Matlab returns only returns NaN values. Could someone please explain why?
Thanks
1 Kommentar
Torsten
am 7 Jan. 2019
You can't prescribe x''(0) for a second-order ODE. Only x(0) and x'(0) are allowed.
Akzeptierte Antwort
madhan ravi
am 5 Jan. 2019
Reason: Because there is division by 0 therefore nans are encountered.
[t,x]=ode45(@fun,[0.00001 30],[0.00001 0.00001])
function dX=fun(t,X)
dX(1)=X(2);
dX(2)=2*X(1)/t^2;
dX=[dX(1);dX(2)];
end
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Ordinary Differential Equations finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!