Lorentz Vectors #
In this module we define Lorentz vectors as real Lorentz tensors with a single up index. We create an API around Lorentz vectors to make working with them as easy as possible.
Real contravariant Lorentz vector.
Instances For
Equations
Equations
- Lorentz.Vector.instModuleReal = inferInstanceAs (Module ℝ (Fin 1 ⊕ Fin d → ℝ))
Equations
- Lorentz.Vector.instAddCommGroup = inferInstanceAs (AddCommGroup (Fin 1 ⊕ Fin d → ℝ))
Equations
- Lorentz.Vector.instNorm d = { norm := fun (v : Lorentz.Vector d) => ‖(Lorentz.Vector.equivEuclid d) v‖ }
Equations
- One or more equations did not get rendered due to their size.
Equations
- Lorentz.Vector.isNormedSpace d = { toModule := Lorentz.Vector.instModuleReal, norm_smul_le := ⋯ }
Equations
- Lorentz.Vector.instInnerReal d = { inner := fun (v w : Lorentz.Vector d) => inner ℝ ((Lorentz.Vector.equivEuclid d) v) ((Lorentz.Vector.equivEuclid d) w) }
The Euclidean inner product structure on CoVector.
Equations
- One or more equations did not get rendered due to their size.
The instance of a ChartedSpace on Vector d.
Equations
Equations
- Lorentz.Vector.instCoeFunForallSumFinOfNatNatReal = { coe := fun (v : Lorentz.Vector d) => v }
The continuous linear map from a Lorentz vector to one of its coordinates.
Equations
- Lorentz.Vector.coordCLM i = LinearMap.toContinuousLinearMap { toFun := fun (v : Lorentz.Vector d) => v i, map_add' := ⋯, map_smul' := ⋯ }
Instances For
The continous linear equivalence between Vector d and Euclidean space.
Instances For
The continous linear equivalence between Vector d and the corresponding Pi type.
Equations
Instances For
Tensorial #
The equivalence between the type of indices of a Lorentz vector and
Fin 1 ⊕ Fin d.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Basis #
The basis on Vector d indexed by Fin 1 ⊕ Fin d.
Equations
- Lorentz.Vector.basis = Pi.basisFun ℝ (Fin 1 ⊕ Fin d)
Instances For
The action of the Lorentz group #
B. The continuous action of the Lorentz group #
The Lorentz action on vectors as a continuous linear map.
Equations
- Lorentz.Vector.actionCLM Λ = LinearMap.toContinuousLinearMap { toFun := fun (v : Lorentz.Vector d) => Λ • v, map_add' := ⋯, map_smul' := ⋯ }
Instances For
C. The Spatial part #
Extract spatial components from a Lorentz vector, returning them as a vector in Euclidean space.
Equations
- v.spatialPart = WithLp.toLp 2 fun (i : Fin d) => v (Sum.inr i)
Instances For
The spatial part of a Lorentz vector as a continous linear map.
Equations
- Lorentz.Vector.spatialCLM d = { toFun := fun (v : Lorentz.Vector d) => WithLp.toLp 2 fun (i : Fin d) => v (Sum.inr i), map_add' := ⋯, map_smul' := ⋯, cont := ⋯ }
Instances For
The Temporal component #
Extract time component from a Lorentz vector
Equations
- v.timeComponent = v (Sum.inl 0)
Instances For
The temporal part of a Lorentz vector as a continuous linear map.
Equations
- Lorentz.Vector.temporalCLM d = LinearMap.toContinuousLinearMap { toFun := fun (v : Lorentz.Vector d) => v (Sum.inl 0), map_add' := ⋯, map_smul' := ⋯ }
Instances For
## Smoothness
The structure of a smooth manifold on Vector .