Jump to content

Gravity Turn Maneuver

From mintOC
Gravity Turn Maneuver
State dimension: 1
Differential states: 5
Continuous control functions: 1
Path constraints: 11
Interior point inequalities: 2
Interior point equalities: 7


The gravity turn or zero lift turn is a common maneuver used to launch spacecraft into orbit from bodies that have non-negligible atmospheres. The goal of the maneuver is to minimize atmospheric drag by always orienting the vehicle along the velocity vector. In this maneuver, the vehicle's pitch is determined solely by the change of the velocity vector through gravitational acceleration and thrust. The goal is to find a launch configuration and thrust control strategy that achieves a specific orbit with minimal fuel consumption.

Physical description and model derivation

For the purposes of this model, we start with the following ODE system proposed by Culler et. al. in [Culler1957]The entry doesn't exist yet.:

v˙=Fmgcosβvβ˙=gsinβ

where

v

is the speed of the vehicle,

g

is the gravitational acceleration at the vehicle's current altitude,

F

is the accelerating force and

β

is the angle between the vertical and the vehicle's velocity vector. In the original version of the model, the authors neglect aspects of the problem:

  • Variation of g over altitude
  • Decrease of vehicle mass due to fuel consumption
  • Curvature of the surface
  • Atmospheric drag

Changes in gravitational acceleration

To account for changes in g, we make the following substitution:

g=g0(r0r0+h)2

where

g0

is the gravitational acceleration at altitude zero and

r0

is the distance of altitude zero from the center of the reference body.

Decrease in vehicle mass

To account for changes in vehicle mass, we consider m a differential state with the following derivative:

m˙=FIspg0

where

Isp

is the specific impulse of the vehicle's engine. Specific impulse is a measure of engine efficiency. For rocket engines, it directly correlates with the engine's exhaust velocity and may vary with atmospheric pressure, velocity, engine temperature and combustion dynamics. For the purposes of this model, we will assume it to be constant. The vehicle's fuel reserve is modelled by two parameters:

m0

denotes the launch mass (with fuel) and

m1

denotes the dry mass (without fuel).

Curvature of the reference body's surface

To accomodate the reference body's curvature, we introduce an additional differential state θ which represents the change in the vehicle's polar angle with respect to the launch site. The derivative is given by

θ˙=vsinβr0+h.

Note that the vertical changes as the vehicle moves around the reference body meaning that the derivative of

β

must be changed as well:

β˙=gsinβvvsinβr0+h.

Atmospheric drag

To model atmospheric drag, we assume that the vehicles draf coefficient cd is constant. The drag force is given by

Fdrag=12ρAcdv2

where

ρ

is the density of the atmosphere and

A

is the vehicle's reference area. We assume that atmospheric density decays exponentially with altitude:

ρ=ρ0ehH

where

ρ0

is the atmospheric density at altitude zero and

H

is the scale height of the atmosphere. The [drag force] is introduced into the acceleration term:

v˙=FFdragmgcosβ.

Note that if the vehicle is axially symmetric and oriented in such a way that its symmetry axis is parallel to the velocity vector, it does not experience any lift forces. This model is simplified. It does not account for changes in temperature and atmospheric composition with altitude. Also,

cd

varies with fluid viscosity and vehicle velocity. Specifically, drastic changes in

cd

occur as the vehicle breaks the sound barrier. This is not accounted for in this model.

Mathematical formulation

The resulting optimal control problem is given by

minT,m,v,β,h,θ,um0m(T)s.t.m˙=FmaxIspg0u,v˙=(F12ρ0ehHAcdv2)1mg0(r0r0+h)2cosβ,β˙=g0(r0r0+h)2sinβvvsinβr0+h,h˙=vcosβ,θ˙=vsinβr0+h,m(0)=m0,v(0)=ε,β(0)[0,π2],h(0)=0,θ(0)=0,β(T)=β^,h(T)=h^,v(T)=v^,m(t)[m1,m0]t[0,T],v(t)εt[0,T],β(t)[0,π]t[0,T],h(t)0t[0,T],θ(t)0t[0,T],u(t)[0,1]t[0,T],T[Tmin,Tmax].

where

Fmax

is the maximum thrust of the vehicle's engine and

ε

is a small number that is strictly greater than zero. The differential states of the problem are

m,v,β,h,θ

while

u

is the control function

Parameters

For testing purposes, the following parameters were chosen:


m0=11.3tm1=1.3tIsp=300sFmax=0.6MNcd=0.021A=1m2g0=9.81103kms2r0=600.0kmH=5.6kmρ0=1.2230948554874kgm3β^=π2v^=2.287kmsh^=75kmTmin=120sTmax=600sε=106kms

Reference solution

The reference solution was generated using a direct multiple shooting approach with 300 shooting intervals placed equidistantly along the variable-length time horizon. The resulting NLP was implemented using CasADi 2.4.2 using CVodes as an integrator and IPOPT as a solver. The exact code used to solve the problem alongside detailed solution data can be found under Gravity Turn Maneuver (Casadi). The solution achieves the desired orbit in T=338.042s spending m0m(T)=9.6508t of fuel. The launch angle is approximately β(0)=2.7786081986275378106. The downrange motion throughout the entire launch amounts to a change in polar angle of approximately θ(T)=0.338347434634006419.39.

Source Code

Model descriptions are available in

References

[Culler1957]The entry doesn't exist yet.