开普勒轨道参数

轨道参数

赤道面:与地球自转轴垂直的平面。
赤道:赤道面与地球表面相交的大圆。
黄道:太阳相对于地球做的运动轨迹在地球表面上的投影。
黄赤交角:黄道面与赤道面之间的夹角,大约23.5°
春分点:太阳投影沿黄道由南半球向北半球运动时与赤道的交点。
在这里插入图片描述
升交点:卫星由南向北运行时其轨道面与地球赤道面的交点
6个参数:轨道升交点赤经 Ω \Omega Ω、轨道倾角 i i i、近地点角距 ω \omega ω、长半径 a s a_s as、偏心率 e s e_s es和卫星真近点角 v v v
在这里插入图片描述

轨道升交点赤经 Ω \Omega Ω:地球赤道平面上的春分点和升交点对地心 O O O的夹角。
轨道倾角 i i i:卫星轨道平面与赤道面之间的夹角。
近地点角距 ω \omega ω:卫星轨道平面上升交点与近地点之间的地心夹角。
长半径 a s a_s as:椭圆参数
长半径 a s a_s as:椭圆参数
卫星真近点角 v v v:卫星在运行轨道上当前位置 S S S与近地点 N N N之间的地心夹角

1.轨道升交点赤经 Ω \Omega Ω和轨道倾角 i i i确定了卫星运行的轨道平面
2.近地点角距 ω \omega ω进一步确定卫星椭圆轨道在轨道平面中的方位
3.长半径 a s a_s as和长半径 a s a_s as确定了椭圆的大小方向
4.卫星真近点角 v v v确定卫星相对于地心 O O O瞬时空间位置

在这里插入图片描述

卫星星历和历书参数

在实际中卫星运动将会受到多种因素影响,故实际运动轨迹将偏离无摄运动轨道。
GPS采用了一套拓展后的开普勒轨道参数,共计16个。这套参数被称为星历参数

多出来的参数用于修正上一结中卫星的轨道参数。具体意义和求解见《GPS原理与接收机设计》3.3-3.6。

  • 23
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个使用Adams显式公式计算卫星开普勒积分轨道的MATLAB程序: ```matlab % 计算卫星开普勒积分轨道 % 初始化参数 GM = 398600.4415; % 地球引力常数 a = 42164; % 卫星轨道长半轴 e = 0.5; % 卫星轨道离心率 i = 30; % 卫星轨道倾角 RAAN = 0; % 卫星轨道升交点赤经 omega = 0; % 卫星轨道近地点幅角 M0 = 0; % 卫星轨道平近点角 T = 2*pi*sqrt(a^3/GM); % 卫星轨道周期 N = 10000; % 时间步数 dt = T/N; % 时间步长 t = 0:dt:T; % 时间点 r = zeros(3,N+1); % 卫星位置向量 v = zeros(3,N+1); % 卫星速度向量 % 计算初始位置和速度 E0 = M0; for j = 1:100 E = E0 + (M0 + e*sin(E0) - E0)/(1 - e*cos(E0)); if abs(E - E0) < 1e-10 break; end E0 = E; end f = 2*atan(sqrt((1+e)/(1-e))*tan(E/2)); r0 = a*(1 - e*cos(E)); v0 = sqrt(GM*a)/r0*sin(E)*[1;sqrt(1-e^2);0]; R = [cos(RAAN)*cos(omega) - sin(RAAN)*sin(omega)*cos(i), ... sin(RAAN)*cos(omega) + cos(RAAN)*sin(omega)*cos(i), ... sin(omega)*sin(i); ... -cos(RAAN)*sin(omega) - sin(RAAN)*cos(omega)*cos(i), ... -sin(RAAN)*sin(omega) + cos(RAAN)*cos(omega)*cos(i), ... cos(omega)*sin(i); ... sin(RAAN)*sin(i), -cos(RAAN)*sin(i), cos(i)]; r(:,1) = R*[r0*cos(f); r0*sin(f); 0]; v(:,1) = R*[v0*cos(f) - sqrt(GM*a)*sin(f)/r0; ... v0*sin(f) + sqrt(GM*a)*cos(f)/r0; 0]; % 使用Adams显式公式计算位置和速度 for n = 1:N % 计算导数值 rn = r(:,n); vn = v(:,n); rnp1 = r(:,n+1); vnp1 = v(:,n+1); f0 = vn; f1 = -GM*rn/norm(rn)^3; f2 = -GM*(rn + 1/2*dt*f0)/(norm(rn + 1/2*dt*f0)^3); f3 = -GM*(rn + 1/2*dt*f1)/(norm(rn + 1/2*dt*f1)^3); f4 = -GM*(rn + dt*f2)/(norm(rn + dt*f2)^3); f5 = -GM*(rn + dt*f3)/(norm(rn + dt*f3)^3); % 计算位置和速度 if n < 3 rn1 = rn + dt*f0; vn1 = vn + dt*f1; elseif n == 3 rn1 = rn + dt/24*(55*f0 - 59*f1 + 37*f2 - 9*f3); vn1 = vn + dt/24*(55*f1 - 59*f2 + 37*f3 - 9*f4); else rn1 = rn + dt/720*(251*f0 - 646*f1 + 264*f2 + 106*f3 - 19*f4); vn1 = vn + dt/720*(251*f1 - 646*f2 + 264*f3 + 106*f4 - 19*f5); end % 更新位置和速度 r(:,n+1) = rn1; v(:,n+1) = vn1; end % 绘制轨道图 figure; plot3(r(1,:), r(2,:), r(3,:)); axis equal; xlabel('x (km)'); ylabel('y (km)'); zlabel('z (km)'); title('Satellite Orbit'); ``` 注意,这个程序中使用了Adams显式公式的三阶和五阶公式来计算位置和速度。为了使程序更简洁,我没有考虑时间步长的自适应性,也没有考虑数值误差的影响。在实际应用中,需要根据具体情况选择合适的时间步长和公式,以及采用更精确的数值方法来处理误差。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值