Function explicit_single_diode
pub fn explicit_single_diode(a: f64, rp: f64, is: f64, n_vt: f64) -> f64Expand description
Explicit closed-form reflected wave for a single diode.
Solves v such that v + Rp·i(v) = a/2 (the WDF root equation in this
codebase’s doubled-wave convention) with i(v) = Is·(exp(v/nVt) − 1).
No Newton-Raphson outer loop is used.
Algorithm:
- Derive a near-exact warm start via Wright Omega (closed form).
- Apply one Newton-Raphson correction for < 1e-10 accuracy.
Note: a in the wave convention used by this codebase is 2 × standard_WDF_a.
The root solves v + Rp·i(v) = a/2.
Derivation of the WO warm start:
α = Rp·Is / nVt, u = v/nVt, a_eff = a/2
u + α·eᵘ = a_eff/nVt + α
w = α·eᵘ → w + ln w = a_eff/nVt + ln α + α
w₀ = ω(a/(2·nVt) + ln α + α)
v₀ = nVt·(ln w₀ − ln α)§Arguments
a- Incident wave (2 × WDF wave variable, V)rp- Port resistance (Ω)is- Saturation current (A)n_vt- Thermal voltage × ideality factor (V)