pub struct ContinuationCurve {
pub points: Vec<CurvePoint>,
pub events: Vec<ContinuationEvent>,
pub critical: Option<CriticalPoint>,
pub status: ContinuationStatus,
pub base: Vec<Bus>,
pub islands: Vec<IslandReport>,
pub warnings: Vec<ContinuationWarning>,
pub steps_attempted: usize,
pub corrector_iterations: usize,
pub solves: usize,
pub segments: usize,
pub reanalyses: usize,
}Expand description
Everything a run produced.
Fields§
§points: Vec<CurvePoint>§events: Vec<ContinuationEvent>§critical: Option<CriticalPoint>§status: ContinuationStatus§base: Vec<Bus>The solved λ = 0 state.
islands: Vec<IslandReport>From the base-case solve. With more than one island, λ_max is the first island to collapse — one λ and one parametrization row couple them all.
warnings: Vec<ContinuationWarning>§steps_attempted: usize§corrector_iterations: usize§solves: usizeBordered solves performed, and symbolic factorizations built. One factorization per segment; a segment ends only at a bus-type change.
segments: usize§reanalyses: usizeSymbolic factorizations rebuilt because the continuation index moved —
see augmented’s module docs for why the index is part of the pattern.
Implementations§
Source§impl ContinuationCurve
impl ContinuationCurve
Sourcepub fn lambda_max(&self) -> Option<f64>
pub fn lambda_max(&self) -> Option<f64>
λ at the nose, when one was found.
Sourcepub fn voltage_trace(&self, bus: usize) -> Vec<f64>
pub fn voltage_trace(&self, bus: usize) -> Vec<f64>
One bus’s voltage magnitude along the whole curve — a P-V curve, ready to plot.
Sourcepub fn q_limit_events(&self) -> Vec<(usize, QLimitKind, f64)>
pub fn q_limit_events(&self) -> Vec<(usize, QLimitKind, f64)>
Just the machines that saturated, in the order they did, as
(bus, limit, λ).
events also carries the walk’s own bookkeeping —
rejected steps, and so on — which is diagnostic rather than an answer.
Almost every caller wants this instead.
Trait Implementations§
Source§impl Clone for ContinuationCurve
impl Clone for ContinuationCurve
Auto Trait Implementations§
impl Freeze for ContinuationCurve
impl RefUnwindSafe for ContinuationCurve
impl Send for ContinuationCurve
impl Sync for ContinuationCurve
impl Unpin for ContinuationCurve
impl UnsafeUnpin for ContinuationCurve
impl UnwindSafe for ContinuationCurve
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T, U> Imply<T> for U
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more