Radial entrance coordinates and exact connection phase response
DefinitionBianchiIX_EntrancePhaseResponseDataFor real variables , set
The shear components and wall rates are
These functions define the normalized vacuum Bianchi IX vector field . For , define
and .
For , put
For , set and
Write for the normalized vector field and for its constraint.
The normalized and projective state spaces are and with their finite-product norms. The maps act on these state spaces.
The projective vector field in normalized time is
Write , , and let be the maximal solution of with initial value at and domain . Put
For , define
For any real height , put
The infimum uses the total real-order convention. Let mean that is the least element of , and, writing , that
All vector and operator norms use the finite-product supremum norms.
For put , , and define
Let .
On the invariant plane with zero active wall, use , the inclusion and the restriction . Define
Write , , , for their explicit Jacobian and Hessian expressions. The denominator derivatives are and . The exact original-time boundary flow and its projected variation are
For a fixed scale , set , and . For directions , define
All vector norms are sup norms, and operator norms are induced by them. Write , , , and
The closed boundary region is . The boundary projection is the limit of as , using the total limit convention of the formal definitions.
Define
and . For a normalized trajectory write
For , put ,
Let mean that this infimum is a least element, the full interval lies in the maximal domain with , the active wall is below one before the endpoint, and its normalized-time derivative is strictly positive throughout the interval. The infimum has its total real-order meaning.
For , define , , , and . Write . The inverse differential preserves the last three coordinates and has first row
An admissible local inverse at is at , maps to , has derivative there, and is a two-sided inverse to on neighborhoods of these points. For a scalar function , write . The radial coefficients and drift are
Set
Here
The logarithmic wall rates are
Let , define
and . All vector and operator norms use the sup norm.
For define
The logarithmic active-wall field is , its observable is , and its original-time rate is . The tangent projection at fixed relative active-wall clock is
Applied to the exact flow differential, it uses at the initial point. Radial input variations first apply . The wall tangent is ; the radial source column is . The two column envelopes are the sums of the absolute entries of . The weighted phase coefficient is , and its feedback rate is . For the reflected finite-tail entry , define
Its radial entrance coordinates are .
import Mathlib.Analysis.Calculus.Deriv.Pow
import Mathlib.Analysis.Calculus.Deriv.Mul
import Mathlib.Analysis.Calculus.Deriv.Add
import Mathlib.Analysis.Real.Sqrt
import Mathlib.Tactic.Linarith
import Mathlib.Tactic.Ring
import Mathlib.Analysis.SpecialFunctions.Arsinh
import Mathlib.Analysis.SpecialFunctions.Sqrt
import Mathlib.Tactic.FieldSimp
import Mathlib.Analysis.Calculus.ContDiff.Operations
import Mathlib.Analysis.Calculus.Deriv.Prod
import Mathlib.Analysis.Calculus.MeanValue
import Mathlib.Data.Fin.VecNotation
import Mathlib.Tactic.FinCases
import Mathlib.Tactic.FunProp
import Mathlib.Analysis.Calculus.Deriv.Inv
import Mathlib.Tactic.LinearCombination
import Mathlib.Analysis.SpecialFunctions.Arcosh
import Mathlib.MeasureTheory.Integral.IntervalIntegral.FundThmCalculus
import Mathlib.Analysis.Calculus.InverseFunctionTheorem.Deriv
import Mathlib.Analysis.Calculus.Deriv.MeanValue
import Mathlib.Analysis.SpecialFunctions.Pow.Deriv
import Mathlib.Analysis.SpecialFunctions.Integrals.Basic
import Mathlib.Analysis.ODE.ExistUnique
import Mathlib.Analysis.Calculus.FDeriv.Partial
import Mathlib.MeasureTheory.Integral.IntervalIntegral.DistLEIntegral
import Definitions.Def_BianchiIX_Dynamics_ProjectiveState
import Definitions.Def_BianchiIX_Dynamics_EntranceRegion
import Mathlib.Topology.Instances.Real.Lemmas
import Mathlib.Tactic.GCongr
import Mathlib.Analysis.Calculus.Deriv.Slope
import Mathlib.Topology.Order.OrderClosed
import Mathlib.Analysis.SpecialFunctions.Log.Deriv
import Definitions.Def_BianchiIX_Dynamics_ProjectiveFlowVariation
import Mathlib.Analysis.Calculus.FDeriv.Symmetric
import Mathlib.Tactic.NormNum
import Mathlib.Tactic.Module
import Definitions.Def_BianchiIX_CompactPhaseExpansionData
import Mathlib.Analysis.ODE.Gronwall
import Mathlib.Data.Matrix.Mul
import Mathlib.Topology.Order.IntermediateValue
import Mathlib.Topology.MetricSpace.Cauchy
import Mathlib.Analysis.Calculus.ContDiff.Comp
import Mathlib.Analysis.Calculus.Deriv.Comp
import Mathlib.Analysis.Calculus.UniformLimitsDeriv
import Mathlib.Analysis.Calculus.ParametricIntervalIntegral
import Mathlib.Topology.Order.Compact
import Mathlib.MeasureTheory.Integral.DominatedConvergence
import Mathlib.Topology.Order.ProjIcc
import Mathlib.Analysis.Calculus.InverseFunctionTheorem.ContDiff
import Definitions.Def_BianchiIX_Dynamics_CoreAngle
import Definitions.Def_BianchiIX_Dynamics_CoreTailMultipliers
import Mathlib.Analysis.Calculus.ImplicitContDiff
import Mathlib.Algebra.BigOperators.Fin
import Mathlib.Data.Real.Basic
import Mathlib.Analysis.SpecialFunctions.Trigonometric.ArctanDeriv
import Mathlib.Analysis.SpecialFunctions.Trigonometric.DerivHyp
import Mathlib.Analysis.SpecialFunctions.Log.Basic
import Mathlib.Topology.MetricSpace.Thickening
import Mathlib.Analysis.Normed.Module.FiniteDimension
import Mathlib.LinearAlgebra.Determinant
import Mathlib.Topology.Instances.Matrix
import Mathlib.LinearAlgebra.Matrix.Trace
import Mathlib.Analysis.Calculus.FDeriv.Analytic
import Mathlib.Topology.Algebra.Module.Determinant
import Mathlib.Analysis.Calculus.Deriv.Pi
import Definitions.Def_BianchiIX_Algebra_CoreAngle
import Definitions.Def_BianchiIX_Dynamics_CompactConnectionReturn
import Mathlib.Analysis.SpecialFunctions.ImproperIntegrals
import Mathlib.Analysis.Calculus.ParametricIntegral
import Mathlib.MeasureTheory.Integral.Bochner.ContinuousLinearMap
import Definitions.Def_BianchiIX_StableProjectionRefinementData
import Definitions.Def_BianchiIX_Analysis_ConnectionAmplitudeDifferential
import Mathlib.Analysis.SpecialFunctions.ExpDeriv
import Mathlib.MeasureTheory.Integral.IntervalIntegral.IntegrationByParts
import Mathlib.Analysis.SpecialFunctions.Pow.Real
section
noncomputable section
namespace BianchiIX
open Set MeasureTheory
def coupledVariationSource (C A x y : ℝ) (c : Fin 3 → ℝ) : ℝ :=
|c 1| * |x| + |c 2| * |y| + C * A * (|c 1| + |c 2|)
def coupledVariationFeedback (C l : ℝ) (c : Fin 3 → ℝ) : ℝ :=
(C + 1) * (|c 0| + l * (|c 1| + |c 2|))
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
def entranceLogField (y : ProjectiveState) : ProjectiveState :=
(entranceClockRate y)⁻¹ • projectiveField y
def entranceLogClock (y : ProjectiveState) : ℝ := Real.log (y 2)
def entranceOriginalClockRate (y : ProjectiveState) : ℝ :=
(6 / projectiveStateDenom y) * entranceClockRate y
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
open Set Filter
open scoped Topology
/-- Tangent at fixed log(V/V_entry); zeta is the initial logarithmic wall variation. -/
def entranceClockProjection (y v : ProjectiveState) (ζ : ℝ) : ProjectiveState :=
v - (v 2 / y 2 - ζ) • entranceLogField y
def entranceProjectedFlowVariation (y : ProjectiveState) (t₀ t : ℝ) (w : ProjectiveState) :
ProjectiveState := entranceClockProjection (projectiveOriginalFlow y t₀ t)
(projectiveFlowDifferential y t₀ t w) (w 2 / y 2)
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
def entranceWeakNumerator (y : ProjectiveState) : ℝ :=
y 0 - 1 - y 1 * (y 3 - y 1) - (entranceStablePhase y - 1) * entranceStablePartial y 0
def entranceRadialStrongCoefficient (y : ProjectiveState) : ℝ :=
((entranceStablePhase y - 1) * ((1 - y 0) * entranceStablePartial y 0 +
y 3 * (entranceStablePartial y 1 - entranceStablePartial y 3)) - y 2 ^ 2 -
(1 / 2) * (entranceStablePhase y - 1) * y 2 * entranceStablePartial y 1) /
(entranceStableRadius y * entranceClockRate y)
def entranceRadialWeakCoefficient (y : ProjectiveState) : ℝ :=
entranceWeakNumerator y / (entranceStableRadius y * entranceClockRate y)
def entranceStrongRemainder (y : ProjectiveState) : ℝ :=
(entranceStablePhase y - 1) * ((entranceStablePhase y - y 0) -
(y 0 - 1) * (entranceStablePartial y 0 - 1)) +
(entranceStablePhase y - 1) * y 3 * (entranceStablePartial y 1 - entranceStablePartial y 3) -
(1 / 2) * (entranceStablePhase y - 1) * y 2 * entranceStablePartial y 1
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
def entranceStrongBracket (y : ProjectiveState) : ℝ :=
entranceStablePhase y - 1 - (y 0 - 1) * entranceStablePartial y 0
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
def entranceRadialCoordinates (y : ProjectiveState) : ProjectiveState :=
![entranceStableRadius y, y 1, y 2, y 3]
def entranceRadialDifferential (y : ProjectiveState) : ProjectiveState →L[ℝ] ProjectiveState :=
ContinuousLinearMap.pi ![fderiv ℝ entranceStableRadius y, ContinuousLinearMap.proj 1,
ContinuousLinearMap.proj 2, ContinuousLinearMap.proj 3]
def entranceRadialInverseDifferential (y : ProjectiveState) : ProjectiveState →L[ℝ] ProjectiveState :=
ContinuousLinearMap.pi ![
(entranceStableRadius y / ((entranceStablePhase y - 1) * entranceStablePartial y 0)) • ContinuousLinearMap.proj 0 -
(entranceStablePartial y 1 / entranceStablePartial y 0) • ContinuousLinearMap.proj 1 -
(y 2 / ((entranceStablePhase y - 1) * entranceStablePartial y 0)) • ContinuousLinearMap.proj 2 -
(entranceStablePartial y 3 / entranceStablePartial y 0) • ContinuousLinearMap.proj 3,
ContinuousLinearMap.proj 1, ContinuousLinearMap.proj 2, ContinuousLinearMap.proj 3]
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
open Filter
open scoped Topology
structure EntranceRadialInverseAt (y : ProjectiveState) (Ψ : ProjectiveState → ProjectiveState) : Prop where
apply_base : Ψ (entranceRadialCoordinates y) = y
contDiffAt : ContDiffAt ℝ 2 Ψ (entranceRadialCoordinates y)
hasFDerivAt : HasFDerivAt Ψ (entranceRadialInverseDifferential y) (entranceRadialCoordinates y)
left_inverse : ∀ᶠ z in 𝓝 y, Ψ (entranceRadialCoordinates z) = z
right_inverse : ∀ᶠ z in 𝓝 (entranceRadialCoordinates y), entranceRadialCoordinates (Ψ z) = z
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
open Set Filter Metric
open scoped Topology
def compactConnectionCoordinates (η : ℝ) (Y : CoreAngleState) : ProjectiveState :=
![compactConnectionFinitePhase η Y, Y 1 * coreTailMultiplier η Y 0,
Y 2 * coreTailMultiplier η Y 1, η]
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
open Filter
open scoped Topology
def compactConnectionPhase (η : ℝ) (Y : CoreAngleState) : ℝ :=
coreRadius (compactConnectionState η Y 0) (compactConnectionState η Y 2)
def compactConnectionError (η : ℝ) (Y : CoreAngleState) : ℝ :=
compactConnectionPhase η Y - compactConnectionFinitePhase η Y
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
def entranceRadiusCorrection (y : ProjectiveState) : ℝ :=
entranceStableRadius y - coreRadius (y 0) (y 2)
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
open Filter
open scoped Topology
local instance entranceStableOperatorGroup : NormedAddCommGroup (StableState →L[ℝ] ℝ) :=
ContinuousLinearMap.toNormedAddCommGroup
local instance entranceStableOperatorSpace : NormedSpace ℝ (StableState →L[ℝ] ℝ) := inferInstance
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
local instance entranceOperatorSpace : NormedSpace ℝ (ProjectiveState →L[ℝ] ℝ) := inferInstance
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
open Filter
open scoped Topology
local instance entranceQuarticStableOperatorGroup : NormedAddCommGroup (StableState →L[ℝ] ℝ) :=
ContinuousLinearMap.toNormedAddCommGroup
local instance entranceQuarticStableOperatorSpace : NormedSpace ℝ (StableState →L[ℝ] ℝ) := inferInstance
def entranceQuarticRemainder (y : ProjectiveState) : ℝ := stableQuadraticRemainder (stableRestriction y)
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
def entranceStrongLogRate (y : ProjectiveState) : ℝ := connectionStrongClockRate (y 0) (y 1) (y 2) (y 3)
def entranceWeakLogRate (y : ProjectiveState) : ℝ := connectionWeakClockRate (y 0) (y 1) (y 2) (y 3)
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
def entranceWeakQuadratic (y : ProjectiveState) : ℝ :=
(1 - 1 / (y 0 + 1) ^ 2) * y 1 ^ 2 + (-1 + 4 / (y 0 + 1) ^ 2) * y 1 * y 3 - y 3 ^ 2 / (y 0 + 1) ^ 2
def entranceWeakRemainder (y : ProjectiveState) : ℝ :=
-entranceQuarticRemainder y - (y 0 - 1) * fderiv ℝ entranceQuarticRemainder y (Pi.single 0 1) -
(entranceStablePhase y - y 0) * (entranceStablePartial y 0 - 1)
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
open Filter
open scoped Topology
def entranceRadialDrift (y : ProjectiveState) : ℝ :=
y 1 * y 2 * entranceRadialStrongCoefficient y + y 2 ^ 2 * entranceRadialWeakCoefficient y
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
open Filter
open scoped Topology
def entranceRadialDriftDifferential (y : ProjectiveState) : ProjectiveState →L[ℝ] ℝ :=
(fderiv ℝ entranceRadialDrift y).comp (entranceRadialInverseDifferential y)
def entranceRadialVariationCoefficients (y : ProjectiveState) : Fin 3 → ℝ :=
![entranceRadialDriftDifferential y (Pi.single 0 1),
y 1 * entranceRadialDriftDifferential y (Pi.single 1 1),
y 3 * entranceRadialDriftDifferential y (Pi.single 3 1)]
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
def entranceStrongLogDifferential (y : ProjectiveState) : ProjectiveState →L[ℝ] ℝ :=
(fderiv ℝ entranceStrongLogRate y).comp (entranceRadialInverseDifferential y)
def entranceWeakLogDifferential (y : ProjectiveState) : ProjectiveState →L[ℝ] ℝ :=
(fderiv ℝ entranceWeakLogRate y).comp (entranceRadialInverseDifferential y)
def entranceWallWeightedMatrix (k : ℝ) (y : ProjectiveState) : Matrix (Fin 2) (Fin 2) ℝ :=
!![y 1 * entranceStrongLogDifferential y (Pi.single 1 1),
y 3 / k ^ 2 * entranceStrongLogDifferential y (Pi.single 3 1);
k ^ 2 * y 1 * entranceWeakLogDifferential y (Pi.single 1 1),
y 3 * entranceWeakLogDifferential y (Pi.single 3 1)]
def entranceWallWeightedColumn (k : ℝ) (y : ProjectiveState) (j : Fin 2) : ℝ :=
|entranceWallWeightedMatrix k y 0 j| + |entranceWallWeightedMatrix k y 1 j|
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
open Set MeasureTheory
def entranceWallRadialSource (k : ℝ) (y : ProjectiveState) : Fin 2 → ℝ :=
![entranceStrongLogDifferential y (Pi.single 0 1), k ^ 2 * entranceWeakLogDifferential y (Pi.single 0 1)]
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
open Set MeasureTheory
def entrancePhaseFeedbackRate (k l : ℝ) (y : ProjectiveState) : ℝ :=
|entranceRadialVariationCoefficients y 0| +
l * (|entranceRadialVariationCoefficients y 1| + |entranceRadialVariationCoefficients y 2| / k ^ 2)
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
open Filter
open scoped Topology
def entranceWallTangent (k : ℝ) (y v : ProjectiveState) : Fin 2 → ℝ :=
![v 1 / y 1, k ^ 2 * (v 3 / y 3)]
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
open Set MeasureTheory
def entranceLogWalls (k : ℝ) (y : ProjectiveState) : Fin 2 → ℝ :=
![Real.log (y 1), k ^ 2 * Real.log (y 3)]
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
open Set MeasureTheory
def entranceWeightedPhaseCoefficients (k : ℝ) (y : ProjectiveState) : Fin 3 → ℝ :=
![entranceRadialVariationCoefficients y 0, entranceRadialVariationCoefficients y 1,
entranceRadialVariationCoefficients y 2 / k ^ 2]
end BianchiIX
end
end
section
noncomputable section
namespace BianchiIX
open Set
def entranceRadialClockVariation (y : ProjectiveState) (t₀ t : ℝ) (d : ProjectiveState) : ProjectiveState :=
entranceProjectedFlowVariation y t₀ t (entranceRadialInverseDifferential y d)
end BianchiIX
end
end