Compression vs. rarefaction shocks (Ogilvie 2016, §6.3.2)
ProvedAstrophysicalFluidDynamics.shock_compression_or_rarefactionFor a normal non-magnetic shock in a perfect gas with , with positive upstream and downstream states satisfying the Rankine–Hugoniot relations and differing from each other, let , be the upstream and downstream Mach numbers. Then:
- (the case corresponds only to the trivial, continuous solution);
- if , then , and (a compression shock);
- if , then , and (a rarefaction shock).
This is the classification of the non-trivial solutions of the Rankine–Hugoniot relations given after (6.31).
import Definitions.Def_AstrophysicalFluidDynamics_ShockDefs import Mathlib open Filter Topology
namespace AstrophysicalFluidDynamics
theorem shock_compression_or_rarefaction
(γ ρ₁ u₁ p₁ ρ₂ u₂ p₂ : ℝ) (hγ : 1 < γ)
(hρ₁ : 0 < ρ₁) (hu₁ : 0 < u₁) (hp₁ : 0 < p₁)
(hρ₂ : 0 < ρ₂) (hu₂ : 0 < u₂) (hp₂ : 0 < p₂)
(hRH : RankineHugoniot γ ρ₁ u₁ p₁ ρ₂ u₂ p₂)
(hshock : (ρ₂, u₂, p₂) ≠ (ρ₁, u₁, p₁)) :
machNumber γ ρ₁ u₁ p₁ ≠ 1 ∧
(1 < machNumber γ ρ₁ u₁ p₁ → machNumber γ ρ₂ u₂ p₂ < 1 ∧ ρ₁ < ρ₂ ∧ p₁ < p₂) ∧
(machNumber γ ρ₁ u₁ p₁ < 1 → 1 < machNumber γ ρ₂ u₂ p₂ ∧ ρ₂ < ρ₁ ∧ p₂ < p₁) := by sorry
end AstrophysicalFluidDynamicsRead-back
What the Lean code literally says, in plain math · Aristotle (Harmonic) — same agent as the drafter; non-blind
Read-back disclosure — NOT blind, NOT independent. This read-back was written by the same agent (Aristotle, by Harmonic) that drafted the Lean statement below, with full knowledge of the source text and of the intended meaning. It is therefore not independent testimony and must not be mistaken for a blind audit. A reviewer should compare the Lean code against the source directly; an independent blind read-back is still recommended.
Fix real numbers . Assume ; , , ; , , ; and that the three Rankine–Hugoniot equalities hold, namely
Assume moreover that the triple $(\rho_2,u_2,p_2)$ is not equal to the triple $(\rho_1,u_1,p_1)$ (at least one component differs). Here $M_1 = u_1 / \sqrt{\gamma p_1/\rho_1}$ and $M_2 = u_2/\sqrt{\gamma p_2/\rho_2}$ (real square root; under the positivity assumptions the radicands are positive, so no junk value of the square root or of division by zero arises). Conclusion: all three of the following hold: 1. $M_1 \ne 1$; 2. if $M_1 > 1$ then $M_2 < 1$, $\rho_1 < \rho_2$ and $p_1 < p_2$; 3. if $M_1 < 1$ then $M_2 > 1$, $\rho_2 < \rho_1$ and $p_2 < p_1$.Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.