Documentation

LeanPool.NavierStokesAndEuler.Euler.SmoothFlowJets

Actual time identities for all spatial jets of the constructed flow #

The spatial derivative is taken in the full continuous-path Banach space. The bounded time integral commutes with it at every order. Reassembling the tensor paths therefore gives genuine within-time derivatives of all jets, without assuming differentiability of an ODE solution family.

noncomputable def EulerSmoothBanachFlow.velocityFamily {E : Type} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] (T : ) (hT : 0 T) (A : SmoothTimeField (↑(Set.Icc 0 T)) E E) (x : E) :
C((Set.Icc 0 T), E)

Velocity family, given by A.superposition (pathFamily T hT A x).

Equations
Instances For
    noncomputable def EulerSmoothBanachFlow.displacementFamily {E : Type} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] (T : ) (hT : 0 T) (A : SmoothTimeField (↑(Set.Icc 0 T)) E E) (x : E) :
    C((Set.Icc 0 T), E)

    Displacement family, given by pathFamily T hT A x - (ContinuousLinearMap.const ℝ (Icc (0 : ℝ) T)) x.

    Equations
    Instances For
      noncomputable def EulerSmoothBanachFlow.jetPath {E : Type} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] (T : ) (hT : 0 T) (A : SmoothTimeField (↑(Set.Icc 0 T)) E E) (n : ) (x : E) :

      Jet path, given by tensorPathMap n (iteratedFDeriv ℝ n (pathFamily T hT A) x).

      Equations
      Instances For
        noncomputable def EulerSmoothBanachFlow.velocityJetPath {E : Type} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] (T : ) (hT : 0 T) (A : SmoothTimeField (↑(Set.Icc 0 T)) E E) (n : ) (x : E) :

        Velocity jet path, given by tensorPathMap n (iteratedFDeriv ℝ n (velocityFamily T hT A) x).

        Equations
        Instances For
          noncomputable def EulerSmoothBanachFlow.displacementJetPath {E : Type} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] (T : ) (hT : 0 T) (A : SmoothTimeField (↑(Set.Icc 0 T)) E E) (n : ) (x : E) :

          Displacement jet path, given by tensorPathMap n (iteratedFDeriv ℝ n (displacementFamily T hT A) x).

          Equations
          Instances For
            theorem EulerSmoothBanachFlow.jetPath_apply {E : Type} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] (T : ) (hT : 0 T) (A : SmoothTimeField (↑(Set.Icc 0 T)) E E) (n : ) (x : E) (t : (Set.Icc 0 T)) :
            (jetPath T hT A n x) t = iteratedFDeriv n (fun (y : E) => (flowData T hT A).forward (↑t) y) x
            theorem EulerSmoothBanachFlow.velocityJetPath_apply {E : Type} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] (T : ) (hT : 0 T) (A : SmoothTimeField (↑(Set.Icc 0 T)) E E) (n : ) (x : E) (t : (Set.Icc 0 T)) :
            (velocityJetPath T hT A n x) t = iteratedFDeriv n (fun (y : E) => (A.field t) ((flowData T hT A).forward (↑t) y)) x
            noncomputable def EulerSmoothBanachFlow.displacement {E : Type} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] (T : ) (hT : 0 T) (A : SmoothTimeField (↑(Set.Icc 0 T)) E E) (t : ) (x : E) :
            E

            The clamped extension is used only to state derivatives on the closed time interval; there it is exactly the constructed flow minus its label.

            Equations
            Instances For
              theorem EulerSmoothBanachFlow.displacement_eq {E : Type} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] (T : ) (hT : 0 T) (A : SmoothTimeField (↑(Set.Icc 0 T)) E E) (t : (Set.Icc 0 T)) (x : E) :
              displacement T hT A (↑t) x = (flowData T hT A).forward (↑t) x - x
              theorem EulerSmoothBanachFlow.velocityJetPath_displacement {E : Type} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] (T : ) (hT : 0 T) (A : SmoothTimeField (↑(Set.Icc 0 T)) E E) (n : ) (x : E) (t : (Set.Icc 0 T)) :
              (velocityJetPath T hT A n x) t = iteratedFDeriv n (fun (y : E) => (A.field t) (y + displacement T hT A (↑t) y)) x
              theorem EulerSmoothBanachFlow.displacement_jet_hasDerivWithinAt {E : Type} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] (T : ) (hT : 0 T) (A : SmoothTimeField (↑(Set.Icc 0 T)) E E) (n : ) (x : E) (t : (Set.Icc 0 T)) :
              HasDerivWithinAt (fun (s : ) => iteratedFDeriv n (displacement T hT A s) x) (iteratedFDeriv n (fun (y : E) => (A.field t) (y + displacement T hT A (↑t) y)) x) (Set.Icc 0 T) t

              Every actual spatial tensor has the differentiated ODE as its genuine time derivative, including one-sided derivatives at both endpoints.

              theorem EulerSmoothBanachFlow.displacement_jet_continuous {E : Type} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] (T : ) (hT : 0 T) (A : SmoothTimeField (↑(Set.Icc 0 T)) E E) (n : ) (x : E) :
              Continuous fun (t : ) => iteratedFDeriv n (displacement T hT A t) x
              theorem EulerSmoothBanachFlow.velocity_jet_continuous {E : Type} [NormedAddCommGroup E] [NormedSpace E] [FiniteDimensional E] (T : ) (hT : 0 T) (A : SmoothTimeField (↑(Set.Icc 0 T)) E E) (n : ) (x : E) :
              Continuous fun (t : (Set.Icc 0 T)) => iteratedFDeriv n (fun (y : E) => (A.field t) (y + displacement T hT A (↑t) y)) x