Red de conocimiento informático - Conocimiento del nombre de dominio - Cómo calcular la posición del satélite en un momento determinado programa matlab

Cómo calcular la posición del satélite en un momento determinado programa matlab

formato largo

tp=input('tp=');

toc=input('toc=');

a0=input('a0= ');

a1=input('a1=');

a2=input('a2=').

dedo=input('dedo =");

M0=input('M0=');

a=input('radio largo a=');

deltan=input ('Diferencia de velocidad angular promedio del satélite deltan=');

e=input('e= ');

w=input('w=');

Cuc=input('Cuc=');

Cus=input('Cus=');

Cic=input('Cic=');

Cis=input('Cis=');

Crc=input('Crc=');

Crs=input('Crs=');

i0=input('i0=');

I=input('Tasa de cambio de inclinación de la órbita I=');

OM0=input('OM0= ' );

OM=input('Tasa de cambio de rejilla de nodo ascendente OM=');

tt=aa1*(tp-toc)+a2*(tp-toc ) ;

t=tp-tt;

tk=t-toe;

u=3986005*10^8; n0 =sqrt(u/a^ 3);

n=ndeltan;

Mk=Mn*tk;

Ek=0;

n1=0;

mientras abs(Ek-Dk)>0.0000000001

n1=n1+1

Ek=Dk;

Dk=Mk+e*sin(Ek);

fin

Ek = Dk;

Vk=atan(sqrt(1-e*e)*sin(Ek)/(cos(Ek)-e));

if sin(Ek) > ;0 & cos(Ek)-e<0

Vk=piVk;

elseif sin(Ek)<0 & cos(Ek)-e<0

Vk=pi+Vk;

elseif sin(Ek)<0 & cos(Ek )-e>0

Vk=2*pi-Vk;

end

Faik=Vk+w;

SigmaU=Cuc*cos(2*Faik)+Cus*sin(2*Faik);

SigmaR=Crc*cos(2*Faik)+ Crs*sin(2*Faik);

SigmaI=Cic*cos(2*Faik)+Cis*sin(2*Faik);

Uk=Faik+SigmaU

Rk=a*(1-e*cos(Ek))+SigmaR

Ik=i SigmaI+I; *tk;

X0=Rk*cos(Reino Unido);

Y0=Rk*sin(Reino Unido); 5);

OMK=OM(OM-we)*tk-we*toe;

Xk=X0* co

s(OMK)-Y0*cos(Ik)*sin(OMK);

Yk=X0*sin(OMK)+Y0*cos(Ik)*cos(OMK

<); p>Zk=Y0*sin(Ik);

disp(['Corrección de diferencia de reloj satélite dt=',num2str(tt)])

disp(['Momento normalizado tk =',num2str(tk)])

disp(['Velocidad angular operativa media n=',num2str(n)])

disp(['Ángulo de apodización del satélite Mk= ',num2str(Mk)])

disp(['Ángulo de desplazamiento Ek=',num2str(Ek)])

disp(['Ángulo de punto adyacente real Vk=' , num2str(Vk)])

disp(['Ángulo de distancia de intersección ascendente Faik=', num2str(Faik)])

disp(['Término de corrección de perturbación SigmaU=' ,num2str (SigmaU)])

disp(['Término de corrección de perturbación SigmaR=',num2str(SigmaR)])

disp(['Término de corrección de perturbación SigmaI=' ,num2str(SigmaI )])

disp('Término de corrección mediante perturbación:')

Disp(['Ángulo de paso ascendente Uk=',num2str(Uk)])

Disp(['Diámetro del vector satélite Rk=',num2str(Rk)])

Disp(['Inclinación de la órbita Ik=',num2str(Ik)])

disp( 'Coordenadas del satélite en el sistema de coordenadas planas de la órbita')

disp(['X0=',num2str(X0)])

disp( ['Y0=' , num2str(Y0)])

disp(['La longitud del nodo ascendente en el momento de la observación, OMK=', num2str(OMK)])

disp(' El coordenadas del satélite en el sistema de coordenadas fijas geocéntricas Las coordenadas rectangulares del satélite en el sistema de coordenadas fijas geocéntricas')

disp(['Xk=', num2str(Xk)])

disp(['Yk=',num2str(Yk)])

disp(['Zk=',num2str(Zk)])