Sei sulla pagina 1di 5

Esercitazione 1 meccaninca del volo di veicoli

astronautici
Daniele Barbera, Alessandro Peloni

22 marzo 2011

Esercizio 1.1

Nell'esercizio proposto sono stati assegnati quota, velocità, angolo di volo e an-
golo χ all'istante iniziale. Di seguito sono riportati i risultati:

Il semiasse maggiore è a= 16836 km


L'eccentricità è pari ad e= 0.34
L'energia per unità di massa è pari ad Energia= -11.84 MJ/kg
L'anomalia vera è pari ad teta= 105.7°
L'anomalia eccentrica è pari ad E= 86.2°
L'anomalia media è pari ad M= 66.6°
L'argomento del perigeo è pari a omega= -75.7°

L'energia è stata calcolata per avere una conferma dell'attendibilità dei


calcoli, sapendo che per un'orbita chiusa l'energia deve essere negativa.

1
Esercizio 1.2
 
r

 λa 

L
Nel secondo esercizio sono stati assegnati tre vettori di stato X =  ,
 

 γ 

 v 
ζ
richiedendo di ricavare le coordinate inerziali di posizione e velocità.
Sotto sono riportarti i risultati estrapolati dal programma scritto in matlab:

X (Km) Y (Km) Z (Km) Vx (Km/s) Vy (Km/s) Vz (Km/s)


Caso 1 1082.76 6140.65 3600.00 -6.22 0.97 2.57
Caso 2 1339.43 -7596.27 -9192.53 5.29 3.89 -4.21
Caso 3 22497.57 0.00 -26811.56 -0.57 5.02 0.68

Tabella 1: Risultati esercizio 1.2

Per avere una controprova dei risultati ottenuti sono stati ricavati i valori di
quota e velocità partendo dalle rispettive componenti inerziali:
p
r= X2 + Y 2 + Z2

p
v= V x2 + V y 2 + V z 2

r (km) v (km/s)
Caso 1 7200 6.80
Caso 2 12000 7.80
Caso 3 35000 5.10
Tabella 2: Verica dei risultati

I risultati di prova confermano la validità del codice matlab.

2
A Listato esercizio 1.1

clc
clear all
%Esercitazione meccanica del volo di veicoli astronautici 1.1
%Calcolare semiasse maggiore,eccentricità,anomalia vera-eccentrica-media,
omega.
%Dati iniziali
Re=6378.165;
R_0=Re+10000;
V_0=5;
gamma_0=20; %Angolo di volo espresso in gradi
chi_0=30; %Angolo compreso tra il primo asse inerziale ed R_0 espresso in
gradi
mi=398604.3;
X=R_0*cosd(chi_0);
Y=R_0*sind(chi_0);
Vx=V_0*sind(gamma_0)*cosd(chi_0);
Vy=V_0*cosd(gamma_0)*cosd(chi_0);
a=(mi*R_0)/(2*mi-R_0*V_0^2);
%Per calcolare l'eccentricità è necessario prima calcolare h
h=(X*Vy-Y*Vx);
e=sqrt(1-h^2/(mi*a));
Energia=-mi/(2*a); %Qui calcolo l'energia dell'orbita: se l'eccentricità è
circa 1 l'energia sarà negativa
%Calcolo di teta
Vr=(X*Vx+Y*Vy)/(R_0);
Q=((a*(1-e^2)-R_0)/(e*R_0));
P=(Vr/e*sqrt(a*(1-e^2)/mi));
if Q>0 && P>0
teta=acosd(Q);
elseif Q>0 && P<0
teta=360+asind(P);
elseif Q<0 && P>0
teta=acosd(Q);
elseif Q<0 && P<0
teta=acosd(Q)+90;
end
%Cacolo della anomalia eccentrica
Q=(cosd(teta)+e)/(1-e*cosd(teta));
P=sqrt(1-e^2)*sind(teta)/(1+e*cosd(teta));
if Q>0 && P>0
E=acosd(Q);
elseif Q>0 && P<0
E=360+asind(P);
elseif Q<0 && P>0

