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

mem_modes_iff

proved
show as:
view math explainer →
module
IndisputableMonolith.ClassicalBridge.Fluids.Galerkin2D
domain
ClassicalBridge
line
44 · github
papers citing
none yet

open explainer

Read the cached plain-language explainer.

open lean source

IndisputableMonolith.ClassicalBridge.Fluids.Galerkin2D on GitHub at line 44.

browse module

All declarations in this module, on Recognition.

explainer page

A cached Ask Recognition explainer exists for this declaration.

open explainer

depends on

formal source

  41noncomputable def modes (N : ℕ) : Finset Mode2 :=
  42  ((Finset.Icc (-((N : ℤ))) (N : ℤ)).product (Finset.Icc (-((N : ℤ))) (N : ℤ)))
  43
  44lemma mem_modes_iff {N : ℕ} {k : Mode2} :
  45    k ∈ modes N ↔ k.1 ∈ Finset.Icc (-((N : ℤ))) (N : ℤ) ∧ k.2 ∈ Finset.Icc (-((N : ℤ))) (N : ℤ) := by
  46  simp [modes, and_left_comm, and_assoc, and_comm]
  47
  48/-!
  49## Galerkin state space
  50-/
  51
  52-- We use Euclidean (L²) norms/inner products for energy identities, so we model coefficients
  53-- in `EuclideanSpace`, not plain Pi types (which carry the sup norm).
  54
  55/-- Velocity Fourier coefficient at a mode: a Euclidean real 2-vector (û₁, û₂). -/
  56abbrev VelCoeff : Type := EuclideanSpace ℝ (Fin 2)
  57
  58/-- The Galerkin state: velocity coefficients for each truncated mode and each component. -/
  59abbrev GalerkinState (N : ℕ) : Type :=
  60  EuclideanSpace ℝ ((modes N) × Fin 2)
  61
  62/-!
  63## Discrete dynamics
  64-/
  65
  66/-- Squared wave number \( |k|^2 \) as a real number. -/
  67noncomputable def kSq (k : Mode2) : ℝ :=
  68  (k.1 : ℝ) ^ 2 + (k.2 : ℝ) ^ 2
  69
  70/-- Fourier Laplacian on coefficients: (Δ û)(k) = -|k|² û(k). -/
  71noncomputable def laplacianCoeff {N : ℕ} (u : GalerkinState N) : GalerkinState N :=
  72  WithLp.toLp 2 (fun kc => (-kSq ((kc.1 : Mode2))) * u kc)
  73
  74/-- Abstract Galerkin convection operator (projected nonlinearity).