Temperature #
In this module we define the type Temperature, corresponding to the temperature in a given
(but arbitrary) set of units which have absolute zero at zero.
This is the version of temperature most often used in undergraduate and non-mathematical physics.
The choice of units can be made on a case-by-case basis, as long as they are done consistently.
The type Temperature represents the temperature in a given (but arbitrary) set of units
(preserving zero). It currently wraps ℝ≥0, i.e., absolute temperature in nonnegative reals.
- val : NNReal
The nonnegative real value of the temperature.
Instances For
Coercion to ℝ≥0.
Equations
- Temperature.instCoeNNReal = { coe := fun (T : Temperature) => T.val }
The underlying real-number associated with the temperature.
Instances For
Coercion to ℝ.
Equations
- Temperature.instCoeReal = { coe := Temperature.toReal }
Topology on Temperature induced from ℝ≥0.
Equations
- Temperature.instTopologicalSpace = TopologicalSpace.induced (fun (T : Temperature) => T.val) inferInstance
The inverse temperature defined as 1/(kB * T) in a given, but arbitrary set of units.
This has dimensions equivalent to Energy.
Instances For
The temperature associated with a given inverse temperature β.
Equations
- Temperature.ofβ β = { val := ⟨1 / (Constants.kB * ↑β), ⋯⟩ }
Instances For
Positivity of β from positivity of temperature.
Convergence #
Core convergence: as β → ∞, toReal (ofβ β) → 0 in ℝ.
As β → ∞, T = ofβ β → 0+ in ℝ (within Ioi 0).
Conversion to and from ℝ≥0 #
Build a Temperature directly from a nonnegative real.
Equations
- Temperature.ofNNReal t = { val := t }
Instances For
Convenience: build a temperature from a real together with a proof of nonnegativity.
Equations
- Temperature.ofRealNonneg t ht = Temperature.ofNNReal ⟨t, ht⟩
Instances For
Calculus relating T and β #
Map a real t to the inverse temperature β corresponding to the temperature Real.toNNReal t
(max t 0), returned as a real number.
Equations
Instances For
Explicit closed-form for Beta_fun_T t when t > 0.
On Ioi 0, Beta_fun_T t equals 1 / (kB * t).
Chain rule for β(T) : d/dT F(β(T)) = F'(β(T)) * (-1 / (kB * T^2)), within Ioi 0.