3
E=acosd(Q);
elseif Q<0 && P<0
E=acosd(Q)+90;
end
E=E*pi/180; %porto l'eccentricità in radianti
%Calcolo dell'anomalia media
M=E-e*sin(E);
M=M*180/pi; %Porto l'anomalia media in °
E=E*180/pi; %Porto l'eccentricità in °
%Calcolo dell'argomento del perigeo
omega=chi_0-teta;
fprintf('\n Il semiasse maggiore è a= %.0f km ',a)
fprintf('\n L eccentricità è pari ad e= %.2f ' ,e)
fprintf('\n L energia per unità di massa dell orbita è pari ad Energia= %.2f
MJ/kg ', Energia)
fprintf('\n L anomalia vera è pari ad teta= %.1f°',teta)
fprintf('\n L anomalia eccentrica è pari ad E= %.1f°', E)
fprintf('\n L anomalia media è pari ad M= %.1f°', M)
fprintf('\n L argomento del perigeo è pari a omega= %.1f°\n',omega)

B Listato esercizio 1.2

%Secondo esercizio, calcolare velocità e posizione rispetto alle coordinate in-


erziali
clc
clear all
close all
%dati iniziali
r=[7200 12000 35000];%Vettore raggio in Km
long=[80 280 0]; %Vettore longitudine in °
lat=[30 -50 -50]; %Vettore latidutine in °
gamma=[10 10 -10]; %Vettore angolo di volo in °
V=[6.8 7.8 5.1]; %Vettore velocità in Km/s
zeta=[20 320 0]; %Vettore coazimuth in °
for i=1:3
%Introduco le matrici di rotazione R1(zeta), R2(-lat) , R3(long)
R1(:,:,i)=[1 0 0;0 cosd(zeta(i)) sind(zeta(i));0 -sind(zeta(i)) cosd(zeta(i))];
R2(:,:,i)=[cosd(-lat(i)) 0 -sind(-lat(i));0 1 0;sind(-lat(i)) 0 cosd(-lat(i))];
R3(:,:,i)=[cosd(long(i)) sind(long(i)) 0;-sind(long(i)) cosd(long(i)) 0;0 0 1];
%Matrice di rotazione necessaria per passare [n,v,h] ad [r,teta,h]
R4(:,:,i)=[cosd(gamma(i)) -sind(gamma(i)) 0;sind(gamma(i)) cosd(gamma(i))
0;0 0 1];
RA(:,:,i)=R1(:,:,i)*R2(:,:,i)*R3(:,:,i); %matrice di rotazione
%Calcolo le coordinate spaziali della traiettoria
X(i)=r(i)*RA(1,1,i);

4
Y(i)=r(i)*RA(1,2,i);
Z(i)=r(i)*RA(1,3,i);
Rprova(i)=sqrt(X(i)^2+Y(i)^2+Z(i)^2); %controprova sulle componenti del
raggio
%Ora vado a calcolare la nuova matrice di rotazione necessaria per ottenere
il vettore velocità
Rv(:,:,i)=R4(:,:,i)*RA(:,:,i);
VX(i)=V(i)*Rv(2,1,i);
VY(i)=V(i)*Rv(2,2,i);
VZ(i)=V(i)*Rv(2,3,i);
Vprova(i)=sqrt(VX(i)^2+VY(i)^2+VZ(i)^2);
%Ora stampo i risultati
fprintf('\n CASO %d \n\n',i)
fprintf('X=%.2f Km \n',X(i))
fprintf('Y=%.2f Km \n',Y(i))
fprintf('Z=%.2f Km \n',Z(i))
fprintf('VX=%.2f Km/s \n',VX(i))
fprintf('VY=%.2f Km/s \n',VY(i))
fprintf('VZ=%.2f Km/s \n',VZ(i))
fprintf('\nVerica risultati\n')
fprintf('R=%.0f Km \n',Rprova(i))
fprintf('V=%.2f Km/s \n',Vprova(i))
end

Potrebbero piacerti anche