pub fn heuman_lambda<T: Float>(phi: T, m: T) -> Result<T, StrErr>
Expand description
Computes Heuman Lambda.
⎛ _____ ⎞
F ⎝ φ, ╲╱1 - m ⎠ 2 ⎛ _____⎞
Λ0(φ, m) = ────────────────── + ─ ⋅ K(m) ⋅ Z ⎝φ, ╲╱1 - m⎠
⎛ _____ ⎞ π
K ⎝ ╲╱1 - m ⎠
§Parameters
- phi: amplitude angle (φ). φ ∈ ℝ.
- m: elliptic parameter. m ∈ ℝ, m ∈ [0, 1).
The elliptic modulus (k) is also frequently used instead of the parameter (m), where k² = m.
§Domain
- Returns error if m < 0 or m ≥ 1.
- Returns error if phi is infinite.
§Graph
§Special Cases
- Λ0(nπ/2, m) = n where n ∈ ℤ.
§Related Functions
With mc = 1 - m and Δ² = 1 - mc sin²φ
- heuman_lambda(φ, m) = ellipf(φ, sqrt(mc)) / ellipk(sqrt(mc)) + 2/π * ellipk(m) * jacobi_zeta(φ, sqrt(mc))
- heuman_lambda(φ, m) = 2/π * mc sin(φ)cos(φ)/Δ * [elliprf(0,mc,1) + m/3Δ² * elliprj(0,mc,1,1-m/Δ²)]
§Examples
use ellip::{heuman_lambda, util::assert_close};
use std::f64::consts::FRAC_PI_4;
assert_close(heuman_lambda(FRAC_PI_4, 0.5).unwrap(), 0.6767572745112893, 1e-15);
§References
- Maddock, John, Paul Bristow, Hubert Holin, and Xiaogang Zhang. “Boost Math Library: Special Functions - Elliptic Integrals.” Accessed August 30, 2025. https://www.boost.org/doc/libs/1_88_0/libs/math/doc/html/math_toolkit/ellint.html.