Module nonlinear
Expand description
Nonlinear WDF root elements: Diodes, JFETs, MOSFETs, Zener diodes, OTAs.
These elements sit at the tree root and use Newton-Raphson iteration to solve the implicit WDF constraint equation for the reflected wave.
Also includes the slew rate limiter (models op-amp bandwidth limiting), OTA (operational transconductance amplifier) for CA3080-based circuits, and delay line implementations (BBD and generic).
Modules§
- diode
- Diode WDF root elements: silicon, germanium, LED, zener.
- solver
- Shared Newton-Raphson solver and numerical utilities for nonlinear WDF roots.
Structs§
- BbdDelay
Line - BBD delay line processor.
- BbdModel
- BBD delay line model parameters.
- BjtGummel
Poon Root - 3-port R-type adaptor for Gummel-Poon BJT.
- BjtRoot
- BJT as a single-port WDF root (like TriodeRoot for tubes).
- BjtTwo
Port - 2-port BJT for the multi-NL grouped solver.
- Delay
Line - Generic delay line: a ring buffer with WDF-compatible ports.
- Diff
Pair Root - Diff-pair macromodel for ladder filter stages (Moog/303/Korg).
- Diode
Model - Diode model parameters derived from the Shockley equation.
- Diode
Pair Root - Anti-parallel diode pair at the tree root.
- Diode
Root - Single diode at the tree root (asymmetric clipping).
- Ebers
Moll TwoPort - Simplified Ebers-Moll BJT model for deterministic-cost NR evaluation.
- Explicit
Diode Pair Root - Anti-parallel diode pair WDF root using the explicit Wright Omega solver.
- Explicit
Diode Root - Single diode WDF root using the explicit Wright Omega solver.
- Feedback
Config - Configuration for a feedback pot in an op-amp gain stage.
- Gummel
Poon Model - Gummel-Poon BJT model parameters.
- JaCore
Model - JaMagnetizing
Root - JaState
- Jfet
Model - JFET model parameters in standard SPICE Level 1 parameterization.
- Jfet
Root - JFET nonlinear root for WDF trees.
- Mosfet
Model - Enhancement-mode MOSFET model parameters.
- Mosfet
Root - Enhancement-mode MOSFET nonlinear root for WDF trees.
- OpAmp
Model - Op-amp model parameters for WDF integration.
- OpAmp
Root - Models op-amp behavior in two topologies:
- OtaModel
- CA3080 OTA model parameters.
- OtaRoot
- OTA nonlinear root for WDF trees.
- Pentode
Model - Pentode model parameters using a screen-referenced Koren equation.
- Pentode
Root - Pentode nonlinear root for WDF trees.
- Pentode
Three Port - 3-port Koren pentode for use with the grouped multi-port NR solver.
- Slew
Rate Limiter - Models op-amp slew rate limiting for physically accurate WDF processing.
- Solver
Stats Snapshot - Solver
Trace Entry - A single entry in the solver trace buffer, recorded per NR solve call.
- Spring
Model - Named spring-tank model parameters (Accutronics / RE-201 grounded).
- Spring
Tank - Spring reverb tank: a sum of detuned dispersive [
SpringLine]s with an output DC blocker and a per-instance dwell/drive input trim. - Tap
- A read-only tap into a
DelayLine. - Tape
Head Voltage Root - Triode
Model - Triode model parameters using the Koren equation.
- Triode
Root - Triode nonlinear root for WDF trees.
- Triode
Three Port - 3-port Koren triode for use with the grouped multi-port NR solver.
- Vari
MuModel - Variable-mu triode model parameters using the Raffensperger equation.
- Vari
MuThree Port - 3-port variable-mu triode for use with the grouped multi-port NR solver.
- Vari
MuTriode Root - Variable-mu triode nonlinear root for WDF trees.
- WdfJa
Magnetizing - WdfTape
Head Voltage - Zener
Model - Zener diode model parameters.
- Zener
Pair Root - Anti-parallel zener pair at the tree root.
- Zener
Root - Zener diode at the tree root.
- Zone
Boundary - A zone boundary along the virtual delay path.
Enums§
- Diode
Solver Method - Per-instance diode solver method selector.
- Interpolation
- Interpolation mode for delay line read pointer.
- Medium
- Physical storage medium model for the delay buffer.
- Medium
Preset - Pre-configured medium settings for common tape echo models.
- OpAmp
Mode - Op-amp nonlinear root for WDF trees.
Functions§
- bbd_
soft_ clip - BBD soft clipping characteristic.
- disable_
grouped_ residual_ log - Disable per-iteration residual logging and return the accumulated residuals.
- disable_
solver_ trace - Disable per-solve tracing and return the accumulated trace entries. Returns an empty vec if tracing was not enabled.
- enable_
grouped_ residual_ log - Enable per-iteration residual logging for the grouped solver (std + test
diagnostic). Each grouped-NR iteration appends its residual norm so callers
can assert the Armijo line search produces a monotone non-increasing
residual. Call
disable_grouped_residual_logto retrieve the buffer. - enable_
solver_ trace - Enable per-solve tracing. Each NR solve will append a
SolverTraceEntryto an internal buffer pre-allocated withcapacityentries. Calldisable_solver_trace()to retrieve and consume the buffer. - explicit_
diode_ pair - Explicit closed-form reflected wave for an anti-parallel diode pair.
- explicit_
single_ diode - Explicit closed-form reflected wave for a single diode.
- reset_
solver_ stats - solver_
stats_ snapshot - tape_
saturation - Tape magnetic hysteresis saturation.
- wright_
omega - Compute the Wright Omega function ω(x), the real branch of the solution to
ω + ln(ω) = x.