文章目录
Closed-Loop Endoatmospheric Ascent Guidance
作者信息:
Ping Lu,爱荷华州立大学,爱荷华州艾姆斯市
Hongsheng Sun
Bruce Tsai
总结人: 鲁鹏,北京理工大学宇航学院
2019.05.09
文章结构
- 引言
- 大气层内上升制导问题的数学模型
- 上升段动力学方程
- 最优控制问题
- 确定 Φ \Phi Φ和 α \alpha α的符号
- 添加路径约束
- 数值方法
- 有限差分方法
- 更新算法
- Continuation on Atmospheric Density和初值猜测
- 仿真
- 终端条件和上升时间调整
- 开环解
- 闭环仿真
- 结论
- 附录A:三维最优上升问题的协态微分方程
- 附录B:真空最优上升问题解析解
收获
- 运载器的在惯性坐标系中的动力学方程中的 r \boldsymbol{r} r是运载器的地心位置矢量
- 质量变化率公式 m ˙ = − η T v a c / ( g 0 I s p ) \dot{m} = -\eta T_{vac}/(g_{0}I_{sp}) m˙=−ηTvac/(g0Isp)中的 g 0 g_{0} g0是地球表面的重力加速度。探测器月球表面软着陆也使用这个质量变化公式, g 0 g_{0} g0 依然是地球表面的重力加速度
- 地球自传给垂直发射运载器带来水平方向(相对于发射惯性坐标系)的初始速度
- 运载器上升段制导中,常用 J = 1 / r f − V f 2 / 2 J = 1/r_{f}-V^{2}_{f}/2 J=1/rf−Vf2/2 作为目标函数,使 J J J最小,则末端能量 − 1 / r f + V f 2 / 2 -1/r_{f}+V^{2}_{f}/2 −1/rf+Vf2/2最大
优缺点
to be added …
难理解的部分
约束 S 1 = q α − Q α ≤ 0 S_{1} = q\alpha - Q_{\alpha} \leq 0 S1=qα−Qα≤0零阶约束,因为控制量 1 b \boldsymbol{1}_{b} 1b直接出现在约束中(通过 α \alpha α),约束 S 3 = q − q m a x ≤ 0 S_{3} = q - q_{max} \leq 0 S3=q−qmax≤0是一阶约束,因为控制量 1 b \boldsymbol{1}_{b} 1b出现在 S 3 S_{3} S3对时间的一阶导数中。
公式推导
文章中的公式有很多值得注意的细节,文章中的错误也一并记录下来。
1. 真空最优上升解
真空主动段动力学方程
归一化后的方程[1]
r
˙
=
V
V
˙
=
−
r
+
T
(
τ
)
1
b
\begin{aligned} \dot{\boldsymbol{r}} =& \boldsymbol{V} \\ \dot{\boldsymbol{V}} = -\boldsymbol{r} +& T(\tau)\boldsymbol{1}_{b} \\ \end{aligned}
r˙=V˙=−r+VT(τ)1b
动力学方程可以简化为这种形式的前提是引力加速度做如下近似
g
=
−
(
μ
E
/
r
0
3
)
r
=
−
ω
2
r
\boldsymbol{g} = -(\mu_{E}/r^{3}_{0})\boldsymbol{r} = -\omega^{2}\boldsymbol{r}
g=−(μE/r03)r=−ω2r
为了减小引力简化带来的误差,在每一次制导环的开始更新 r 0 r_{0} r0.
该方程的解析解如下所示[1-3]
[
p
v
(
τ
)
−
p
r
(
τ
)
]
=
[
cos
τ
I
3
sin
τ
I
3
−
sin
τ
I
3
cos
τ
I
3
]
[
p
v
0
−
p
r
0
]
=
Ω
(
τ
)
[
p
v
0
−
p
r
0
]
\begin{bmatrix} \boldsymbol{p}_{v}(\tau)\\ -\boldsymbol{p}_{r}(\tau)\\ \end{bmatrix} = \begin{bmatrix} \cos{\tau}{I}_{3} & \sin{\tau}{I}_{3}\\ -\sin{\tau}{I}_{3} & \cos{\tau}{I}_{3}\\ \end{bmatrix} \begin{bmatrix} \boldsymbol{p}_{v0}\\ -\boldsymbol{p}_{r0}\\ \end{bmatrix} = \Omega(\tau) \begin{bmatrix} \boldsymbol{p}_{v0}\\ -\boldsymbol{p}_{r0}\\ \end{bmatrix}
[pv(τ)−pr(τ)]=[cosτI3−sinτI3sinτI3cosτI3][pv0−pr0]=Ω(τ)[pv0−pr0]
[ r ( τ ) V ( τ ) ] = Ω ( τ ) [ r 0 V 0 ] + Γ ( τ ) W \begin{bmatrix} \boldsymbol{r}(\tau)\\ \boldsymbol{V}(\tau)\\ \end{bmatrix} = \Omega(\tau) \begin{bmatrix} \boldsymbol{r}_{0}\\ \boldsymbol{V}_{0}\\ \end{bmatrix} + \Gamma(\tau) \mathrm{W} [r(τ)V(τ)]=Ω(τ)[r0V0]+Γ(τ)W
Γ ( τ ) = [ sin τ I 3 − cos τ I 3 cos τ I 3 sin τ I 3 ] \Gamma(\tau) = \begin{bmatrix} \sin{\tau}{I}_{3} & -\cos{\tau}{I}_{3}\\ \cos{\tau}{I}_{3} & \sin{\tau}{I}_{3}\\ \end{bmatrix} Γ(τ)=[sinτI3cosτI3−cosτI3sinτI3]
W
=
[
I
c
I
s
]
=
[
∫
0
τ
1
p
v
(
ζ
)
cos
(
ζ
)
T
(
ζ
)
d
ζ
∫
0
τ
1
p
v
(
ζ
)
sin
(
ζ
)
T
(
ζ
)
d
ζ
]
\mathrm{W} = \begin{bmatrix} I_{c} \\ I_{s} \end{bmatrix} = \begin{bmatrix} \int^{\tau}_{0}\boldsymbol{1}_{pv}(\zeta)\cos(\zeta) T(\zeta) d\zeta \\ \int^{\tau}_{0}\boldsymbol{1}_{pv}(\zeta)\sin(\zeta) T(\zeta) d\zeta \\ \end{bmatrix}
W=[IcIs]=[∫0τ1pv(ζ)cos(ζ)T(ζ)dζ∫0τ1pv(ζ)sin(ζ)T(ζ)dζ]
其中,
I
3
I_{3}
I3是
3
×
3
3\times 3
3×3的单位矩阵。通过公式可以看出初始协态变量的模
(
p
v
0
T
p
v
0
+
p
r
0
T
p
r
0
)
(\boldsymbol{p}_{v0}^{T}\boldsymbol{p}_{v0}+\boldsymbol{p}_{r0}^{T}\boldsymbol{p}_{r0})
(pv0Tpv0+pr0Tpr0)对协态变量之后的方向变化没有任何影响,只影响协态变量的大小。考虑到状态的解析解只和
1
p
v
\boldsymbol{1}_{pv}
1pv有关,所以初始协态变量的模对状态也没有影响。
质量推力和发动机阀门
首先声明,程序中我在求解质量推力和发动机阀门大小时未对质量和时间归一化,只是在每个时间区间用对应的引力加速度对推力加速度 T ( t ) T(t) T(t)进行了归一化。
- 当 T < T m a x T<T_{max} T<Tmax时
m ( t ) = m 0 − T v a c c t T ( t ) = T v a c m ( t ) g 0 η ( t ) = 1 \begin{aligned} m(t) =& m_{0} - \frac{T_{vac}}{c}t \\ T(t) =& \frac{T_{vac}}{m(t)g_{0}} \\ \eta(t) =& 1 \\ \end{aligned} m(t)=T(t)=η(t)=m0−cTvactm(t)g0Tvac1
其中,
T
v
a
c
T_{vac}
Tvac是发动机真空推力,
g
0
g_{0}
g0是运载器所在某时间区间
[
t
i
,
t
i
+
τ
]
\lbrack t_{i},t_{i}+\tau \rbrack
[ti,ti+τ]内的引力加速度值,喷嘴等效气流速度(nozzle exit velocity)
c
=
g
E
I
s
p
c = g_{E}I_{sp}
c=gEIsp,
g
E
g_{E}
gE是地球表面重力加速度,
m
(
t
)
m(t)
m(t)是运载器质量,
m
0
m_{0}
m0是运载器质量初始值,
T
(
t
)
T(t)
T(t)是被
g
0
g_{0}
g0归一化后的推力加速度,
η
\eta
η是发动机阀门。
随着
T
T
T不断增大,假设在
t
c
t_{c}
tc时刻,推力加速度达到最大(取
T
m
a
x
=
4
g
e
T_{max}=4g_{e}
Tmax=4ge),此后推力加速度
T
T
T保持最大,并且
t
c
t_{c}
tc时刻在
[
t
i
,
t
i
+
τ
]
\lbrack t_{i},t_{i}+\tau\rbrack
[ti,ti+τ]内,那么
T
v
a
c
[
m
0
−
(
T
v
a
c
/
c
)
t
c
]
g
0
=
T
m
a
x
g
0
\frac{T_{vac}}{\lbrack m_{0}-(T_{vac}/c)t_{c}\rbrack g_{0}} = \frac{T_{max}}{g_{0}}
[m0−(Tvac/c)tc]g0Tvac=g0Tmax
所以
t
c
=
c
(
m
0
T
v
a
c
−
1
T
m
a
x
)
t_c = c(\frac{m_{0}}{T_{vac}}-\frac{1}{T_{max}})
tc=c(Tvacm0−Tmax1)
- 当 T = T m a x T=T_{max} T=Tmax后,即 t ⩾ t c t \geqslant t_{c} t⩾tc时
m ( t ) = m t c e − ( T m a x / c ) t T ( t ) = T m a x g 0 η ( t ) = T m a x m ( t ) T v a c \begin{aligned} m(t) =& m_{t_{c}}e^{-(T_{max}/c)t} \\ T(t) =& \frac{T_{max}}{g_{0}} \\ \eta(t) =& \frac{T_{max}m(t)}{T_{vac}} \\ \end{aligned} m(t)=T(t)=η(t)=mtce−(Tmax/c)tg0TmaxTvacTmaxm(t)
此时的 g 0 g_{0} g0是某时间区间 [ t j , t j + τ ] \lbrack t_{j},t_{j}+\tau \rbrack [tj,tj+τ](注意 t j + τ ⩾ t c t_{j}+\tau \geqslant t_{c} tj+τ⩾tc)内引力加速度, T ( t ) T(t) T(t)是被 g 0 g_{0} g0归一化后的推力加速度, m t c m_{t_{c}} mtc是 t c t_{c} tc时刻运载器的质量。
垂直上升结束时运载器在发射点惯性坐标系中的位置和速度
运载器在垂直上升结束后制导率才开始工作,不同运载器有不同的垂直上升时间
t
0
t_{0}
t0。文献[5]中垂直上升时间
t
0
t_{0}
t0取9s,文献[1]中垂直上升时间
t
0
t_{0}
t0取5s。
垂直上升阶段运载器推力加速度满足最大推力加速度约束,此时运载器所受加速度
a
v
e
h
i
c
l
e
(
t
)
=
T
v
a
c
−
m
(
t
)
g
E
m
(
t
)
a_{vehicle}(t) = \frac{T_{vac} - m(t)g_{E}}{m(t)}
avehicle(t)=m(t)Tvac−m(t)gE
所以,对加速度积分可以得到竖直上升的速度
v
0
x
(
t
)
v_{0x}(t)
v0x(t)
v
0
=
[
v
0
x
(
t
0
)
,
v
0
y
,
v
0
z
]
T
v
0
x
(
t
)
=
−
c
ln
(
m
0
−
T
v
a
c
c
t
)
−
g
E
t
+
c
ln
(
m
0
)
\begin{aligned} v_{0} = &\lbrack v_{0x}(t_{0}), v_{0y}, v_{0z}\rbrack ^{T}\\ v_{0x}(t) = -c\ln(&m_{0}-\frac{T_{vac}}{c}t) - g_{E}t + c\ln(m_{0}) \end{aligned}
v0=v0x(t)=−cln([v0x(t0),v0y,v0z]Tm0−cTvact)−gEt+cln(m0)
其中
v
0
y
,
v
0
z
v_{0y},v_{0z}
v0y,v0z是由地球自转引起的水平面内的速度在y和z轴上的分量。对速度
v
0
x
(
t
)
v_{0x}(t)
v0x(t)积分可得
r
0
x
(
t
)
r_{0x}(t)
r0x(t)
r
0
=
[
r
0
x
(
t
0
)
,
v
0
y
t
0
,
v
0
z
t
0
]
T
r
0
x
(
t
)
=
c
2
T
v
a
c
(
m
0
−
T
v
a
c
c
t
)
[
ln
(
m
0
−
T
v
a
c
c
t
)
−
1
]
−
1
2
g
E
t
2
+
c
ln
(
m
0
)
t
+
c
2
T
v
a
c
m
0
[
1
−
ln
(
m
0
)
]
\begin{aligned} r_{0} = \lbrack r_{0x}(t_{0}), v_{0y}&t_{0}, v_{0z}t_{0}\rbrack ^{T} \\ r_{0x}(t) = \frac{c^2}{T_{vac}}(m_{0} - \frac{T_{vac}}{c}t) \lbrack \ln(&m_{0} - \frac{T_{vac}}{c}t)-1 \rbrack - \frac{1}{2}g_{E}t^{2} + \\ c\ln(m_{0})t + \frac{c^2}{T_{vac}}m_{0}\lbrack &1 - \ln(m_{0}) \rbrack \end{aligned}
r0=[r0x(t0),v0yr0x(t)=Tvacc2(m0−cTvact)[ln(cln(m0)t+Tvacc2m0[t0,v0zt0]Tm0−cTvact)−1]−21gEt2+1−ln(m0)]
终端约束和横截条件得到的约束方程 Ψ = 0 {\Psi} = \mathbf{0} Ψ=0
方程如下[1]
1
2
r
f
T
r
f
−
1
2
r
f
∗
2
=
0
\frac{1}{2}\boldsymbol{r}^{T}_{f}\boldsymbol{r}_{f} - \frac{1}{2}r^{*2}_{f} = 0
21rfTrf−21rf∗2=0
1 N T ( r f × V f ) − ∥ r f × V f ∥ cos i ∗ = 0 \boldsymbol{1}^{T}_{N}(\boldsymbol{r}_{f}\times \boldsymbol{V}_{f})-\lVert \boldsymbol{r}_{f}\times \boldsymbol{V}_{f}\rVert \cos{i^{*}} = 0 1NT(rf×Vf)−∥rf×Vf∥cosi∗=0
r f T V f − r f V f sin γ f ∗ = 0 \boldsymbol{r}^{T}_{f}\boldsymbol{V}_{f} - r_{f}V_{f}\sin{\gamma^{*}_{f}} = 0 rfTVf−rfVfsinγf∗=0
( V f T p r f ) r f 2 − ( r f T p V f ) V f 2 + ( r f T V f ) ( V f 2 − r f T p r f ) = 0 (\boldsymbol{V}^{T}_{f}\boldsymbol{p}_{rf})r^{2}_{f} - (\boldsymbol{r}^{T}_{f}\boldsymbol{p}_{Vf})V^{2}_{f} + (\boldsymbol{r}^{T}_{f}\boldsymbol{V}_{f})(V^{2}_{f} - \boldsymbol{r}^{T}_{f}\boldsymbol{p}_{rf}) = 0 (VfTprf)rf2−(rfTpVf)Vf2+(rfTVf)(Vf2−rfTprf)=0
V f T p V f − V f 2 = 0 \boldsymbol{V}^{T}_{f}\boldsymbol{p}_{Vf} - V^{2}_{f} = 0 VfTpVf−Vf2=0
( h f T p r f ) [ h f T ( r f × 1 N ) ] + ( h f T p V f ) [ h f T ( V f × 1 N ) ] = 0 (\boldsymbol{h}^{T}_{f}\boldsymbol{p}_{rf})\lbrack \boldsymbol{h}^{T}_{f}(\boldsymbol{r}_{f}\times \boldsymbol{1}_{N})\rbrack + (\boldsymbol{h}^{T}_{f}\boldsymbol{p}_{Vf})\lbrack \boldsymbol{h}^{T}_{f}(\boldsymbol{V}_{f}\times \boldsymbol{1}_{N})\rbrack = 0 (hfTprf)[hfT(rf×1N)]+(hfTpVf)[hfT(Vf×1N)]=0
求 Ψ {\Psi} Ψ对状态和协态变量的导数
f
1
f_1
f1对状态变量和协态变量求导
∂
f
1
∂
r
f
=
r
f
,
∂
f
1
∂
V
f
=
0
,
∂
f
1
∂
p
V
f
=
0
,
∂
f
1
∂
p
r
f
=
0
\frac{\partial f_{1}}{\partial \boldsymbol{r}_{f}} = \boldsymbol{r}_{f}, \frac{\partial f_{1}}{\partial \boldsymbol{V}_{f}} = \boldsymbol{0}, \frac{\partial f_{1}}{\partial \boldsymbol{p}_{Vf}} = \boldsymbol{0}, \frac{\partial f_{1}}{\partial \boldsymbol{p}_{rf}} = \boldsymbol{0}
∂rf∂f1=rf,∂Vf∂f1=0,∂pVf∂f1=0,∂prf∂f1=0
f
2
f_2
f2对状态变量和协态变量求导
∂
f
2
∂
r
f
=
V
f
×
1
N
+
(
V
f
×
)
T
(
r
f
×
V
f
)
cos
i
∗
∥
r
f
×
V
f
∥
\frac{\partial f_{2}}{\partial \boldsymbol{r}_{f}} = \boldsymbol{V}^{\times}_{f}\boldsymbol{1}_{N} + (\boldsymbol{V}^{\times}_{f})^{T}(\boldsymbol{r}_{f}\times \boldsymbol{V}_{f})\frac{\cos{i^{*}}}{\lVert \boldsymbol{r}_{f}\times \boldsymbol{V}_{f}\rVert}
∂rf∂f2=Vf×1N+(Vf×)T(rf×Vf)∥rf×Vf∥cosi∗
∂ f 2 ∂ V f = ( r f × ) T 1 N + r f × ( r f × V f ) cos i ∗ ∥ r f × V f ∥ \frac{\partial f_{2}}{\partial \boldsymbol{V}_{f}} = (\boldsymbol{r}^{\times}_{f})^{T}\boldsymbol{1}_{N} + \boldsymbol{r}^{\times}_{f}(\boldsymbol{r}_{f}\times \boldsymbol{V}_{f})\frac{\cos{i^{*}}}{\lVert \boldsymbol{r}_{f}\times \boldsymbol{V}_{f}\rVert} ∂Vf∂f2=(rf×)T1N+rf×(rf×Vf)∥rf×Vf∥cosi∗
∂ f 2 ∂ p V f = 0 , ∂ f 2 ∂ p r f = 0 \frac{\partial f_{2}}{\partial \boldsymbol{p}_{Vf}} = \boldsymbol{0}, \frac{\partial f_{2}}{\partial \boldsymbol{p}_{rf}} = \boldsymbol{0} ∂pVf∂f2=0,∂prf∂f2=0
f
3
f_3
f3对状态变量和协态变量求导
∂
f
3
∂
r
f
=
V
f
−
(
V
f
sin
γ
∗
)
r
f
/
r
f
\frac{\partial f_{3}}{\partial \boldsymbol{r}_{f}} = \boldsymbol{V}_{f} - (V_{f}\sin{\gamma^{*})}\boldsymbol{r}_{f}/r_{f}
∂rf∂f3=Vf−(Vfsinγ∗)rf/rf
∂ f 3 ∂ V f = r f − ( r f sin γ ∗ ) V f / V f \frac{\partial f_{3}}{\partial \boldsymbol{V}_{f}} = \boldsymbol{r}_{f} - (r_{f}\sin{\gamma^{*})}\boldsymbol{V}_{f}/V_{f} ∂Vf∂f3=rf−(rfsinγ∗)Vf/Vf
∂ f 3 ∂ p V f = 0 , ∂ f 3 ∂ p r f = 0 \frac{\partial f_{3}}{\partial \boldsymbol{p}_{Vf}} = \boldsymbol{0}, \frac{\partial f_{3}}{\partial \boldsymbol{p}_{rf}} = \boldsymbol{0} ∂pVf∂f3=0,∂prf∂f3=0
f
4
f_{4}
f4对状态变量和协态变量求导
∂
f
4
∂
r
f
=
2
(
V
f
T
p
r
f
)
r
f
−
V
f
2
p
v
f
+
V
f
2
V
f
−
(
r
f
T
p
r
f
)
V
f
−
(
r
f
T
V
f
)
p
r
f
\frac{\partial f_{4}}{\partial \boldsymbol{r}_{f}} = 2(\boldsymbol{V}^{T}_{f}\boldsymbol{p}_{rf})\boldsymbol{r}_{f} - V^{2}_{f}\boldsymbol{p}_{vf} + V^{2}_{f}\boldsymbol{V}_{f} - (\boldsymbol{r}^{T}_{f}\boldsymbol{p}_{rf})\boldsymbol{V}_{f} - (\boldsymbol{r}^{T}_{f}\boldsymbol{V}_{f})\boldsymbol{p}_{rf}
∂rf∂f4=2(VfTprf)rf−Vf2pvf+Vf2Vf−(rfTprf)Vf−(rfTVf)prf
∂ f 4 ∂ V f = r f 2 p r f − 2 ( r f T p V f ) V f + V f 2 r f + 2 ( r f T V f ) V f − ( r f T p r f ) r f \frac{\partial f_{4}}{\partial \boldsymbol{V}_{f}} = r^{2}_{f}\boldsymbol{p}_{rf} - 2(\boldsymbol{r}^{T}_{f}\boldsymbol{p}_{Vf})\boldsymbol{V}_{f} + V^{2}_{f}\boldsymbol{r}_{f} + 2(\boldsymbol{r}^{T}_{f}\boldsymbol{V}_{f})\boldsymbol{V}_{f} - (\boldsymbol{r}^{T}_{f}\boldsymbol{p}_{rf})\boldsymbol{r}_{f} ∂Vf∂f4=rf2prf−2(rfTpVf)Vf+Vf2rf+2(rfTVf)Vf−(rfTprf)rf
∂ f 4 ∂ p V f = − V f 2 r f , ∂ f 4 ∂ p r f = r f 2 V f − ( r f T V f ) r f \frac{\partial f_{4}}{\partial \boldsymbol{p}_{Vf}} = -V^{2}_{f}\boldsymbol{r}_{f}, \frac{\partial f_{4}}{\partial \boldsymbol{p}_{rf}} = r^{2}_{f}\boldsymbol{V}_{f} - (\boldsymbol{r}^{T}_{f}\boldsymbol{V}_{f})\boldsymbol{r}_{f} ∂pVf∂f4=−Vf2rf,∂prf∂f4=rf2Vf−(rfTVf)rf
f
5
f_{5}
f5对状态变量和协态变量求导
∂
f
5
∂
r
f
=
0
,
∂
f
5
∂
V
f
=
p
V
f
−
2
V
f
\frac{\partial f_{5}}{\partial \boldsymbol{r}_{f}} = \boldsymbol{0}, \frac{\partial f_{5}}{\partial \boldsymbol{V}_{f}} = \boldsymbol{p}_{Vf}-2\boldsymbol{V}_{f}
∂rf∂f5=0,∂Vf∂f5=pVf−2Vf
∂ f 5 ∂ p V f = V f , ∂ f 5 ∂ p r f = 0 \frac{\partial f_{5}}{\partial \boldsymbol{p}_{Vf}} = \boldsymbol{V}_{f}, \frac{\partial f_{5}}{\partial \boldsymbol{p}_{rf}} = \boldsymbol{0} ∂pVf∂f5=Vf,∂prf∂f5=0
f
6
f_{6}
f6对状态变量和协态变量求导
∂
f
6
∂
r
f
=
[
h
f
T
(
r
f
×
1
N
)
]
V
f
×
p
r
f
+
(
h
f
T
p
r
f
)
[
(
V
f
×
)
T
1
N
×
+
(
1
N
×
)
T
V
f
×
]
r
f
+
[
h
f
T
(
V
f
×
1
N
)
]
V
f
×
p
V
f
+
(
h
f
T
p
V
f
)
[
(
V
f
×
)
2
1
N
]
\begin{aligned} \frac{\partial f_{6}}{\partial \boldsymbol{r}_{f}} = &\lbrack \boldsymbol{h}^{T}_{f}(\boldsymbol{r}_{f}\times \boldsymbol{1}_{N})\rbrack \boldsymbol{V}^{\times}_{f}\boldsymbol{p}_{rf} + (\boldsymbol{h}^{T}_{f}\boldsymbol{p}_{rf})\lbrack (\boldsymbol{V}^{\times}_{f})^{T}\boldsymbol{1}^{\times}_{N} + (\boldsymbol{1}^{\times}_{N})^{T}\boldsymbol{V}^{\times}_{f}\rbrack \boldsymbol{r}_{f}\\ &+\lbrack \boldsymbol{h}^{T}_{f}(\boldsymbol{V}_{f}\times \boldsymbol{1}_{N})\rbrack \boldsymbol{V}^{\times}_{f}\boldsymbol{p}_{Vf} + (\boldsymbol{h}^{T}_{f}\boldsymbol{p}_{Vf}) \lbrack (\boldsymbol{V}^{\times}_{f})^{2}\boldsymbol{1}_{N}\rbrack \end{aligned}
∂rf∂f6=[hfT(rf×1N)]Vf×prf+(hfTprf)[(Vf×)T1N×+(1N×)TVf×]rf+[hfT(Vf×1N)]Vf×pVf+(hfTpVf)[(Vf×)21N]
∂ f 6 ∂ V f = [ h f T ( r f × 1 N ) ] ( r f × ) T p r f + ( h f T p r f ) [ − ( r f × ) 2 1 N ] + [ h f T ( V f × 1 N ) ] ( r f × ) T p V f + ( h f T p V f ) ( r f × 1 N × + 1 N × r f × ) V f \begin{aligned} \frac{\partial f_{6}}{\partial \boldsymbol{V}_{f}} = &\lbrack \boldsymbol{h}^{T}_{f}(\boldsymbol{r}_{f}\times \boldsymbol{1}_{N})\rbrack (\boldsymbol{r}^{\times}_{f})^{T}\boldsymbol{p}_{rf} + (\boldsymbol{h}^{T}_{f}\boldsymbol{p}_{rf})\lbrack -(\boldsymbol{r}^{\times}_{f})^{2}\boldsymbol{1}_{N}\rbrack \\ &+\lbrack \boldsymbol{h}^{T}_{f}(\boldsymbol{V}_{f}\times \boldsymbol{1}_{N})\rbrack (\boldsymbol{r}^{\times}_{f})^{T}\boldsymbol{p}_{Vf} + (\boldsymbol{h}^{T}_{f}\boldsymbol{p}_{Vf})(\boldsymbol{r}^{\times}_{f}\boldsymbol{1}^{\times}_{N} + \boldsymbol{1}^{\times}_{N}\boldsymbol{r}^{\times}_{f}) \boldsymbol{V}_{f} \end{aligned} ∂Vf∂f6=[hfT(rf×1N)](rf×)Tprf+(hfTprf)[−(rf×)21N]+[hfT(Vf×1N)](rf×)TpVf+(hfTpVf)(rf×1N×+1N×rf×)Vf
∂ f 6 ∂ p V f = [ h f T ( V f × 1 N ) ] h f \frac{\partial f_{6}}{\partial \boldsymbol{p}_{Vf}} = \lbrack \boldsymbol{h}^{T}_{f}(\boldsymbol{V}_{f}\times \boldsymbol{1}_{N})\rbrack \boldsymbol{h}_{f} ∂pVf∂f6=[hfT(Vf×1N)]hf
∂ f 6 ∂ p r f = [ h f T ( r f × 1 N ) ] h f \frac{\partial f_{6}}{\partial \boldsymbol{p}_{rf}} = \lbrack \boldsymbol{h}^{T}_{f}(\boldsymbol{r}_{f}\times \boldsymbol{1}_{N})\rbrack \boldsymbol{h}_{f} ∂prf∂f6=[hfT(rf×1N)]hf
计算雅克比矩阵
计算雅克比矩阵,用于牛顿迭代法求解协态变量初值,过程跟参考文献[2]方法相同。考虑到完整性,在下面列出推导过程
定义
U
T
=
[
S
T
λ
T
]
{U}^{T}=\left[S^{T}\quad \lambda^{T}\right]
UT=[STλT],
J
T
=
[
I
c
T
(
τ
)
I
s
T
(
τ
)
]
{J}^{T}=\left[I_{c}^{T}(\tau)\quad I_{s}^{T}(\tau)\right]
JT=[IcT(τ)IsT(τ)],其中
τ
=
t
−
t
i
\tau=t-t_{i}
τ=t−ti,则有下式成立
d
U
(
t
i
+
τ
)
=
B
(
τ
)
d
U
(
t
i
)
,
d
U
T
(
t
0
)
=
[
0
d
λ
0
T
]
d {U}\left(t_{i}+\tau\right)=B(\tau) d{U}\left(t_{i}\right) ,\quad d{U}^{T}\left(t_{0}\right)=\left[ \begin{array}{ll}{0} & {d \lambda_{0}^{T}}\end{array}\right]
dU(ti+τ)=B(τ)dU(ti),dUT(t0)=[0dλ0T]
其中
B
(
τ
)
=
[
Ω
Γ
d
J
(
τ
)
d
λ
(
t
i
)
0
Ω
]
=
[
Ω
Γ
(
τ
)
[
d
I
c
/
d
λ
(
t
i
)
d
I
s
/
d
λ
(
t
i
)
]
0
Ω
]
B(\tau)=\left[ \begin{array}{cc}{\Omega} & {\Gamma \frac{d \boldsymbol{J}(\tau)}{d \boldsymbol{\lambda}\left(t_{i}\right)}} \\ \boldsymbol{0} & {\Omega}\end{array}\right]= \begin{bmatrix} \Omega & \Gamma(\tau)\begin{bmatrix} dI_{c}/{d}\lambda(t_{i})\\ {dI_{s}}/{d}\lambda(t_{i})\end{bmatrix}\\ \boldsymbol{0} & \Omega \end{bmatrix}
B(τ)=[Ω0Γdλ(ti)dJ(τ)Ω]=⎣⎡Ω0Γ(τ)[dIc/dλ(ti)dIs/dλ(ti)]Ω⎦⎤
K ( τ ) = cos ( τ ) T ( τ ) ∥ p V ( τ ) ∥ [ I 3 − p V ( τ ) ( p V ( τ ) ) T ∥ p V ( τ ) ∥ 2 ] [ cos ( τ ) I 3 sin ( τ ) I 3 ] K(\tau)=\frac{\cos(\tau)T(\tau)}{\lVert \boldsymbol{p}_{V}(\tau)\rVert}\lbrack {I}_{3} - \frac{\boldsymbol{p}_{V}(\tau)({\boldsymbol{p}_{V}(\tau)})^{T}}{{\lVert \boldsymbol{p}_{V}(\tau)\rVert}^{2}}\rbrack \lbrack \cos(\tau){I}_{3} \enspace \sin(\tau){I}_{3}\rbrack K(τ)=∥pV(τ)∥cos(τ)T(τ)[I3−∥pV(τ)∥2pV(τ)(pV(τ))T][cos(τ)I3sin(τ)I3]
d I c ( τ ) d λ ( t i ) = τ [ 7 K ( 0 ) + 32 K ( δ ) + 12 K ( 2 δ ) + 32 K ( 3 δ ) + 7 K ( 4 δ ) ] 90 \frac{d{I}_{c}(\tau)}{d{\lambda}(t_{i})} = \frac{\tau \lbrack 7{K}(0) + 32{K}(\delta) + 12{K}(2\delta) + 32{K}(3\delta) + 7{K}(4\delta)\rbrack}{90} dλ(ti)dIc(τ)=90τ[7K(0)+32K(δ)+12K(2δ)+32K(3δ)+7K(4δ)]
d I s ( τ ) d λ ( t i ) = τ [ 32 K ( δ ) tan ( δ ) + 12 K ( 2 δ ) tan ( 2 δ ) + 32 K ( 3 δ ) tan ( 3 δ ) + 7 K ( 4 δ ) tan ( 4 δ ) ] 90 \frac{d{I}_{s}(\tau)}{d{\lambda}(t_{i})} = \frac{\tau \lbrack 32{K}(\delta)\tan(\delta) + 12{K}(2\delta)\tan(2\delta) + 32{K}(3\delta)\tan(3\delta) + 7{K}(4\delta)\tan(4\delta)\rbrack}{90} dλ(ti)dIs(τ)=90τ[32K(δ)tan(δ)+12K(2δ)tan(2δ)+32K(3δ)tan(3δ)+7K(4δ)tan(4δ)]
Θ = ∏ i = 1 M − 1 B ( t i + 1 − t i ) \Theta = \prod^{M-1}_{i=1} B(t_{i+1}-t_{i}) Θ=i=1∏M−1B(ti+1−ti)
d Ψ = Ψ S d S f + Ψ λ d λ f = ( Ψ S Θ 12 + Ψ λ Θ 22 ) d λ 0 d{\Psi} = \Psi_{S}d{S}_{f} + \Psi_{\lambda}d{\lambda}_{f} = (\Psi_{S}\Theta_{12} + \Psi_{\lambda}\Theta_{22} )d{\lambda}_{0} dΨ=ΨSdSf+Ψλdλf=(ΨSΘ12+ΨλΘ22)dλ0
其中
Θ
12
\Theta_{12}
Θ12和
Θ
22
\Theta_{22}
Θ22是矩阵
Θ
\Theta
Θ的分块矩阵,因此雅克比矩阵
J
a
c
o
b
\mathrm{Jacob}
Jacob
J
a
c
o
b
=
d
Ψ
d
λ
0
=
Ψ
S
Θ
12
+
Ψ
λ
Θ
22
\mathrm{Jacob} = \frac{d{\Psi}}{d{\lambda}_{0}} = \Psi_{S}\Theta_{12} + \Psi_{\lambda}\Theta_{22}
Jacob=dλ0dΨ=ΨSΘ12+ΨλΘ22
2. 大气层内上升解
作者将大气层内上升问题转化为了两点边值问题(TPBVPs),并使用有限差分法求解两点边值问题。解两点边值问题之前先要推导状态方程和协态方程中涉及的相关方程。
过程约束的处理
处理不等式约束时,当约束
S
<
0
S < 0
S<0时,系统的协态变量微分方程取
−
∂
H
/
∂
x
-\partial{H}/\partial{\boldsymbol{x}}
−∂H/∂x当约束
S
=
0
S = 0
S=0时,才考虑将约束相关的项加入协态变量微分方程。
约束
S
1
=
q
α
−
Q
α
≤
0
S_{1}=q\alpha - Q_{\alpha} \leq 0
S1=qα−Qα≤0
当
S
1
=
0
S_{1} = 0
S1=0时
∂
q
∂
r
=
∂
(
1
2
ρ
V
r
2
)
∂
r
=
1
2
V
r
2
∂
ρ
∂
r
+
ρ
∂
V
r
∂
r
=
1
2
V
r
2
ρ
r
r
r
+
ρ
ω
ˉ
E
×
V
r
\begin{aligned} \frac{\partial q}{\partial\boldsymbol{r}} =& \frac{\partial(\frac{1}{2}\rho V^{2}_{r})} {\partial\boldsymbol{r}} = \frac{1}{2} V^{2}_{r} \frac{\partial\rho}{\partial{\boldsymbol{r}}} + \rho \frac{\partial V_{r}}{\partial{\boldsymbol{r}}} \\ =& \frac{1}{2} V^{2}_{r} \rho_{r} \frac{\boldsymbol{r}}{r} + \rho \bar{\omega}^{\times}_{E}\boldsymbol{V}_{r} \end{aligned}
∂r∂q==∂r∂(21ρVr2)=21Vr2∂r∂ρ+ρ∂r∂Vr21Vr2ρrrr+ρωˉE×Vr
cos α = 1 b T 1 V r ⇒ − sin α ∂ α ∂ V = ∂ ( 1 b T 1 V r ) ∂ V ⇒ − sin α ∂ α ∂ V = 1 V r ∂ ( 1 b T V r ) ∂ V + 1 b T V r ∂ 1 V r ∂ V ⇒ ∂ α ∂ V = 1 V r sin α ( cos α 1 V r − 1 b ) \begin{aligned} \cos{\alpha}=\boldsymbol{1}^{T}_{b}\boldsymbol{1}_{Vr} &\Rightarrow -\sin{\alpha}\frac{\partial{\alpha}}{\partial{\boldsymbol{V}}} = \frac{\partial{(\boldsymbol{1}^{T}_{b}\boldsymbol{1}_{Vr})}}{\partial{\boldsymbol{V}}} \\ &\Rightarrow -\sin{\alpha} \frac{\partial{\alpha}}{\partial{\boldsymbol{V}}} = \frac{1}{V_{r}} \frac{\partial{(\boldsymbol{1}^{T}_{b}\boldsymbol{V}_{r})}}{\partial{\boldsymbol{V}}} + \boldsymbol{1}^{T}_{b}\boldsymbol{V}_{r} \frac{\partial \frac{1}{V_{r}}}{\partial\boldsymbol{V}} \\ &\Rightarrow \frac{\partial{\alpha}}{\partial\boldsymbol{V}} = \frac{1}{V_{r}\sin{\alpha}}(\cos{\alpha} \boldsymbol{1}_{Vr} - \boldsymbol{1}_{b}) \end{aligned} cosα=1bT1Vr⇒−sinα∂V∂α=∂V∂(1bT1Vr)⇒−sinα∂V∂α=Vr1∂V∂(1bTVr)+1bTVr∂V∂Vr1⇒∂V∂α=Vrsinα1(cosα1Vr−1b)
∂ α ∂ r = ( ∂ V ∂ r ) T ∂ α ∂ V = ( ω ˉ E × ) T q V r sin α ( cos α 1 V r − 1 b ) \begin{aligned} \frac{\partial\alpha}{\partial\boldsymbol{r}} =& \left(\frac{\partial\boldsymbol{V}}{\partial\boldsymbol{r}}\right)^{T} \frac{\partial\alpha}{\partial\boldsymbol{V}} \\ =& (\bar{\omega}^{\times}_{E})^{T} \frac{q}{V_{r}\sin{\alpha}}(\cos{\alpha} \boldsymbol{1}_{Vr} - \boldsymbol{1}_{b}) \end{aligned} ∂r∂α==(∂r∂V)T∂V∂α(ωˉE×)TVrsinαq(cosα1Vr−1b)
∂ S 1 ∂ r = ∂ ( q α ) ∂ r = α ∂ q ∂ r + q ∂ α ∂ r = 1 2 α ρ r V r 2 r r + α ρ ω ˉ E × V r + ( ω ˉ E × ) T q V r sin α ( cos α 1 V r − 1 b ) \begin{aligned} \frac{\partial S_{1}}{\partial \boldsymbol{r}} =& \frac{\partial (q\alpha)}{\partial \boldsymbol{r}} = \alpha \frac{\partial{q}}{\partial{\boldsymbol{r}}} + q \frac{\partial{\alpha}}{\partial{\boldsymbol{r}}} \\ =&\frac{1}{2} \alpha \rho_{r} V^{2}_{r}\frac{\boldsymbol{r}}{r} + \alpha \rho \bar{\omega}^{\times}_{E} \boldsymbol{V}_{r} + (\bar{\omega}^{\times}_{E})^{T} \frac{q}{V_{r}\sin{\alpha}}(\cos{\alpha} \boldsymbol{1}_{Vr} - \boldsymbol{1}_{b}) \end{aligned} ∂r∂S1==∂r∂(qα)=α∂r∂q+q∂r∂α21αρrVr2rr+αρωˉE×Vr+(ωˉE×)TVrsinαq(cosα1Vr−1b)
∂ S 1 ∂ V = ∂ ( q α ) ∂ V = α ∂ q ∂ V + q ∂ α ∂ V = α ρ V r + q V r sin ( α ) ( cos α 1 V r − 1 b ) \begin{aligned} \frac{\partial S_{1}}{\partial \boldsymbol{V}} =& \frac{\partial (q\alpha)}{\partial \boldsymbol{V}} = \alpha \frac{\partial{q}}{\partial{\boldsymbol{V}}} + q \frac{\partial{\alpha}}{\partial{\boldsymbol{V}}}\\ =& \alpha \rho \boldsymbol{V}_{r} + \frac{q}{V_{r}\sin(\alpha)} (\cos{\alpha} \boldsymbol{1}_{Vr} - \boldsymbol{1}_{b}) \end{aligned} ∂V∂S1==∂V∂(qα)=α∂V∂q+q∂V∂ααρVr+Vrsin(α)q(cosα1Vr−1b)
其中, ρ r = ∂ ρ / ∂ r \rho_{r} = \partial{\rho}/\partial{r} ρr=∂ρ/∂r。
约束
S
2
=
T
−
T
m
a
x
≤
0
S_{2}=T - T_{max} \leq 0
S2=T−Tmax≤0
当
S
2
=
0
S_{2} = 0
S2=0时,发动机的阀门根据以下公式调节
η
=
T
m
a
x
m
(
t
)
g
0
/
T
v
a
c
\eta = T_{max}m(t)g_{0}/T_{vac}
η=Tmaxm(t)g0/Tvac
约束
S
3
=
q
−
q
m
a
x
≤
0
S_{3}=q - q_{max} \leq 0
S3=q−qmax≤0
文章中对约束
S
3
S_{3}
S3的处理那块儿,公式有点没弄懂!!当
S
3
=
0
S_{3} = 0
S3=0时,作者将动压约束转化为了对发动机阀门大小
η
\eta
η的约束,联立以下四个方程[1]
V
′
=
−
1
r
3
r
+
A
+
T
1
b
+
N
T
=
η
[
T
v
a
c
+
Δ
T
(
r
)
]
/
(
m
(
t
)
g
E
)
V
r
′
=
V
′
−
ω
ˉ
E
×
V
′
−
V
w
S
3
′
=
(
1
/
(
2
r
)
)
ρ
r
V
r
2
r
T
V
+
ρ
V
r
T
V
r
′
\begin{aligned} \boldsymbol{V}^{\prime} =& -\frac{1}{r^{3}}\boldsymbol{r} + \boldsymbol{A} + T\boldsymbol{1}_{b} + \boldsymbol{N} \\ T = &\eta \left[ T_{vac} + \Delta T(r)\right]/(m(t)g_{E}) \\ \boldsymbol{V}^{\prime}_{r} =& \boldsymbol{V}^{\prime} - \bar{\omega}_{E} \times \boldsymbol{V}^{\prime} - \boldsymbol{V}_{w} \\ S^{\prime}_{3} =& (1/(2r))\rho_{r}V^{2}_{r} \boldsymbol{r}^{T}\boldsymbol{V} + \rho \boldsymbol{V}^{T}_{r}\boldsymbol{V}^{\prime}_{r} \end{aligned}
V′=T=Vr′=S3′=−r31r+A+T1b+Nη[Tvac+ΔT(r)]/(m(t)gE)V′−ωˉE×V′−Vw(1/(2r))ρrVr2rTV+ρVrTVr′
可知
q
′
(
t
)
=
a
q
(
x
,
1
b
)
η
(
t
)
+
b
q
(
x
,
1
b
)
q^{\prime}(t) = a_{q}(\boldsymbol{x},\boldsymbol{1}_{b})\eta(t) + b_{q}(\boldsymbol{x},\boldsymbol{1}_{b})
q′(t)=aq(x,1b)η(t)+bq(x,1b)
其中
a
q
(
x
,
1
b
)
=
.
.
.
a_{q}(\boldsymbol{x},\boldsymbol{1}_{b}) = ...
aq(x,1b)=...
b q ( x , 1 b ) = . . . b_{q}(\boldsymbol{x},\boldsymbol{1}_{b}) = ... bq(x,1b)=...
另
δ
>
0
\delta > 0
δ>0则有
q
(
t
+
δ
)
≈
q
(
t
)
+
q
′
(
t
)
δ
\begin{aligned} q(t + \delta) \approx q(t) + q^{\prime}(t)\delta \end{aligned}
q(t+δ)≈q(t)+q′(t)δ
根据动压约束
q
(
t
+
δ
)
−
q
m
a
x
≤
0
q(t + \delta) - q_{max} \leq 0
q(t+δ)−qmax≤0
η
(
t
)
≤
q
max
−
q
(
t
)
−
b
q
δ
a
q
δ
≜
η
q
\begin{aligned} \eta(t) \leq \frac{q_{\max }-q(t)-b_{q} \delta}{a_{q} \delta} \triangleq \eta_{q} \end{aligned}
η(t)≤aqδqmax−q(t)−bqδ≜ηq
将由约束
S
2
S_{2}
S2求得的
η
\eta
η记为
η
p
r
b
\eta_{\mathrm{prb}}
ηprb,
η
\eta
η的最小值是
η
min
\eta_{\min }
ηmin,那么同时考虑约束2和3,
η
\eta
η的取值方法如下[1]
η
=
{
η
p
r
b
,
if
η
q
>
η
p
r
b
η
q
,
if
η
min
≤
η
q
≤
η
p
r
b
η
m
i
n
,
if
η
q
<
η
min
\begin{aligned} \eta = \left \{ \begin{array}{lll} {\eta_{\mathrm{prb}},} & {\text { if }} & {\eta_{q}>\eta_{\mathrm{prb}}} \\ {\eta_{q},} & {\text { if }} & {\eta_{\min } \leq \eta_{q} \leq \eta_{\mathrm{prb}}}\\ {\eta_{\mathrm{min}},} & {\text { if }} & {\eta_{q}<\eta_{\min }}\end{array}\right. \end{aligned}
η=⎩⎨⎧ηprb,ηq,ηmin, if if if ηq>ηprbηmin≤ηq≤ηprbηq<ηmin
密度、声速、推力对地心距求导
密度
已知是空气密度是关于运载器所在高度的函数,即
ρ
1
=
f
(
h
1
)
\rho_{1} = f(h_{1})
ρ1=f(h1)
ρ
r
=
∂
ρ
∂
r
=
∂
ρ
∂
(
1
+
h
)
=
∂
ρ
∂
h
(归一化方程)
\begin{aligned} \rho_r = \frac{\partial \rho}{\partial r} =& \frac{\partial \rho}{\partial(1 + h)} = \frac{\partial \rho}{\partial h} \end{aligned}\quad \text{(归一化方程)}
ρr=∂r∂ρ=∂(1+h)∂ρ=∂h∂ρ(归一化方程)
未归一化密度
ρ
1
=
ρ
0
ρ
\rho_{1} = \rho_{0}\rho
ρ1=ρ0ρ,单位
k
g
/
m
3
kg/m^{3}
kg/m3,未归一化运载器高度
h
1
=
R
0
h
/
1000
h_{1} = R_{0}h / 1000
h1=R0h/1000,单位
k
m
km
km
ρ
r
=
R
0
1000
ρ
0
∂
ρ
1
∂
h
1
\begin{aligned} \rho_{r} = \frac{R_{0}}{1000\rho_{0}} \frac{\partial \rho_{1}}{\partial h_{1}} \end{aligned}
ρr=1000ρ0R0∂h1∂ρ1
声速
声速是关于运载器所在高度的函数,即
V
s
1
=
f
(
h
1
)
V_{s1} = f(h_{1})
Vs1=f(h1),此
f
(
h
)
f(h)
f(h)非计算密度的
f
(
h
)
f(h)
f(h)。未归一化声速
V
s
1
=
R
0
g
E
V
s
V_{s1} = \sqrt{R_{0}g_{E}} V_{s}
Vs1=R0gEVs,单位
m
/
s
m/s
m/s,未归一化运载器高度
h
1
=
R
0
h
/
1000
h_{1} = R_{0}h / 1000
h1=R0h/1000,单位
k
m
km
km
∂
V
s
∂
r
=
R
0
1000
R
0
g
E
∂
V
s
1
∂
h
1
\begin{aligned} \frac{\partial V_{s}}{\partial r} = \frac{R_{0}}{1000\sqrt{R_{0}g_{E}}}\frac{\partial V_{s1}}{\partial h_{1}} \end{aligned}
∂r∂Vs=1000R0gER0∂h1∂Vs1
推力
文献中计算推力的公式
T
=
η
[
T
v
a
c
+
Δ
T
(
r
)
]
/
(
m
(
t
)
g
0
)
T = \eta[T_{vac} + \Delta T(r)] / (m(t)g_{0})
T=η[Tvac+ΔT(r)]/(m(t)g0),其中
Δ
T
(
r
)
\Delta T(r)
ΔT(r)怎么求呢?由文献[4]可知,在弹道计算中,通常采用下式计算推力
P
=
P
0
+
S
e
(
p
0
−
p
H
)
P = P_{0} + S_{e}(p_{0}-p_{H})
P=P0+Se(p0−pH)
其中,
P
P
P是发动机推力,
P
0
P_{0}
P0是发动机地面推力,
S
e
S_{e}
Se是喷口载面积,
p
0
p_{0}
p0是地面大气压,
p
H
p_{H}
pH是发动机所在高度大气压。因此
Δ
T
(
r
)
=
−
S
e
p
H
\Delta T(r) = -S_{e}p_{H}
ΔT(r)=−SepH,进而可得
T
r
=
∂
T
∂
r
=
−
η
S
e
m
(
t
)
g
E
∂
p
H
∂
r
T_{r} = \frac{\partial{T}}{\partial{r}} = -\frac{\eta S_{e}}{m(t)g_{E}} \frac{\partial p_{H}}{\partial{r}}
Tr=∂r∂T=−m(t)gEηSe∂r∂pH
求解最优体轴矢量 1 b ∗ \boldsymbol{1}^{*}_{b} 1b∗
在求
Y
0
Y_{0}
Y0过程中,我们已经求出一条满足终端约束的上升轨迹,根据该过程中求得的各量,求解
1
b
∗
\boldsymbol{1}^{*}_{b}
1b∗
计算
Φ
\Phi
Φ
根据以下公式可以求解
Φ
\Phi
Φ的绝对值[1]
Φ
=
1
p
V
T
1
V
r
\Phi=\mathbf{1}_{p_{V}}^{T} \mathbf{1}_{V_{r}}
Φ=1pVT1Vr
再根据文章中的方法确定 Φ \Phi Φ的正负。
用牛顿迭代法求解
α
\alpha
α
∂
H
/
∂
α
=
0
\partial{H}/\partial{\alpha} = 0
∂H/∂α=0可求得下式[1]
tan
(
Φ
−
α
)
(
T
−
A
+
N
α
)
−
(
A
α
+
N
)
=
0
\tan (\Phi-\alpha)\left(T-A+N_{\alpha}\right)-\left(A_{\alpha}+N\right)=0
tan(Φ−α)(T−A+Nα)−(Aα+N)=0
要使用牛顿迭代法求解
α
\alpha
α还需求解
∂
2
H
/
∂
α
2
{\partial^{2}H}/\partial{\alpha^{2}}
∂2H/∂α2
∂
2
H
∂
α
2
=
A
−
T
−
N
α
cos
2
(
Φ
−
α
)
+
tan
(
Φ
−
α
)
(
−
A
α
+
N
α
α
)
−
(
A
α
α
+
N
α
)
\frac{\partial^{2}H}{\partial{\alpha^{2}}} = \frac{A-T-N_{\alpha}}{\cos^{2}{(\Phi - \alpha)}} + \tan{(\Phi - \alpha)}(-A_{\alpha}+N_{\alpha\alpha}) - (A_{\alpha\alpha} + N_{\alpha})
∂α2∂2H=cos2(Φ−α)A−T−Nα+tan(Φ−α)(−Aα+Nαα)−(Aαα+Nα)
其中,
A
α
α
=
∂
2
A
/
∂
α
2
,
N
α
α
=
∂
2
N
/
∂
α
2
A_{\alpha\alpha}={\partial^{2}A}/\partial{\alpha^{2}},N_{\alpha\alpha}={\partial^{2}N}/\partial{\alpha^{2}}
Aαα=∂2A/∂α2,Nαα=∂2N/∂α2。仿真时,气动力
A
A
A和
N
N
N被拟合成攻角
α
\alpha
α的二次多项式形式,很容易求得气动力对攻角的一阶和二阶偏导数。求得
α
\alpha
α后,根据下式求解最优体轴矢量[1]
1
b
∗
=
(
sin
α
sin
Φ
)
1
p
V
+
[
cos
α
−
cos
Φ
cos
(
Φ
−
α
)
sin
2
Φ
]
1
V
r
\mathbf{1}_{b}^{*}=\left(\frac{\sin \alpha}{\sin \Phi}\right) \mathbf{1}_{p_{V}}+\left[\frac{\cos \alpha-\cos \Phi \cos (\Phi-\alpha)}{\sin ^{2} \Phi}\right] \mathbf{1}_{V_{r}}
1b∗=(sinΦsinα)1pV+[sin2Φcosα−cosΦcos(Φ−α)]1Vr
有限差分法解TPBVPs
两点边值问题中的动力学方程由运载器的动力学方程和协态变量微分方程组成[1]
r
′
=
V
V
′
=
−
1
r
3
r
+
A
+
T
1
b
+
N
\begin{aligned} \boldsymbol{r}^{\prime} =& \boldsymbol{V} \\ \boldsymbol{V}^{\prime} = -\frac{1}{r^{3}}\boldsymbol{r} + \boldsymbol{A} &+ T\boldsymbol{1}_{b} + \boldsymbol{N} \\ \end{aligned}
r′=V′=−r31r+AV+T1b+N
p r ′ = 1 r 3 p V − [ 3 a p v b r 4 − a p v n ( T r − A ρ r + 1 2 V r C ρ V s 2 C A M a c h ∂ V s ∂ r ) + a p v n ( N ρ r − 1 2 V r C ρ V s 2 C N M a c h ∂ V s ∂ r ) ] r r + C ρ ω ˉ E × { a p v b [ ( C A + 1 2 V r V s C A M a c h ) V r + 1 2 C A α V r 2 ∂ α ∂ V ] − a p v n [ ( C N + 1 2 V r V s C N M a c h ) V r + 1 2 C N α V r 2 ∂ α ∂ V ] } p V ′ = − p r + C ρ [ a p v b ( C A + 1 2 V r V s C A M a c h ) − a p v n ( C N + 1 2 V r V s C N M a c h ) + 1 2 ( a p v b C A α − a p v n C N α ) cos α sin α ] × V r − C ρ V r 2 sin α ( a p v b C A α − a p v n C N α ) 1 b \begin{aligned} \boldsymbol{p}^{\prime}_{r} =& \frac{1}{r^{3}}\boldsymbol{p}_{V} - \lbrack \frac{3a_{pvb}}{r^{4}} -a_{pvn} ( T_{r}-A_{\rho r} + \frac{1}{2V_{r}}C_{\rho}V^{2}_{s}C_{A_{Mach}}\frac{\partial V_{s}}{\partial r} ) \\ &+ a_{pvn}(N_{\rho r} - \frac{1}{2V_{r}}C_{\rho}V^{2}_{s}C_{N_{Mach}}\frac{\partial V_{s}}{\partial r})]\frac{\boldsymbol{r}}{r} \\ &+ C_{\rho}\bar{\omega}_{E} \times \{ a_{pvb} [(C_{A} + \frac{1}{2V_{r}}V_{s}C_{A_{Mach}}) \boldsymbol{V}_{r} + \frac{1}{2}C_{A_{\alpha}}V^{2}_{r} \frac{\partial \alpha}{\partial \boldsymbol{V}} ] \\ &- a_{pvn}[(C_{N} + \frac{1}{2V_{r}}V_{s}C_{N_{Mach}}) \boldsymbol{V}_{r} + \frac{1}{2}C_{N_{\alpha}}V^{2}_{r} \frac{\partial \alpha}{\partial \boldsymbol{V}} ] \} \\ \boldsymbol{p}^{\prime}_{V} =& -\boldsymbol{p}_{r} + C_{\rho}[a_{pvb}(C_{A} + \frac{1}{2V_{r}}V_{s}C_{A_{Mach}}) \\ &- a_{pvn}(C_{N} + \frac{1}{2V_{r}}V_{s}C_{N_{Mach}}) + \frac{1}{2}(a_{pvb}C_{A_{\alpha}} - a_{pvn}C_{N_{\alpha}})\frac{\cos{\alpha}}{\sin{\alpha}}] \\ & \times \boldsymbol{V}_{r} - \frac{C_{\rho}V_{r}}{2\sin{\alpha}}(a_{pvb}C_{A_{\alpha}} - a_{pvn}C_{N_{\alpha}})\boldsymbol{1}_{b} \end{aligned} pr′=pV′=r31pV−[r43apvb−apvn(Tr−Aρr+2Vr1CρVs2CAMach∂r∂Vs)+apvn(Nρr−2Vr1CρVs2CNMach∂r∂Vs)]rr+CρωˉE×{apvb[(CA+2Vr1VsCAMach)Vr+21CAαVr2∂V∂α]−apvn[(CN+2Vr1VsCNMach)Vr+21CNαVr2∂V∂α]}−pr+Cρ[apvb(CA+2Vr1VsCAMach)−apvn(CN+2Vr1VsCNMach)+21(apvbCAα−apvnCNα)sinαcosα]×Vr−2sinαCρVr(apvbCAα−apvnCNα)1b
其中,
ρ
r
=
∂
ρ
/
∂
r
,
T
r
=
∂
T
/
∂
r
,
C
ρ
=
ρ
0
ρ
S
r
e
f
R
0
/
m
(
t
)
\rho_{r}=\partial\rho/\partial r, T_{r}=\partial T/\partial r, C_{\rho}=\rho_{0}\rho S_{ref}R_{0}/m(t)
ρr=∂ρ/∂r,Tr=∂T/∂r,Cρ=ρ0ρSrefR0/m(t),并且有
A
ρ
r
=
V
r
2
S
r
e
f
R
0
ρ
0
C
A
ρ
r
2
m
(
t
)
,
N
ρ
r
=
V
r
2
S
r
e
f
R
0
ρ
0
C
N
ρ
r
2
m
(
t
)
A_{\rho r} = \frac{V^2_{r}S_{ref}R_{0}\rho_{0}C_{A}\rho_{r}}{2m(t)}, N_{\rho r} = \frac{V^2_{r}S_{ref}R_{0}\rho_{0}C_{N}\rho_{r}}{2m(t)}
Aρr=2m(t)Vr2SrefR0ρ0CAρr,Nρr=2m(t)Vr2SrefR0ρ0CNρr
C A α = ∂ C A ∂ α , C N α = ∂ C N ∂ α , C A M a c h = ∂ C A ∂ M a c h C_{A_{\alpha}} = \frac{\partial C_{A}}{\partial \alpha}, C_{N_{\alpha}} = \frac{\partial C_{N}}{\partial \alpha}, C_{A_{Mach}} = \frac{\partial C_{A}}{\partial Mach} CAα=∂α∂CA,CNα=∂α∂CN,CAMach=∂Mach∂CA
C N M a c h = ∂ C N ∂ M a c h , a p v b = p V T 1 b = p V cos ( Φ − α ) C_{N_{Mach}} = \frac{\partial C_{N}}{\partial Mach}, a_{pvb} = \boldsymbol{p}^{T}_{V}\boldsymbol{1}_{b} = p_{V}\cos{(\Phi - \alpha)} CNMach=∂Mach∂CN,apvb=pVT1b=pVcos(Φ−α)
a p v n = p V T 1 n = p V sin ( Φ − α ) a_{pvn} = \boldsymbol{p}^{T}_{V}\boldsymbol{1}_{n} = p_{V}\sin{(\Phi - \alpha)} apvn=pVT1n=pVsin(Φ−α)
∂ α ∂ V = 1 V r sin α ( cos α 1 V r − 1 b ) \frac{\partial \alpha}{\partial \boldsymbol{V}} = \frac{1}{V_{r}\sin{\alpha}}(\cos{\alpha \boldsymbol{1}_{Vr}} - \boldsymbol{1}_{b}) ∂V∂α=Vrsinα1(cosα1Vr−1b)
当加入约束
S
1
=
q
α
−
Q
α
=
0
S_{1}=q\alpha - Q_{\alpha} = 0
S1=qα−Qα=0后,协态方程
p
′
=
−
∂
H
∂
x
−
λ
q
α
∂
S
1
∂
x
\begin{aligned} \boldsymbol{p}^{\prime} = -\frac{\partial H}{\partial \boldsymbol{x}} - \lambda_{q\alpha}\frac{\partial S_{1}}{\partial \boldsymbol{x}} \end{aligned}
p′=−∂x∂H−λqα∂x∂S1
初始条件
(
x
0
,
p
0
)
(\boldsymbol{x}_{0},\boldsymbol{p}_{0})
(x0,p0)已知,6个终端条件由入轨条件和最优控制理论求得的横截条件组成。
将时间分成相等的
M
M
M段,一共
M
+
1
M+1
M+1个节点,则每一段的长度
h
=
t
f
/
M
h = tf/M
h=tf/M。我们取
M
=
100
M = 100
M=100,那么两点边值问题就转换为如下方程组求解问题
E 0 = [ y 0 ( 1 : 3 ) y 0 ( 4 : 6 ) ] − [ r 0 V 0 ] E 1 = y 1 − y 0 − h f ( t 1 − 1 2 , ( y 1 + y 0 ) 2 ) E 2 = y 2 − y 1 − h f ( t 2 − 1 2 , ( y 2 + y 1 ) 2 ) . . . E 100 = y 100 − y 99 − h f ( t 100 − 1 2 , ( y 100 + y 99 ) 2 ) E 101 = Ψ ( y 100 ) \begin{aligned} E_{0} =& \begin{bmatrix} y_{0}(1:3) \\ y_{0}(4:6) \end{bmatrix} - \begin{bmatrix} \boldsymbol{r}_{0} \\ \boldsymbol{V}_{0} \end{bmatrix}\\ E_{1} =& y_{1} - y_{0} - h f(t_{1-\frac{1}{2}},\frac{(y_1+y_0)}{2}) \\ E_{2} =& y_{2} - y_{1} - h f(t_{2-\frac{1}{2}},\frac{(y_2+y_1)}{2}) \\ &... \\ E_{100} =& y_{100} - y_{99} - h f(t_{100-\frac{1}{2}},\frac{(y_{100}+y_{99})}{2}) \\ E_{101} =& {\Psi}(y_{100}) \end{aligned} \\ E0=E1=E2=E100=E101=[y0(1:3)y0(4:6)]−[r0V0]y1−y0−hf(t1−21,2(y1+y0))y2−y1−hf(t2−21,2(y2+y1))...y100−y99−hf(t100−21,2(y100+y99))Ψ(y100)
其中 y 0 ( 1 : 3 ) y_{0}(1:3) y0(1:3)表示 y 0 y_{0} y0向量的前三个元素组成的向量。记方程的解为 Y = [ y 0 T , y 1 T , y 2 T , . . . , y 100 T ] T Y = [y_{0}^{T},y_{1}^{T},y_{2}^{T},...,y_{100}^{T}]^{T} Y=[y0T,y1T,y2T,...,y100T]T,其中 y = [ r T , V T , p r T , p v T ] T y = [\boldsymbol{r}^{T}, \boldsymbol{V}^{T}, \boldsymbol{p}^{T}_{r},\boldsymbol{p}^{T}_{v}]^{T} y=[rT,VT,prT,pvT]T。这里需要注意的是前面的推导中我们用过 [ r T , V T , p v T , − p r T ] T [\boldsymbol{r}^{T}, \boldsymbol{V}^{T},\boldsymbol{p}^{T}_{v}, -\boldsymbol{p}^{T}_{r}]^{T} [rT,VT,pvT,−prT]T这种顺序。
数值方法求
∂
E
/
∂
Y
\partial{E} / \partial{Y}
∂E/∂Y
∂
E
∂
Y
=
[
.
.
.
]
1212
×
1212
=
[
∂
E
0
y
0
∂
E
0
y
1
.
.
.
∂
E
0
y
100
∂
E
1
y
0
∂
E
1
y
1
.
.
.
∂
E
1
y
100
.
.
.
∂
E
101
y
0
∂
E
101
y
1
.
.
.
∂
E
101
y
100
]
\begin{aligned} \frac{\partial{E}}{\partial{Y}} = [...]_{1212\times1212} = \begin{bmatrix} \frac{\partial{E_{0}}}{y_{0}} & \frac{\partial{E_{0}}}{y_{1}} & ... & \frac{\partial{E_{0}}}{y_{100}} \\ \frac{\partial{E_{1}}}{y_{0}} & \frac{\partial{E_{1}}}{y_{1}} & ... & \frac{\partial{E_{1}}}{y_{100}} \\ &... \\ \frac{\partial{E_{101}}}{y_{0}} & \frac{\partial{E_{101}}}{y_{1}} & ... & \frac{\partial{E_{101}}}{y_{100}} \end{bmatrix} \end{aligned}
∂Y∂E=[...]1212×1212=⎣⎢⎢⎢⎡y0∂E0y0∂E1y0∂E101y1∂E0y1∂E1...y1∂E101.........y100∂E0y100∂E1y100∂E101⎦⎥⎥⎥⎤
= [ [ I 6 , 0 ] 6 × 12 0 6 × 12 . . . . . . 0 6 × 12 − I 12 × 12 − h ∂ f ( t 1 − 1 2 , ( y 1 + y 0 ) 2 ) ∂ y 0 I 12 × 12 − h f ( , ) y 1 0 12 × 12 . . . 0 12 × 12 0 12 × 12 − I 12 × 12 − h ∂ f ( , ) ∂ y 1 I 12 × 12 − h f ( , ) y 2 . . . 0 12 × 12 . . . . . . . . . . . . . . . 0 12 × 12 . . . 0 12 × 12 − I 12 × 12 − h ∂ f ( , ) ∂ y 99 I 12 × 12 − h f ( , ) y 100 0 6 × 12 . . . . . . 0 6 × 12 ∂ Ψ ∂ y 100 ] \begin{aligned} = \begin{bmatrix} [I_{6},\mathbf{0}]_{6\times12} & \mathbf{0}_{6\times12} & ... & ... & \mathbf{0}_{6\times12} \\ -I_{12\times12}-h\frac{\partial{f(t_{1-\frac{1}{2}},\frac{(y_1+y_0)}{2})}}{\partial{y_{0}}} & I_{12\times12}-h\frac{f(,)}{y_{1}} & \boldsymbol{0}_{12\times12} & ... & \boldsymbol{0}_{12\times12} \\ \boldsymbol{0}_{12\times12} & -I_{12\times12}-h\frac{\partial{f(,)}}{\partial{y_{1}}} & I_{12\times12}-h\frac{f(,)}{y_{2}} & ... & \mathbf{0}_{12\times12} \\ ... & ... & ... & ... & ... & \\ \mathbf{0}_{12\times12} & ... & \mathbf{0}_{12\times12} & -I_{12\times12}-h\frac{\partial{f(,)}}{\partial{y_{99}}} & I_{12\times12}-h\frac{f(,)}{y_{100}}\\ \mathbf{0}_{6\times12} & ... & ... & \mathbf{0}_{6\times12} & \frac{\partial{\mathbf{\Psi}}}{\partial{y_{100}}} \end{bmatrix} \end{aligned} =⎣⎢⎢⎢⎢⎢⎢⎢⎢⎡[I6,0]6×12−I12×12−h∂y0∂f(t1−21,2(y1+y0))012×12...012×1206×1206×12I12×12−hy1f(,)−I12×12−h∂y1∂f(,)............012×12I12×12−hy2f(,)...012×12...............−I12×12−h∂y99∂f(,)06×1206×12012×12012×12...I12×12−hy100f(,)∂y100∂Ψ⎦⎥⎥⎥⎥⎥⎥⎥⎥⎤
其中, f ( , ) f(,) f(,)是对应时刻 f ( t k − 1 2 , ( y k + y k − 1 ) 2 ) f(t_{k-\frac{1}{2}},\frac{(y_{k}+y_{k-1})}{2}) f(tk−21,2(yk+yk−1))的简写, ∂ Ψ ∂ y 100 \frac{\partial{\mathbf{\Psi}}}{\partial{y_{100}}} ∂y100∂Ψ之前有个小节推导过,是有解析形式的,除此以外其它的偏导数由数值的方法计算。
∂ f ( t k − 1 2 , ( y k + y k − 1 ) 2 ) ∂ y k = ∂ f ( t k − 1 2 , ( y k + y k − 1 ) 2 ) ∂ ( ( y k + y k − 1 ) 2 ) ∂ ( ( y k + y k − 1 ) 2 ) ∂ y k \frac{\partial{f(t_{k-\frac{1}{2}},\frac{(y_k+y_{k-1})}{2})}}{\partial{y_{k}}} = \frac{\partial{f(t_{k-\frac{1}{2}},\frac{(y_k+y_{k-1})}{2})}}{\partial{(\frac{(y_k+y_{k-1})}{2}})} \frac{\partial{(\frac{(y_k+y_{k-1})}{2}})}{\partial{y_{k}}} ∂yk∂f(tk−21,2(yk+yk−1))=∂(2(yk+yk−1))∂f(tk−21,2(yk+yk−1))∂yk∂(2(yk+yk−1))
高斯消元法求解搜索方向
d
j
\boldsymbol{d}_{j}
dj
[
∂
E
(
Y
j
−
1
)
∂
Y
]
d
j
=
−
E
(
Y
j
−
1
)
\begin{aligned} \left[ \frac{\partial{E}(Y_{j-1})}{\partial{Y}} \right] \boldsymbol{d}_{j} = -E(Y_{j-1}) \end{aligned}
[∂Y∂E(Yj−1)]dj=−E(Yj−1)
由于 ∂ E ∂ Y \frac{\partial{E}}{\partial{Y}} ∂Y∂E的稀疏特性,我们可以用高斯消元法求解 d j \boldsymbol{d}_{j} dj
参考文献
[1] Lu P , Sun H , Tsai B . Closed-Loop Endoatmospheric Ascent Guidance[J]. Journal of Guidance, Control, and Dynamics, 2003, 26(2):283-294.
[2] Calise A J , Melamed N , Lee S . Design and Evaluation of a Three-Dimensional Optimal Ascent Guidance Algorithm[J]. Journal of Guidance, Control, and Dynamics, 1998, 21(6):867-875.
[3] Mcadoo S F J , Jezewski D J , Dawkins G S . Development of a method for optimal maneuver analysis of complex space missions[J]. Nasa Sti/recon Technical Report N, 1975, 75.
[4] 王志刚, 施志佳. 远程火箭与卫星轨道力学基础[M].西安:西北工业大学出版社,2006.
[5] 傅瑜. 升力式天地往返飞行器自主制导方法研究[D]. 哈尔滨工业大学, 2012.