Professional Documents
Culture Documents
Where,
and
Where,
Where,
Constant turn over phase :(3)
(4)
With the help of assumptions taken and then solving, we get
For the Gravity Turn phase :Assuming = 00(Axial force = Drag force)
(5)
(6)
Algorithm for Gravity Turn Propogation:Given,
V0 , where V0 is the velocity at the end of 20 seconds.
1. Compute,
, where
, where
Code:
clear all;
clc;
lift_mass=10000;
% Mass of Vehicle at lift off
T=150000;
% assumed Constant Thrust
prop_mass=8000;
% Mass of propellant Filled
Isp=250;
% Assumed Constant Specific Impulse
cd=0.5;
% Drag coefficient
S_ref=2;
% Reference Area
g=9.81;
%constant gravity
burn_time=(prop_mass*g*Isp/T)
% burn out time
w_lo= lift_mass*g;
% Weight at lift off
velx=0;
% x vel
vely=0;
% y vel
vel(1)=0;
y(1)=0;
% Vertical Height
x(1)=0;
% Horizontal Range
drag(1)=0;
wdot=T/Isp;
% weight flow rate
i=1;
t(1)=0;
dt=0.01;
rhoi=1.22;
% vertical take off phase
while(t(i)<=10)
rho(i)=rhoi*exp(-y(i)/7200);
drag(i)=0.5*cd*S_ref*rho(i)*vely(i)*vely(i);
acc(i) =(T-drag(i))*g/(w_lo-wdot*t(i))- g;
vely(i+1)=g*Isp*log(w_lo/(w_lo-wdot*t(i)))-g*t(i);
vel(i+1)= vely(i+1);
y(i+1)=g*Isp*((t(i)-w_lo/wdot)*log(w_lo/(w_lo-wdot*t(i)))+t(i))-0.5*g*t(i)^2;
x(i+1)=0;
t(i+1)=t(i)+dt;
dyna_pre(i)=0.5*rho(i)*vel(i)^2;
i=i+1;
end
i=i-1;
gamma(1:i)=pi/2;
phi(1:i)=pi/2-gamma;
fprintf(' The Acceleration (m/s2)%f\t', acc(end));
fprintf('\n');
fprintf(' The Altitude%f (km)\t', y(end)/1000);
fprintf('\n');
fprintf(' The Dynamic pressure%f (Pa)\t', 0.5*rho(end)*vel(end)^2);
fprintf('\n');
fprintf(' The Velocity %f(m/s)\t',vel(end));
fprintf('\n');
fprintf(' The Time %f (s)\t', t(i));
fprintf('\n');
% vertical phase over
% constant turn over phase starts
alph_gamma=90*(pi/180);
%initial value of alpha+gamma
count=1;
vely_end=vely(end)
velx_end=velx(end);
while(t(i)<=20)
i=i+1;
accx(i)= (T*cos(alph_gamma))*g/(w_lo-wdot*t(i-1));
accy(i)= (T*sin(alph_gamma))*g/(w_lo-wdot*t(i-1))-g;
vely(i)=vely_end+g*Isp*sin(alph_gamma)*log(w_lo/(w_lo-wdot*t(i-1)))g*Isp*sin(alph_gamma)*log(w_lo/(w_lo-wdot*10))-g*(t(i-1)-10);
velx(i)=velx_end+g*Isp*cos(alph_gamma)*log(w_lo/(w_lo-wdot*t(i-1)))g*Isp*cos(alph_gamma)*log(w_lo/(w_lo-wdot*10));
y(i)=y(1001)+g*Isp*sin(alph_gamma)*((t(i-1)-w_lo/wdot)*log(w_lo/(w_lo-wdot*t(i-1)))+t(i1))-g*Isp*sin(alph_gamma)*((10-w_lo/wdot)*log(w_lo/(w_lo-wdot*10))+10)-0.5*g*(t(i-1)^2-100);
x(i)=x(1001)+g*Isp*cos(alph_gamma)*((t(i-1)-w_lo/wdot)*log(w_lo/(w_lo-wdot*t(i-1)))+t(i1))-g*Isp*cos(alph_gamma)*((10-w_lo/wdot)*log(w_lo/(w_lo-wdot*10))+10);
rho(i)=rhoi*exp(-y(i)/7200);
vel(i) = (velx(i)^2+vely(i)^2)^0.5;
acc(i) = (accx(i)^2+accy(i)^2)^0.5;
if count==100
count=0;
alph_gamma=alph_gamma-1*(pi/180);
end
gamma(i)=atan(vely(i)/velx(i));
dyna_pre(i)=0.5*rho(i)*vel(i)^2;
t(i)=t(i-1)+dt;
count=count+1;
end
fprintf(' The Acceleration at end (m/s2)%f\t', acc(end));
fprintf('\n');
fprintf(' The Altitude at end %f (km)\t', y(end)/1000);
fprintf('\n');
fprintf(' The Dynamic pressure at end %f (Pa)\t', dyna_pre(end));
fprintf('\n');
fprintf(' The Velocity at end%f(m/s)\t',vel(end));
fprintf('\n');
fprintf(' The Time at end%f (s)\t', t(i));
fprintf('\n');
% constant turnover phase ends
% gravity turn phase
gamma(i)=gamma(end);
phi(i)=pi/2-gamma(end);
dphi=0.01*(pi/180);
while(t(i)<=burn_time)
rho(i)=rhoi*exp(-y(i)/(7.2*1000));
drag(i)=0.5*cd*S_ref*rho(i)*vel(i)*vel(i);
vdot(i)=((T-drag(i))*g/(w_lo-wdot*t(i)))-g*cos(phi(i));
gammadot(i)=g*sin(phi(i))/vel(i);
acc(i)=(vdot(i)^2+(vel(i)*gammadot(i))^2)^0.5;
k=(T-drag(i))/(w_lo-wdot*t(i));
%k for Dt time
phi(i+1)=phi(i)+dphi;
so=tan(phi(i)/2);
s1=tan(phi(i+1)/2);
cons=vel(i)/((so^(k-1))*(1+so^2));
vel(i+1)=cons*s1^(k-1)*(1+s1^2);
DT=(cons/g)*(s1^(k-1)/(k-1)+s1^(k+1)/(k+1))-(cons/g)*(so^(k-1)/(k-1)+so^(k+1)/(k+1));
velx(i+1)=vel(i+1)*sin(phi(i+1));
vely(i+1)=vel(i+1)*cos(phi(i+1));
velxavg=0.5*(velx(i)+velx(i+1));
velyavg=0.5*(vely(i+1)+vely(i));
t(i+1)=t(i)+DT;
y(i+1)=y(i)+DT*velyavg;
x(i+1)=x(i)+DT*velxavg;
gamma(i+1)=pi/2-phi(i+1);
dyna_pre(i)=0.5*rho(i)*vel(i)^2;
i=i+1;
end
% gravity turn Phase over
figure(1);
plot(x/1000,y/1000,'r');
xlabel('Range(km)');
ylabel('Altitude(in km)')
figure(2);
plot(t,y/1000,'r');
xlabel('Time(s)');
ylabel('Altitude(in km)');
figure(3);
plot(t,vel,'r');
xlabel('Time(s)');
ylabel('Velocity(in m/s)');
figure(4);
plot(t,gamma*180/pi,'r');
xlabel('Time(s)');
ylabel('Flight Path Angle,gamma(in degs.)');
figure(5);
plot(t(1:10232),dyna_pre,'r');
xlabel('Time(s)');
ylabel('Dynamic Pressure(in Pa)');
figure(6);
plot(t(1:10232),acc,'r');
xlabel('Time(s)');
ylabel('Acceleration (in m/s*s)');
Result
61.46 km
2634.55 m/s
28.15 degrees
832.37 Pa
70.46 m/s2
Observations:
1. The dynamic pressure initially increases because of increase in velocity and later
decreases because of exponential drop in density at higher altitudes.
2. As the time increases, the acceleration increases more steeply because of loss in
weight thereby causing loss of drag.
3. Velocity follows the same pattern as Acceleration.
4. The trajectory is plotted in Graph 6 showing how the vehicle becomes horizontal at
last.
5. Flight path angle at the end of constant turn over phase is slightly more than 80
degrees and not exactly 80 as alpha is present in constant turn over phase.