pub struct PssParams {
pub freq: Option<f64>,
pub tstab: f64,
pub osc_node: Option<String>,
pub points: usize,
pub harmonics: usize,
pub max_iter: usize,
pub steady_coeff: f64,
pub uic: bool,
}Expand description
The .pss request (see Circuit::pss).
Fields§
§freq: Option<f64>Fundamental frequency in Hz; None takes it from the
periodic sources (the greatest common divisor of their
frequencies). Without periodic sources (an autonomous
oscillator) it is a guess of the period’s inverse, and None
estimates it from the stabilization transient.
tstab: f64Stabilization time: a plain transient runs from 0 to the first
period boundary at or after tstab (at least one period)
before the shooting starts there.
osc_node: Option<String>ngspice’s oscillation node. A driven circuit only checks and reports it; an autonomous one (no periodic source) needs it: its phase condition holds this node at its value on a rising mid-range crossing, and its crossings estimate the period.
points: usizeSamples per period in the time-domain plot (the plot has
points + 1 rows, both ends included, like ngspice’s).
harmonics: usizeRows of the frequency-domain plot: DC plus harmonics − 1
harmonics (ngspice’s count).
max_iter: usizeMost shooting iterations (adaptive period transients).
steady_coeff: f64Scale of the convergence tolerance: converged when every
unknown has |x(t₀+T) − x(t₀)| ≤ steady_coeff · (RELTOL · peak + VNTOL|ABSTOL), peak its largest magnitude over the
period.
uic: boolRun the stabilization transient with UIC.