Need Help Solving System of ODEs
Afficher commentaires plus anciens
close all; clear all; clc
I wanted to solve these 4 ode(s) and was trying to use ode45, but the output is not what I was expecting, the v is supposed to decrease but it was increasing, the gamma was also supposed to become more negetive but it remained constant. Any idea about where I must be going wrong? Thanks in advance!

g=9.81;
z0=10000;
R=6378000;
h0=(R*z0)/(R+z0);
for z=1:10000
h(z)=(R.*z)./(R+z);
rho0=0.4135;
H=8500;
rho=rho0.*exp((h0-h)./H);
end
v0=450;
gamma0=-20;
m0=2500;
T=15000;
Isp=300;
dodt=@(t,W)[(-g*sin(W(2)))-(T/W(4));(-g/W(1))*cos(W(2));W(1)*sin(W(2));-T/(g*Isp)];
[t,W]=ode45(dodt,[0,21.93],[v0,gamma0,z0,m0])
v=W(:,1);
gamma=W(:,2);
z=W(:,3);
m=W(:,4);
Réponses (1)
Alan Stevens
le 18 Nov 2021
1 vote
You haven't included the first term on the right-hand side of your equation for dV/dt, nor for dgamma/dt.
5 commentaires
Akrant Rai
le 18 Nov 2021
Modifié(e) : Akrant Rai
le 18 Nov 2021
Alan Stevens
le 19 Nov 2021
Try
dodt=@(t,W)[(-g*sin(W(2)))-(T/W(4));(-g/W(1))*cos(W(2))+T/(g*W(1));W(1)*sin(W(2));-T/(g*Isp)];
There was a term missing : T/(g*W(1)) , in the equation for dgamma/dt.
Akrant Rai
le 19 Nov 2021
Alan Stevens
le 19 Nov 2021
I did mean that - I misread the term! So, I don't see anything else wrong with the equations! You will need to check they are derived correctly, and that you have used the right data.
Akrant Rai
le 19 Nov 2021
Catégories
En savoir plus sur Ordinary Differential Equations dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!