Solving 2nd order differential equation using ode45
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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 commentaire
Torsten
le 7 Jan 2019
You can't prescribe x''(0) for a second-order ODE. Only x(0) and x'(0) are allowed.
Réponse acceptée
madhan ravi
le 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 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Ordinary Differential Equations dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!