pith. machine review for the scientific record. sign in
class

HasHodge

definition
show as:
view math explainer →
module
IndisputableMonolith.MaxwellDEC
domain
MaxwellDEC
line
25 · github
papers citing
none yet

open explainer

Read the cached plain-language explainer.

open lean source

IndisputableMonolith.MaxwellDEC on GitHub at line 25.

browse module

All declarations in this module, on Recognition.

explainer page

A cached Ask Recognition explainer exists for this declaration.

open explainer

depends on

used by

formal source

  22    Riemannian one may take `σ k = (-1)^(k*(4-k))`, while in Lorentzian (−,+,+,+)
  23    one would use `σ k = (-1)^(k*(4-k)+1)`. We keep this abstract so concrete
  24    meshes can choose either. -/
  25class HasHodge (α : Type) where
  26  n : Nat
  27  star : ∀ {k : Nat}, DForm α k → DForm α (n - k)
  28  star_add : ∀ {k} (x y : DForm α k), star (fun s => x s + y s) = (fun s => star x s + star y s)
  29  star_zero : ∀ {k}, star (fun (_ : Simplex α k) => 0) = (fun _ => 0)
  30  star_smul : ∀ {k} (c : ℝ) (x : DForm α k), star (fun s => c * x s) = (fun s => c * (star x s))
  31  signature : Nat → ℝ
  32  star_star : ∀ {k} (h : n - (n - k) = k) (x : DForm α k),
  33    h ▸ (star (star x)) = (fun s => signature k * x s)
  34  /-- Optional positivity control on 2-forms (useful in 4D Riemannian media).
  35      Requires n = 4 so that star maps 2-forms to 2-forms.
  36      Instances targeting Lorentzian signatures can simply provide a trivial
  37      proof such as `by intro; intro; exact le_of_eq (by ring)` if not used. -/
  38  star2_psd : ∀ (h : n - 2 = 2) (x : DForm α 2) (s : Simplex α 2),
  39    0 ≤ x s * (h ▸ (star x)) s
  40
  41/-- Linear medium parameters. -/
  42structure Medium (α : Type) [HasHodge α] where
  43  eps : ℝ
  44  mu  : ℝ
  45
  46/-- Sources (charge and current). -/
  47structure Sources (α : Type) where
  48  ρ : DForm α 0
  49  J : DForm α 1
  50
  51variable {α : Type}
  52
  53/-- Quasi-static Maxwell equations on the mesh (no time derivative terms).
  54    Faraday and Gauss-M are stated cleanly. Constitutive relations (const_D, const_B)
  55    and source equations (ampere_qs, gauss_e) require dimension n=3 for form-degree