abbrev
definition
RotorPitch
show as:
view math explainer →
open explainer
Read the cached plain-language explainer.
open lean source
IndisputableMonolith.Flight.Geometry on GitHub at line 36.
browse module
All declarations in this module, on Recognition.
explainer page
depends on
used by
formal source
33noncomputable def phiTetrahedralAngle : ℝ := Real.arccos (-(1 / 3 : ℝ))
34
35/-- Rotor pitch family: integral log-spiral pitch `kappa : ℤ`. -/
36abbrev RotorPitch := IndisputableMonolith.Spiral.SpiralField.Params
37
38/-- Rotor radial path: log-spiral scaling on the φ lattice.
39
40`r(θ) = r0 · φ^{(κ·θ)/(2π)}`. -/
41noncomputable abbrev rotorPath := IndisputableMonolith.Spiral.SpiralField.logSpiral
42
43namespace SpiralLemmas
44
45open IndisputableMonolith.Spiral
46
47/-- `logSpiral` is nonzero whenever `r0` is nonzero (since φ^x > 0). -/
48lemma logSpiral_ne_zero
49 {r0 θ : ℝ} {P : SpiralField.Params} (hr0 : r0 ≠ 0) :
50 SpiralField.logSpiral r0 θ P ≠ 0 := by
51 classical
52 unfold SpiralField.logSpiral
53 -- `φ > 0` hence `φ^exp > 0`.
54 have hφpos : 0 < IndisputableMonolith.Constants.phi :=
55 IndisputableMonolith.Constants.phi_pos
56 have hrpow_ne : Real.rpow IndisputableMonolith.Constants.phi
57 ((P.kappa : ℝ) * θ / (2 * Real.pi)) ≠ 0 := by
58 exact ne_of_gt (Real.rpow_pos_of_pos hφpos _)
59 exact mul_ne_zero hr0 hrpow_ne
60
61/-- Closed-form step ratio for the log-spiral: it depends only on `Δθ` and `kappa`.
62
63This is the mathematical kernel behind the "discrete pitch families" idea.
64
65We assume `r0 ≠ 0` to avoid the definitional `if r₀ = 0 then 1` branch
66in `SpiralField.stepRatio`.