pub enum MeasurementKind {
VoltageMagnitude,
VoltageAngle,
ActivePower,
ReactivePower,
CurrentReal,
CurrentImag,
}Expand description
Which scalar quantity a Measurement observes.
Variants§
VoltageMagnitude
Voltage magnitude at a bus, per-unit.
VoltageAngle
Voltage angle at a bus, radians. Only ever present when a sensor supplied one — i.e. a phasor/PMU measurement.
ActivePower
Active power, per-unit.
ReactivePower
Reactive power, per-unit.
CurrentReal
Real part of a measured current, per-unit.
A current sensor is stored decomposed rather than as a magnitude and an
angle, following power-grid-model. Three reasons, the first decisive:
arg(I) has a branch cut, and a residual z − h(x) taken near ±π wraps
— gridoxide has no phase_mod_2pi anywhere, so a polar row would
silently chase a 2π error. |I| also has an unbounded derivative as
I → 0, which an unloaded branch reaches. And the iterative-linear
method needs a complex current regardless, so polar rows would be
recombined later and less legibly.
CurrentImag
Imaginary part of a measured current, per-unit.
Trait Implementations§
Source§impl Clone for MeasurementKind
impl Clone for MeasurementKind
impl Copy for MeasurementKind
Source§impl Debug for MeasurementKind
impl Debug for MeasurementKind
impl Eq for MeasurementKind
Source§impl Hash for MeasurementKind
impl Hash for MeasurementKind
Source§impl PartialEq for MeasurementKind
impl PartialEq for MeasurementKind
impl StructuralPartialEq for MeasurementKind
Auto Trait Implementations§
impl Freeze for MeasurementKind
impl RefUnwindSafe for MeasurementKind
impl Send for MeasurementKind
impl Sync for MeasurementKind
impl Unpin for MeasurementKind
impl UnsafeUnpin for MeasurementKind
impl UnwindSafe for MeasurementKind
Blanket Implementations§
impl<T> Boilerplate for T
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