3.4.6Rocket Flight Mechanics
Mass properties — CG location, inertia tensor changing with propellant depletion
1,730 words8 min readdifficulty · medium1 backlinks
WHY do mass properties change at all?
WHAT is happening: Propellant is stored in tanks inside the vehicle. The engine ejects it out the nozzle. The remaining structure (dry mass) plus remaining propellant defines a new, lighter body every instant.
WHY it matters for flight:
- CG sets the moment arm for thrust misalignment, aero forces, and thrust-vector control (TVC).
- Inertia tensor sets how fast a given control torque rotates the vehicle ().
- Both move as fuel drains → a well-tuned autopilot at can be sluggish or unstable at .
Center of Gravity — derive it from scratch
WHY this definition? We want a single point where, if all the mass sat there, the net gravitational (and inertial) moment would be unchanged. Start from the requirement that the total moment of the weights about vanishes:
\;\Rightarrow\; \sum_i m_i \mathbf{r}_i = \mathbf{r}_{\text{cg}}\sum_i m_i.$$ Solve for $\mathbf{r}_{\text{cg}}$ → the formula above. *Why this step?* The zero-moment condition is literally the definition of "the balance point," so algebra just isolates it. ### Two-body decomposition (dry structure + propellant) A rocket is naturally two pieces: **dry mass** $m_d$ at fixed station $x_d$, and **propellant** $m_p(t)$ whose own centroid $x_p(t)$ shifts as the tank drains. $$x_{\text{cg}}(t) = \frac{m_d\,x_d + m_p(t)\,x_p(t)}{m_d + m_p(t)}$$ *Why this step?* Superposition: the CG of a composite body is the mass-weighted CG of its sub-bodies — because the defining integral is linear in $dm$. --- ## Inertia tensor — derive it from scratch > [!definition] Inertia tensor > $$\mathbf{I} = \int \big( (\mathbf{r}\!\cdot\!\mathbf{r})\,\mathbb{1} - \mathbf{r}\,\mathbf{r}^{\!\top}\big)\,dm$$ > Diagonal terms $I_{xx}=\int (y^2+z^2)\,dm$ (moments of inertia); off-diagonals $I_{xy}=-\int xy\,dm$ (products of inertia). **WHY this form?** Angular momentum is $\mathbf{L}=\int \mathbf{r}\times(\boldsymbol\omega\times\mathbf{r})\,dm$. Expand the triple product $\mathbf{r}\times(\boldsymbol\omega\times\mathbf{r}) = (\mathbf{r}\!\cdot\!\mathbf{r})\boldsymbol\omega - (\mathbf{r}\!\cdot\!\boldsymbol\omega)\mathbf{r}$. Factoring $\boldsymbol\omega$ out on the right forces exactly the tensor $\mathbf{I}$ so that $\mathbf{L}=\mathbf{I}\boldsymbol\omega$. *Why this step?* We *demand* a linear map $\boldsymbol\omega\mapsto\mathbf{L}$; the bracket is that map. > [!formula] Parallel-axis (Huygens–Steiner) theorem > To move inertia from the CG to a point offset by $\mathbf{d}$: > $$\mathbf{I}_{\text{P}} = \mathbf{I}_{\text{cg}} + M\big[(\mathbf{d}\!\cdot\!\mathbf{d})\mathbb{1} - \mathbf{d}\,\mathbf{d}^{\!\top}\big]$$ > Scalar version for one axis: $\;I_P = I_{\text{cg}} + M d^2.$ **Derivation:** Let $\mathbf{r}=\mathbf{r}' + \mathbf{d}$ with $\mathbf{r}'$ measured from CG. $$I_{xx}^P=\int\big((y'+d_y)^2+(z'+d_z)^2\big)dm.$$ Expand: the $y'^2+z'^2$ term gives $I_{xx}^{\text{cg}}$; the cross terms $2d_y\!\int y'dm$ vanish (**because $\int \mathbf{r}'\,dm=0$ by definition of CG** — *this is the key why!*); the $d_y^2+d_z^2$ term gives $M d^2$. QED. ### Composite inertia of the flying rocket Compute each sub-body's inertia **about its own CG**, then Steiner-shift each to the *vehicle* CG and add: $$\mathbf{I}_{\text{veh}}(t) = \Big[\mathbf{I}_d^{cg} + m_d D_d^2(t)\Big] + \Big[\mathbf{I}_p^{cg}(t) + m_p(t) D_p^2(t)\Big]$$ where $D_d(t)=|x_d - x_{\text{cg}}(t)|$, $D_p(t)=|x_p(t)-x_{\text{cg}}(t)|$. *Why this step?* Inertia is additive **only about a common point**; Steiner is the tool to bring everyone to that common (moving) CG. ![[3.4.06-Mass-properties-—-CG-location,-inertia-tensor-changing-with-propellant-depletion.png]] --- ## Worked Example 1 — CG shift during burn Rocket: $m_d=1000\text{ kg}$ at $x_d=6\text{ m}$ (nose-referenced). Full propellant $m_{p0}=4000\text{ kg}$ centered at $x_p=2\text{ m}$ (assume centroid fixed for a first pass). - **At $t=0$:** $x_{\text{cg}}=\dfrac{1000(6)+4000(2)}{5000}=\dfrac{14000}{5000}=2.8\text{ m}$. *Why:* mass-weighted average, propellant dominates → CG pulled toward tank. - **Half burnt ($m_p=2000$):** $x_{\text{cg}}=\dfrac{6000+4000}{3000}=3.33\text{ m}$. - **Burnout ($m_p=0$):** $x_{\text{cg}}=x_d=6\text{ m}$. **Interpretation:** CG marched **2.8 m → 6 m**, a 3.2 m migration toward the dry structure. TVC gains must schedule against this. ## Worked Example 2 — Pitch inertia with Steiner Same numbers; treat both bodies as point-like about the pitch axis (ignore their own $I^{cg}$). At $t=0$, $x_{\text{cg}}=2.8$: $$I_{yy}=m_d D_d^2 + m_p D_p^2 = 1000(6-2.8)^2 + 4000(2-2.8)^2$$ $$=1000(10.24)+4000(0.64)=10240+2560=12800\text{ kg·m}^2.$$ At burnout $x_{\text{cg}}=6$: propellant gone, $I_{yy}=1000(0)^2=0$ (point model) → real rocket keeps the dry body's own $I_d^{cg}$. *Why this step?* Shows inertia **collapses** as fuel leaves — same torque now spins the vehicle far faster → autopilot must reduce gain. --- > [!mistake] Steel-man the common errors > **"CG moves toward the nozzle as fuel burns."** *Why it feels right:* mass is leaving out the back, so > surely the CG chases the exit. **Fix:** the CG moves toward whatever is **left behind** — usually the > dry structure (engine/payload), which is often *forward* of the tanks. Track where the *remaining* mass sits. > > **"Just subtract burnt mass from $I$."** *Why it feels right:* less mass, less inertia. **Fix:** you must > also (a) recompute the moving CG and (b) re-apply Steiner for every sub-body about the *new* CG. Inertia > is not simply proportional to mass here. > > **"Products of inertia are always zero."** *Why it feels right:* nice symmetric rockets. **Fix:** slosh, > asymmetric drain, and canted engines create off-diagonal $I_{xy}$ terms → cross-coupled roll/pitch. --- > [!recall]- Feynman: explain to a 12-year-old > Imagine spinning a broom. If you slide a heavy ring along the handle, the "balance spot" (CG) moves, and > it gets easier or harder to twist. A rocket carries a huge tank of fuel like that heavy ring. As it burns > the fuel away, the balance spot slides toward the empty end, and the rocket becomes easier to spin. So the > pilot-computer has to keep re-learning "where is my balance point *right now*, and how twisty am I *right now*?" > [!mnemonic] Remember it > **"CG chases the LEFTOVER; Inertia SHRINKS but STEINER stays."** > — CG heads to remaining mass; $I$ drops as fuel goes, yet you *always* re-do the parallel-axis shift. --- ## Active recall > [!recall] Quick self-test > 1. Which way does CG move as propellant burns, and why? > 2. Why does the Steiner cross-term vanish when shifting *from* the CG? > 3. What two updates must accompany "less fuel" when finding $I(t)$? #flashcards/physics CG definition (continuous body) ::: $\mathbf{r}_{cg}=\frac{1}{M}\int \mathbf{r}\,dm$ — mass-weighted average position. Two-body rocket CG formula ::: $x_{cg}=\dfrac{m_d x_d + m_p(t)x_p(t)}{m_d+m_p(t)}$. Why the zero-moment condition defines CG ::: It's the point where $\sum m_i(\mathbf r_i-\mathbf r_{cg})=0$, i.e. the balance point. Inertia tensor definition ::: $\mathbf I=\int((\mathbf r\!\cdot\!\mathbf r)\mathbb 1-\mathbf r\mathbf r^\top)dm$; came from $\mathbf L=\mathbf I\boldsymbol\omega$. Parallel-axis (scalar) ::: $I_P=I_{cg}+Md^2$. Why Steiner cross-term dies ::: Because $\int\mathbf r'\,dm=0$ measured from the CG. Direction of CG migration ::: Toward the remaining (dry) mass, usually forward, not the nozzle. Effect of burnout on inertia ::: $I$ shrinks → same torque gives larger $\dot\omega$ → autopilot gain must drop. Two updates needed for I(t) besides mass loss ::: Recompute moving CG, then re-apply Steiner for each sub-body. Source of nonzero products of inertia ::: Asymmetric drain, slosh, canted engines → roll/pitch cross-coupling. --- ## Connections - [[Thrust Vector Control]] — needs live CG for moment arms. - [[Tsiolkovsky Rocket Equation]] — same mass-depletion story, translational side. - [[Rigid Body Rotational Dynamics]] — $\boldsymbol\tau=\mathbf I\dot{\boldsymbol\omega}+\boldsymbol\omega\times\mathbf I\boldsymbol\omega$. - [[Parallel-Axis Theorem]] — core tool used here. - [[Propellant Slosh Dynamics]] — breaks the fixed-centroid assumption. - [[Gain Scheduling in Autopilots]] — why time-varying $I$ and CG force scheduled control. ## 🖼️ Concept Map ```mermaid flowchart TD PD[Propellant depletion] CG[Center of gravity] IT[Inertia tensor I] CGdef[Mass-weighted average position] ZM[Zero-moment balance condition] TB[Dry mass plus propellant decomposition] ITdef[Integral of r-r 1 minus r rT] AM[Angular momentum L] TAU[Control torque tau equals I omega-dot] AP[Autopilot tuning] PD -->|shifts| CG PD -->|shrinks| IT ZM -->|defines| CGdef CGdef -->|formula for| CG CG -->|via superposition| TB PD -->|drains tank centroid| TB AM -->|expand triple product| ITdef ITdef -->|defines| IT IT -->|sets| TAU CG -->|sets moment arm for TVC| TAU TAU -->|must be retuned in flight| AP ``` ## 🔊 Hinglish (regional understanding) > [!intuition]- Hinglish mein samjho > Dekho, rocket ka fundamental funda ye hai ki wo apna hi zyada-tar weight fuel ke roop mein > bahar phenk deta hai. Jaise-jaise propellant burn hota hai, rocket ka **CG (center of gravity)** > shift karta jaata hai aur **inertia tensor** chhota hota jaata hai. Isse control par direct asar > padta hai: thrust ka moment arm CG se naapa jaata hai, aur kitni jaldi rocket ghoomega wo inertia > pe depend karta hai. Matlab liftoff wala rocket aur burnout wala rocket practically alag machine > hain. > > CG ka formula simple mass-weighted average hai: $x_{cg}=\frac{m_d x_d+m_p x_p}{m_d+m_p}$. Yaad > rakho — CG us taraf jaata hai jahan **bacha hua mass** hai, nozzle ki taraf nahi (ye common galti > hai). Humare example mein CG 2.8 m se 6 m tak khisak gaya. Inertia ke liye **parallel-axis > (Steiner) theorem** use karo: har sub-body ka apna inertia lo, phir naye CG tak shift karke add karo. > Yaad rakho ki Steiner ka cross-term isliye zero hota hai kyunki CG se naapne par $\int \mathbf r'\,dm=0$. > > Practical baat: sirf "mass kam ho gaya to inertia kam" mat socho. Tumhe (1) naya CG nikalna hai > aur (2) har piece ke liye Steiner dobara lagana hai — har instant. Isiliye autopilot mein **gain > scheduling** hota hai: time ke saath gains change karte hain kyunki I aur CG dono badal rahe hote > hain. Agar ye nahi karoge to rocket burnout ke time over-sensitive ho ke unstable ho sakta hai. ![[audio/3.4.06-Mass-properties-—-CG-location,-inertia-tensor-changing-with-propellant-depletion.mp3]]Go deeper — visual, from zero
Test yourself — Rocket Flight Mechanics
Connections
Thrust vector control — single-gimbal, dual-gimbal; TVC anglesPhysics · 3.5.44Tsiolkovsky rocket equation — full first-principles derivation from momentumPhysics · 3.3.1Rigid body dynamics — Euler angles, Euler's equations of motionPhysics · 2.1.21Parallel axis theorem — I = I_CM + Md² — proofPhysics · 1.5.6Mass budgets — dry mass, wet mass, marginPhysics · 3.6.24