卫星相对运动轨道CW方程解析解与数值解仿真

 解析形式:

#CW方程解析解
def cw_ParseTheSolution(State0,n,t):
    State0.reshape(6,1)
    Phi = np.array([[4-3*cos(n*t),      0,  0,           sin(n*t)/n,         (2-2*cos(n*t))/n,            0],
                    [6*(sin(n*t)-n*t),  1,  0,           (2*cos(n*t)-1)/n,   (4*sin(n*t)/n)-3*t,          0],
                    [0,                 0,  cos(n*t),    0,                  0,                  sin(n*t)/n],
                    [3*n*sin(n*t),      0,  0,           cos(n*t),           2*sin(n*t),                  0],
                    [6*n*(cos(n*t) -1), 0,  0,           -2*sin(n*t),        4*cos(n*t)-3,                0],
                    [0,                 0,  -n*sin(n*t),  0,                 0,                    cos(n*t)]])  
    State = Phi @ State0
    return State

数值积分形式:

def dery(Y,t,Var,U):
    #卫星控制量
    Ux = U[0] #卫星控制量
    Uy = U[1] #卫星控制量
    Uz = U[2] #卫星控制量
    #参考卫星轨道角速度
    Omega = Var[0] #参考卫星角速度
    #卫星轨道参数变量
    x  = Y[0]
    y  = Y[1]
    z  = Y[2]
    Vx = Y[3]
    Vy = Y[4]
    Vz = Y[5]
    #卫星运动微分方程
    dx  = Vx
    dy  = Vy
    dz  = Vz
    dVx = 2*Omega*Vy + 3*Omega**2*x + Ux;
    dVy = -2*Omega*Vx + Uy
    dVz = -Omega**2*z + Uz
    return np.array([dx,dy,dz,dVx,dVy,dVz], dtype = float)

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

相对维度

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值