Thrust Vector Control and Pitch Stability

From gimbal torque and rigid-body pitch dynamics to closed-loop tracking, actuator limitations, aerodynamic instability, uncertainty and numerical validation.

A controller must stabilize the vehicle, not just generate a large moment.

Why thrust vector control matters

A single-engine launch vehicle climbs through the atmosphere. Its engine gimbals to steer the thrust line relative to the instantaneous centre of mass (CG). A pitch disturbance, aerodynamic moment, actuator delay or CG shift can cause pointing error or unstable oscillation.

Mission objective: Track a prescribed pitch reference, reject disturbances, respect gimbal angle and slew-rate limits, and maintain stability over changing flight conditions.

This educational model considers planar pitch motion. Positive pitch angle \(\theta\), pitch rate \(\omega\), gimbal angle \(\delta\) and TVC torque share a chosen positive convention. In a real rocket the sign depends on engine location and axis definitions.

Model boundaries: rigid body, one effective engine, no bending/slosh, no full 6-DOF trajectory coupling, no lateral translation. Aerodynamic stability is represented by a linearized pitching moment. The simulation is for conceptual design and validation exercises, not flight qualification.

One problem, eleven investigations

A · TVC moment
Exact and small-angle gimbal moment
B · Open loop
Disturbance-driven pitch drift
C · PD controller
Tracking, overshoot and settling
D · Gain tuning
Natural frequency and damping
E · Saturation
Angle and slew limits
F · Actuator lag
Bandwidth and phase delay
G · Aerodynamics
Restoring versus destabilizing moments
H · Variable inertia
Mass depletion and CG shift
I · Pitch program
Time-varying command tracking
J · Uncertainty
Sensitivity and Monte Carlo
K · Convergence
Timestep and reference solution

Gimbal geometry and pitching moment

For a thrust force \(T\) with perpendicular moment arm \(l\) at zero gimbal, \(M_{TVC}=Tl\sin\delta\). For small \(\delta\) in radians, \(M_{TVC}\approx Tl\delta\). The torque-to-angular-acceleration relationship is \(\dot\omega=M/I_{yy}\).

\[M_{TVC}=Tl\sin\delta,\qquad \alpha=\frac{M_{TVC}}{I_{yy}}\]
Exact moment—
Linearized moment—
Angular acceleration—
Linearization error—
Interpretation: doubling thrust or moment arm doubles torque, but doubling inertia halves angular acceleration. The small-angle error increases with gimbal magnitude.

Open-loop pitch drift

With no feedback, a constant disturbance torque produces increasing pitch rate and quadratic angle drift for constant inertia. Compare the numerical response with the analytical solution.

\[\omega(t)=\omega_0+\frac{M_d}{I}t,\quad\theta(t)=\theta_0+\omega_0t+\frac{M_d}{2I}t^2\]
Final pitch—
Final pitch rate—
Numerical / analytical error—
Control mode—

Closed-loop PD attitude control

The proportional term corrects attitude error, while derivative feedback damps angular velocity. Commanded gimbal is obtained by dividing desired torque by the small-angle control effectiveness \(Tl\).

\[M_c=K_p(\theta_r-\theta)-K_d\omega,\quad \delta_c\approx\frac{M_c}{Tl}\]

Controller gains are dimensional; angles are converted to radians internally. A zero-rate reference is assumed here. All inputs below are shared with Parts D–K.

Final pitch error—
Peak pitch error—
Peak actual gimbal—
Settling time—

Settling time means entering and remaining inside ±0.2° of the commanded pitch for the remainder of the run; otherwise it is reported as not reached.

Gain tuning: frequency, damping and stability

Neglecting aerodynamic moments and actuator dynamics, the linearized closed-loop equation is \(I\ddot e+K_d\dot e+K_pe=0\), for constant reference. Its natural frequency and damping ratio are:

\[\omega_n=\sqrt{\frac{K_p}{I}},\qquad\zeta=\frac{K_d}{2\sqrt{IK_p}}\]
Natural frequency—
Damping ratio—
Nominal peak error—
Interpretation—
These analytical formulas apply to the ideal linearized rigid-body model. Gimbal saturation, actuator lag and destabilizing aerodynamics change the actual closed-loop behavior.

Gimbal saturation and slew-rate limiting

A commanded torque may exceed the engine gimbal authority. In addition, the actuator cannot rotate instantaneously. Compare ideal actuation against the limited actuator with exactly the same gains.

\[|\delta|\le\delta_{max},\qquad |\dot\delta|\le r_{max}\]
Limited peak error—
Time at angle limit—
Rate-limited steps—
Ideal peak gimbal—

The ideal case has unlimited gimbal and zero actuator lag. The constrained case respects both angle and rate limits.

