Documentation

LeanPool.NavierStokesAndEuler.Euler.PacketPhysicalEulerTransform

Actual differentiation through the oscillating phase graph and a parent flow. These identities convert the normalized lifted equation into the ordinary Euler momentum residual of the physical perturbation.

Space time graph, given by (fst ℝ ℝ E).prod ((graphMap k m).comp (snd ℝ ℝ E)).

Equations
Instances For
    noncomputable def EulerPacketPhysicalTransform.graphVelocity {E : Type u_1} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] (κ k : ) (m : E) (F : × EE →L[] E) (z : × E × E) (q : × E) :
    E

    Graph velocity, given by κ • F q (z (spaceTimeGraph k m q)).

    Equations
    Instances For
      theorem EulerPacketPhysicalTransform.graphVelocity_hasFDerivAt {E : Type u_1} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] (κ k : ) (m : E) (F : × EE →L[] E) (z : × E × E) (q : × E) (DF : × E →L[] E →L[] E) (Dz : × E × →L[] E) (hF : HasFDerivAt F DF q) (hz : HasFDerivAt z Dz ((spaceTimeGraph k m) q)) :
      HasFDerivAt (graphVelocity κ k m F z) (κ (F q ∘SL Dz ∘SL spaceTimeGraph k m + DF.flip (z ((spaceTimeGraph k m) q)))) q
      theorem EulerPacketPhysicalTransform.graphVelocity_fderiv {E : Type u_1} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] (κ k : ) (m : E) (F : × EE →L[] E) (z : × E × E) (q : × E) (DF : × E →L[] E →L[] E) (Dz : × E × →L[] E) (hF : HasFDerivAt F DF q) (hz : HasFDerivAt z Dz ((spaceTimeGraph k m) q)) (v : × E) :
      (fderiv (graphVelocity κ k m F z) q) v = κ ((DF v) (z ((spaceTimeGraph k m) q)) + (F q) (Dz ((spaceTimeGraph k m) v)))
      theorem EulerPacketPhysicalTransform.graph_residual_identity {E : Type u_1} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] (κ k : ) ( : k * κ = 1) (m : E) (F : × EE →L[] E) (z : × E × E) (q : × E) (DF : × E →L[] E →L[] E) (Dz : × E × →L[] E) (hF : HasFDerivAt F DF q) (hz : HasFDerivAt z Dz ((spaceTimeGraph k m) q)) (A : E ≃L[] E) (hA : F q = A) (p : E) :
      (fderiv (graphVelocity κ k m F z) q) (1, 0) + (DF (1, 0)) (A.symm (graphVelocity κ k m F z q)) + (fderiv (graphVelocity κ k m F z) q) (0, A.symm (graphVelocity κ k m F z q)) + (ContinuousLinearMap.adjoint A.symm) (κ p) = κ A (Dz (1, 0, 0) + 2 A.symm ((DF (1, 0)) (z ((spaceTimeGraph k m) q))) + Dz (0, κ z ((spaceTimeGraph k m) q), inner m (z ((spaceTimeGraph k m) q))) + κ A.symm ((DF (0, z ((spaceTimeGraph k m) q))) (z ((spaceTimeGraph k m) q))) + A.symm ((ContinuousLinearMap.adjoint A.symm) p))

      The normalized equation is exactly the ordinary Lagrangian perturbation equation after evaluation on the phase graph, with its actual derivatives.

      theorem EulerPacketPhysicalTransform.euler_residual_of_pullback {E : Type u_1} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] (u w : × EE) (p q : × E) (X G : × EE) (Q : × E) (t : ) (x : E) (A : E ≃L[] E) (Du Dw DG : × E →L[] E) (hXtime : HasDerivAt (fun (s : ) => X (s, x)) (u (t, X (t, x))) t) (hXspace : HasFDerivAt (fun (y : E) => X (t, y)) (↑A) x) (hu : HasFDerivAt u Du (t, X (t, x))) (hw : HasFDerivAt w Dw (t, X (t, x))) (hG : HasFDerivAt G DG (t, x)) (hp : DifferentiableAt (fun (y : E) => p (t, y)) (X (t, x))) (hq : DifferentiableAt (fun (y : E) => q (t, y)) (X (t, x))) (hwX : ∀ (s : ) (y : E), w (s, X (s, y)) = G (s, y)) (hqX : ∀ (y : E), q (t, X (t, y)) = Q (t, y)) (hparent : EulerLagrangian.momentumResidual u p (t, X (t, x)) = 0) :
      EulerLagrangian.momentumResidual (fun (y : × E) => u y + w y) (fun (y : × E) => p y + q y) (t, X (t, x)) = DG (1, 0) + Du (0, G (t, x)) + DG (0, A.symm (G (t, x))) + (ContinuousLinearMap.adjoint A.symm) (gradient (fun (y : E) => Q (t, y)) x)

      A literal pullback identity determines the physical momentum residual. The hypotheses are genuine derivatives of the parent flow and the two fields.

      def EulerPacketPhysicalTransform.inverseCoordinates {E : Type u_1} (Y : × EE) (q : × E) :

      Inverse coordinates, given by (q.1,Y q).

      Equations
      Instances For
        noncomputable def EulerPacketPhysicalTransform.physicalVelocity {E : Type u_1} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] (κ k : ) (m : E) (F : × EE →L[] E) (z : × E × E) (Y : × EE) :
        × EE

        Physical velocity, defined pointwise by graphVelocity κ k m F z (inverseCoordinates Y q).

        Equations
        Instances For
          def EulerPacketPhysicalTransform.physicalPressure {E : Type u_1} (Q : × E) (Y : × EE) :
          × E

          Physical pressure, defined pointwise by Q (inverseCoordinates Y q).

          Equations
          Instances For
            theorem EulerPacketPhysicalTransform.physical_euler_momentum {E : Type u_1} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] (κ k : ) ( : k * κ = 1) (m : E) (F : × EE →L[] E) (z : × E × E) (u : × EE) (p Q : × E) (X Y : × EE) (t : ) (x : E) (A : E ≃L[] E) (DF : × E →L[] E →L[] E) (Dz : × E × →L[] E) (Du : × E →L[] E) (P : E) (hleft : ∀ (s : ) (y : E), Y (s, X (s, y)) = y) (hY : DifferentiableAt (inverseCoordinates Y) (t, X (t, x))) (hXtime : HasDerivAt (fun (s : ) => X (s, x)) (u (t, X (t, x))) t) (hXspace : HasFDerivAt (fun (y : E) => X (t, y)) (↑A) x) (hF : HasFDerivAt F DF (t, x)) (hz : HasFDerivAt z Dz ((spaceTimeGraph k m) (t, x))) (hA : F (t, x) = A) (hu : HasFDerivAt u Du (t, X (t, x))) (hp : DifferentiableAt (fun (y : E) => p (t, y)) (X (t, x))) (hQ : DifferentiableAt (fun (y : E) => Q (t, y)) x) (hstrain : ∀ (v : E), Du (0, v) = (DF (1, 0)) (A.symm v)) (hQgradient : gradient (fun (y : E) => Q (t, y)) x = κ P) (hparent : EulerLagrangian.momentumResidual u p (t, X (t, x)) = 0) (hlift : Dz (1, 0, 0) + 2 A.symm ((DF (1, 0)) (z ((spaceTimeGraph k m) (t, x)))) + Dz (0, κ z ((spaceTimeGraph k m) (t, x)), inner m (z ((spaceTimeGraph k m) (t, x)))) + κ A.symm ((DF (0, z ((spaceTimeGraph k m) (t, x)))) (z ((spaceTimeGraph k m) (t, x)))) + A.symm ((ContinuousLinearMap.adjoint A.symm) P) = 0) :
            EulerLagrangian.momentumResidual (fun (q : × E) => u q + physicalVelocity κ k m F z Y q) (fun (q : × E) => p q + physicalPressure Q Y q) (t, X (t, x)) = 0

            The physical perturbation is defined by the actual inverse flow. The normalized lifted equation, rather than a physical PDE hypothesis, forces its Euler momentum residual to vanish.