def
definition
eightTickKernelParams
show as:
view math explainer →
open explainer
Generate a durable explainer page for this declaration.
open lean source
IndisputableMonolith.ILG.Kernel on GitHub at line 64.
browse module
All declarations in this module, on Recognition.
explainer page
depends on
-
tau0 -
tau0_pos -
alphaLock -
alphaLock_pos -
tau0 -
tau0_pos -
alpha -
tau0 -
tau0_pos -
alphaLock_pos -
kernel -
kernel -
KernelParams -
Kernel -
Kernel
used by
formal source
61}
62
63/-- Eight-tick aligned kernel parameters with c = 49/162. -/
64noncomputable def eightTickKernelParams (tau0 : ℝ) (h : 0 < tau0) : KernelParams := {
65 alpha := alphaLock,
66 C := 49 / 162,
67 tau0 := tau0,
68 tau0_pos := h,
69 alpha_nonneg := le_of_lt alphaLock_pos,
70 C_nonneg := by norm_num
71}
72
73/-! ## Kernel Definition -/
74
75/-- The ILG kernel function:
76 w(k, a) = 1 + C · (a / (k τ₀))^α
77
78We use max with a small ε to avoid division issues when k τ₀ = 0. -/
79noncomputable def kernel (P : KernelParams) (k a : ℝ) : ℝ :=
80 1 + P.C * (max 0.01 (a / (k * P.tau0))) ^ P.alpha
81
82/-- Simplified kernel when k = 1 (reference wavenumber). -/
83noncomputable def kernelAtRefK (P : KernelParams) (a : ℝ) : ℝ :=
84 1 + P.C * (max 0.01 (a / P.tau0)) ^ P.alpha
85
86@[simp] lemma kernelAtRefK_eq (P : KernelParams) (a : ℝ) :
87 kernelAtRefK P a = kernel P 1 a := by
88 simp [kernelAtRefK, kernel, one_mul]
89
90/-! ## Basic Properties -/
91
92/-- Kernel is always positive for valid parameters. -/
93theorem kernel_pos (P : KernelParams) (k a : ℝ) : 0 < kernel P k a := by
94 unfold kernel