Actuator lag and sample/hold delay

Real gimbals have finite bandwidth. A first-order actuator is modeled as \(\tau_a\dot\delta=\delta_{target}-\delta\), with additional rate limiting. Compare multiple lag constants.

\[\tau_a\dot\delta=\delta_{target}-\delta\]
Current lag—
Final pitch error—
Peak gimbal—
Stability flag—
Actuator lag can reduce damping margin and cause oscillation. This simple first-order model does not capture structural flexibility or engine-gimbal coupling.

Aerodynamic restoring and destabilizing moments

Linearize the aerodynamic pitch moment near a chosen flight condition as \(M_a=K_a\theta-C_a\omega\). In this sign convention, positive \(K_a\) is destabilizing; negative \(K_a\) is restoring. In a more detailed model, these coefficients depend on dynamic pressure, Mach number, aerodynamic derivatives and the CG–centre-of-pressure relationship.

\[I\ddot\theta=M_{TVC}+K_a\theta-C_a\dot\theta+M_d\]
Aero stiffness—
Effective stiffness Kp−Ka—
Final pitch error—
Status—

This experiment holds aerodynamic coefficients constant; it does not simulate a full changing dynamic-pressure ascent.

Propellant depletion, inertia and CG movement

As propellant burns, pitch inertia and the engine-to-CG lever arm may change. Use illustrative linear profiles and compare against a constant-geometry vehicle. The profiles are pedagogical assumptions, not a structural mass-property model.

Final inertia—
Final lever arm—
Variable case peak error—
Constant case peak error—

Pitch-command program tracking

Rather than stabilizing a fixed pitch, command a smooth transition between two pitch attitudes. A cubic smoothstep avoids instantaneous command jumps; feedforward desired rate can be included in the derivative term.

\[s=3u^2-2u^3,\quad \theta_r(t)=\theta_{start}+(\theta_{end}-\theta_{start})s\]
Maximum tracking error—
Final tracking error—
Peak gimbal—
Transition duration—

This is an attitude-reference program only, not a coupled gravity-turn trajectory or guidance optimizer.

Sensitivity and Monte Carlo disturbance study

Explore robustness to inertia, thrust, lever arm and disturbance uncertainty. A reproducible seeded pseudo-random sequence generates the same cases on repeated runs.

Cases—
Worst peak error—
Worst final error—
Settled cases—

Uniform bounded perturbations are used, not Gaussian 1σ uncertainties. This is a sensitivity demonstration rather than a probabilistic flight reliability estimate.

Numerical convergence and independent checks

Repeat the same physical case with progressively smaller RK4 integration timesteps. Compare the final pitch against a fine-step reference. The actuator controller is modeled continuously in this exercise; discrete flight-computer sampling is not included.

Step [s]Final pitch [deg]Difference from fine reference [deg]
Verification checklist: zero gimbal implies zero TVC torque; small-angle and exact torque agree near zero; constant-torque open-loop motion matches the analytical solution; numerical refinement converges; physical units remain consistent; and angle/rate limits are never exceeded in the constrained model.

Python and MATLAB reference implementations

These minimal independent reference examples reproduce the simplified constant-inertia, linearized PD pitch dynamics. They intentionally omit actuator lag and aerodynamic terms, which must be added for full comparison with the webpage's nonlinear model.

import numpy as np
from scipy.integrate import solve_ivp
import matplotlib.pyplot as plt
I, T, l = 80000., 1e6, 4.
Kp, Kd = 160000., 160000.
limit = np.deg2rad(6)
def rhs(t, y):
    theta, omega = y
    desired_torque = -Kp*theta-Kd*omega
    delta = np.clip(desired_torque/(T*l), -limit, limit)
    return [omega, T*l*np.sin(delta)/I]
t = np.linspace(0,18,1801)
sol = solve_ivp(rhs,(0,18),[np.deg2rad(5),0],t_eval=t,rtol=1e-9,atol=1e-11)
plt.plot(sol.t,np.rad2deg(sol.y[0]))
plt.xlabel('Time [s]');plt.ylabel('Pitch [deg]');plt.grid();plt.show()

What a launch-vehicle GNC engineer should conclude

Control authority

Thrust and lever arm determine how much pitching moment a gimbal can deliver.

Closed-loop stability

Controller gains must be assessed together with inertia, aerodynamic derivatives, actuator bandwidth and limits.

Flight relevance

Rigid-body pitch control is only the beginning; bending, slosh, sensor noise, guidance and six-degree-of-freedom coupling matter in actual launch vehicles.

Final insight: More aggressive gains are not always better. Robust TVC design balances tracking, damping, control authority and uncertainty.