Documentation

LeanPool.NavierStokesAndEuler.Euler.MeanPacketParity

Odd velocity and even normalized pressure for the actual mean provider.

theorem EulerMeanPacketProvider.Forcing.vector_odd {D : Data} {raw : EulerPacketProfileRecursion.VectorField} (G : Forcing D raw) (hD : EvenData D) (hodd : ∀ (t : (Set.Icc 0 D.T)) (x : EulerSmoothLimit.Space), raw (t, -x, 0) = -raw (t, x, 0)) (t : ) (x : EulerSmoothLimit.Space) (θ : ) :
G.vector (t, -x, θ) = -G.vector (t, x, θ)

The actual raw velocity is odd at every time; its exterior definition uses the same retraction.

theorem EulerMeanPacketProvider.Forcing.vectorDerivative_odd {D : Data} {raw : EulerPacketProfileRecursion.VectorField} (G : Forcing D raw) (hD : EvenData D) (hodd : ∀ (t : (Set.Icc 0 D.T)) (x : EulerSmoothLimit.Space), raw (t, -x, 0) = -raw (t, x, 0)) (t : (Set.Icc 0 D.T)) (x : EulerSmoothLimit.Space) (θ : ) :

Actual within-time derivatives preserve the odd velocity parity at both endpoints.

The pressure-force representative satisfies the already constructed physical equation.

theorem EulerMeanPacketProvider.Forcing.scalar_even {D : Data} {raw : EulerPacketProfileRecursion.VectorField} (G : Forcing D raw) (hD : EvenData D) (hodd : ∀ (t : (Set.Icc 0 D.T)) (x : EulerSmoothLimit.Space), raw (t, -x, 0) = -raw (t, x, 0)) (t : ) (x : EulerSmoothLimit.Space) (θ : ) :
G.scalar (t, -x, θ) = G.scalar (t, x, θ)

Canonical radial normalization makes the actual scalar pressure even.

theorem EulerMeanPacketProvider.meanSolve_odd (D : Data) (hD : EvenData D) (raw : EulerPacketProfileRecursion.VectorField) (h : Nonempty (Forcing D raw)) (hodd : ∀ (t : (Set.Icc 0 D.T)) (x : EulerSmoothLimit.Space), raw (t, -x, 0) = -raw (t, x, 0)) (t : ) (x : EulerSmoothLimit.Space) (θ : ) :
(meanSolve D raw).1 (t, -x, -θ) = -(meanSolve D raw).1 (t, x, θ)
theorem EulerMeanPacketProvider.meanSolve_even (D : Data) (hD : EvenData D) (raw : EulerPacketProfileRecursion.VectorField) (h : Nonempty (Forcing D raw)) (hodd : ∀ (t : (Set.Icc 0 D.T)) (x : EulerSmoothLimit.Space), raw (t, -x, 0) = -raw (t, x, 0)) (t : ) (x : EulerSmoothLimit.Space) (θ : ) :
(meanSolve D raw).2 (t, -x, -θ) = (meanSolve D raw).2 (t, x, θ)