资源描述
西南交通大学卫星坐标计算实验实验报告专 业: 班 级: 姓 名: 学 号: 成 绩: 2017年3月20日习题与教育一、实验步骤:1、将星历文件中需要的数据作为矩阵导入MATLAB中的变量。2、编写计算程序代码1)计算平均角速度:2)改正平角速度n:3)计算平近点角:4)通过迭代计算,计算偏近点角:5)计算真近点角:6)计算升交距角:7)计算卫星轨道摄动项改正数:8)计算改正后的真近点角:9)计算改正后的向径:10)计算改正后的倾角:11)计算轨道平面内的坐标:12)计算观测瞬间升交点的经度:13)计算旋转矩阵: 14)卫星坐标:15)计算钟差:二、实现代码:function pos=SPOS(br,dt)GM=3.986005e+14;we=7.2921151467e-5;%a0 a1 a2a0=br(1,2);a1=br(1,3);a2=br(1,4);% IODE Crs dn M0Crs=br(2,2); dn=br(2,3); M0=br(2,4);% Cuc e Cus sqACuc=br(3,1);e=br(3,2); Cus=br(3,3);sqA=br(3,4);% toe Cic OM0 Cistoe =br(4,1);Cic =br(4,2); OM0 =br(4,3);Cis =br(4,4);% i0 Crc w DOMi0 =br(5,1);Crc =br(5,2); w =br(5,3);DOM =br(5,4);% Di weekDi=br(6,1);n0=sqrt(GM)/sqA3;n=n0+dn;Mk=M0+n*dt;Ek=Mk;Te=inf;while abs(Te-Ek)1e-14 Te=Ek; Ek=Mk+e*sin(Ek);endxx=cos(Ek)-e;yy=sqrt(1-e*e)*sin(Ek);v=atan2(yy,xx);u=v+w;du=Cuc*cos(2*u)+Cus*sin(2*u);dr=Crc*cos(2*u)+Crs*sin(2*u);di=Cic*cos(2*u)+Cis*sin(2*u);uk=u+du;rk=sqA*sqA*(1-e*cos(Ek)+dr;ik=i0+di+Di*dt;X=rk*cos(uk);rk*sin(uk);0;Rx=1 0 0;0 cos(ik) -sin(ik);0 sin(ik) cos(ik);lt=OM0+(DOM-we)*(toe+dt)-DOM*toe;Rz=cos(lt) -sin(lt) 0;sin(lt) cos(lt) 0;0 0 1;%计算钟差ddt=a0+a1*(dt-toe)+a2*(dt-toe)2;disp(ddt);pos=Rz*Rx*X;end三、实验结果:习题与教育
展开阅读全文