卫星轨迹一.问题提出设卫星在空中运行的运动方程为: 其中是 k 重力系数(k=401408km3/s).卫星轨道采纳极坐标表示,通过仿真,讨论发射速度对卫星轨道的影响.实验将作出卫星在地球表面(r=6400KM,θ=0)分别以 v=8KM/s,v=10KM/s, v=12KM/s 发射时,卫星绕地球运行的轨迹.二.问题分析1.卫星运动方程一个二阶微分方程组,应用 Matlab 的常微分方程求解命令 ode45 求解时,首先需要将二阶微分方程组转换成一阶微分方程组。若设 ,则有: 2.建立极坐标如上图所示,初值分别为:卫星径向初始位置,即地球半径:y(1,1)=6400;卫星初始角度位置:y(2,1)=0;卫星初始径向线速度:y(3,1)=0;卫星初始周向角速度:y(4,1)=v/6400。3.将上述一阶微分方程及其初值带入常微分方程求解命令 ode45 求解,可得到一定时间间隔的卫星的径向坐标值 y(1)向量;周向角度坐标值 y(2)向量;径向线速度 y(3)向量;周向角速度 y(4)向量。4.通过以上步骤所求得的是极坐标下的解,若需要在直角坐标系下绘制卫星的运动轨迹,还需要进行坐标变换,将径向坐标值 y(1)向量;周向角度坐标值 y(2)向量通过以下方程转换为直角坐标下的横纵坐标值 X,Y。 5 . 卫 星 发 射 速 度 速 度 的 不 同 将 导 致 卫 星 的 运 动 轨 迹 不 同 , 实 验 将 绘 制 卫 星 分 别以 v=8KM/s ,v=10KM/s,v=12KM/s 的初速度发射的运动轨迹。三.Matlab 程序及注释1.主程序v=input(’请输入卫星发射速度单位 Km/s:\nv=’); %卫星发射速度输入。axis([—26400 7000 -10000 42400 ]); %定制图形输出坐标范围。%为了直观表达卫星轨迹,以下语句将绘制三维地球。[x1,y1,z1]=sphere(15); %绘制单位球.x1=x1*6400;y1=y1*6400;z1=z1*6400; %定义地球半径。mesh(x1,y1,z1);surf(x1,y1,z1); %绘制地球。x0=[6400,0,0,v/6400]; %微分方程初始值。[t,y]=ode45(@YunDongFangCheng,[0,200000],x0); %将微分方程,时间变量范围,%以及微分方程初始值,传递给函数 ode45 求解微分方程。%以下语句将径向坐标值 y(1)向量,周向角度坐标值 y(2)向量,%转换为直角坐标下的横纵坐标值 X,Y。用于直角坐标下卫星轨迹绘制。X=y(:,1).*cos(y(:,3));Y=y(:,1).*sin(y(:,3));%以下语句用于卫星轨迹绘制.hold on;plot(X,Y,'r。’,X,Y,'b-');grid on;2.微分方程函数function f=YunDongFa...