# Analytic Derivation of Ascent Trajectories and Performance of Launch Vehicles
## 5 Guidance  
The gravity-turn trajectory constrains the guidance and should be abandoned if possible; the relevant condition is the factor \(q\,\alpha\), where \(q=\frac{1}{2}\,\rho\,V^{2}\) is the dynamical pressure and \(\alpha\) is the angle of attack. This factor must be below a limit \([q\,\alpha]_{max}\) which is peculiar to any launcher and can be satisfied by the gravity-turn (\(\alpha=0\)) trajectory. As the altitude increases, the atmospheric density \(\rho\) decreases exponentially, so at a certain point of the flight the condition of \(q\,\alpha\) disappears and a different guidance can be applied. The guidance applied here is based on: (A) a possible coasting arc, and (B) thrust along the horizontal direction.  
Generally, a coasting arc is performed after the burn out of the stage \(N-1\) of an \(N\) stage launcher to increase the altitude at the cost of a moderate decrease in velocity. After the coasting arc, the launcher is close to the target altitude \(h_{f}\), whereas the required velocity \(V_{req}\) must be gained. This velocity basically has the horizontal direction \(\hat{\theta}=\cos\gamma\,\hat{V}+\sin\gamma\,\hat{l}\), then the thrust direction is along \(\hat{\theta}\) during the N-stage boost.  
With the above guidance scheme, the full launcher trajectory depends on two parameters: the flight-path angle \(\gamma_{f}\) at the end of the gravity-turn phase and the duration \(t_{c}\) of the coasting arc. The two parameters \((\gamma_{f},t_{c})\) are introduced into an iterative routine (such as the Matlab routine fsolve.m) and updated to set the errors on the final altitude and velocity \((h(t_{b})-h_{f},V(t_{b})-V_{req})\) to zero, where \(t_{b}\) is the N-stage burn-out time.  
Let us consider a three-stage rocket as an example. The first two stages are in gravity turn with a prescribed final flight-path angle \(\gamma_{2f}\), then a costing arc of duration \(t_{c}\) is performed. Finally the third-stage boost is applied with horizontal thrust direction.  
The Matlab routine fsolve.m is used to update the values \((\gamma_{2f},t_{c})\), for instance, to achieve the polar circular orbit of altitude \(h_{f}=650\) km from a launch site with a latitude of 30 deg N. The required velocity is then equal to \(V_{R}=7542\) m/s.  
The launcher has the parameters reported in Table 3. The Tziolkowski velocity is equal to \(\Delta V_{Tz}=9743\) m/s. From the data of Table 3 it is possible to derive the mass parameters of each stage \(m_{s_{1}},m_{p_{1}},m_{s_{2}},m_{p_{2}},m_{s_{3}},m_{p_{3}}\) and the mass of each substage \(M_{2}\), \(M_{3}\), see Equations (A1) and (A2) in Appendix A. From the values \(n_{0_{1}}\), \(n_{0_{2}}\), \(n_{0_{3}}\) and \(M_{1}\), \(M_{2}\), \(M_{3}\), it is possible to derive the propellant mass rates \(\dot{m_{1}}\), \(\dot{m_{2}}\), \(\dot{m_{3}}\), hence the burn times \(t_{b_{i}}=\frac{m_{p_{1}}}{\dot{m_{1}}},i=1,3\). For any fixed \(\gamma_{2f}\), the Equations (21)-(23) give the state of the launcher at the end of the second stage where the gravity-turn phase ends. After a coasting of duration \(t_{c}\), the third stages thrust the rocket up to the burn time \(t_{b_{3}}\); the final altitude and velocity are compared with the required \((h_{f},V_{R})\). The parameters \(\gamma_{2f}\), \(t_{c}\) are updated in order to match the required final orbit conditions. After few iterations, the routine finds the following parameters to reach the required orbit: \(\gamma_{2f}=26.5\) deg, \(t_{c}=340\) s.