pub enum EnvelopeFlag {
UnstableUnderPower {
static_margin_cal: Peak,
},
UnstableWithoutMargin {
pitch_moment_slope_per_rad: Peak,
},
BeyondValidatedRange {
max_mach: Peak,
},
HighAngleOfAttack {
angle_of_attack_rad: Peak,
},
OutsideCoreBand {
max_mach: Peak,
},
BeyondEnvelope {
max_mach: Peak,
},
}Expand description
One flag a flight raises, with the peak that raised it. Serialized with a flag tag in
snake case.
Variants§
UnstableUnderPower
A static margin below zero while a motor burns, from the rail exit to apogee or the first
deployment
(FlightSummary::min_powered_static_margin_cal):
the rocket is unstable under power, and its apogee is not a prediction.
UnstableWithoutMargin
A pitch-moment slope C_mα above zero while a motor burns, from the rail exit to apogee or
the first deployment, at an instant where hpr can give no static margin
(FlightSummary::max_powered_moment_slope_per_rad):
the air turns the rocket away from its path, so it is unstable under power and its apogee
is not a prediction. Raised only when UnstableUnderPower
isn’t, so a flight raises one unstable flag at most.
Fields
BeyondValidatedRange
Faster than VALIDATED_MACH.
HighAngleOfAttack
Above HIGH_ANGLE_OF_ATTACK_RAD more than HIGH_ANGLE_GRACE_S after the rail exit and
before apogee or the first deployment, where a 15° angle would give a normal force of at
least HIGH_ANGLE_MIN_FORCE_SHARE of the weight
(FlightSummary::max_angle_of_attack_rad).
OutsideCoreBand
Past CORE_BAND_MACH.
BeyondEnvelope
Past ENVELOPE_MACH.
Implementations§
Trait Implementations§
Source§impl Clone for EnvelopeFlag
impl Clone for EnvelopeFlag
Source§fn clone(&self) -> EnvelopeFlag
fn clone(&self) -> EnvelopeFlag
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for EnvelopeFlag
Source§impl Debug for EnvelopeFlag
impl Debug for EnvelopeFlag
Source§impl<'de> Deserialize<'de> for EnvelopeFlag
impl<'de> Deserialize<'de> for EnvelopeFlag
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<EnvelopeFlag, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<EnvelopeFlag, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for EnvelopeFlag
impl PartialEq for EnvelopeFlag
Source§fn eq(&self, other: &EnvelopeFlag) -> bool
fn eq(&self, other: &EnvelopeFlag) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for EnvelopeFlag
impl Serialize for EnvelopeFlag
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for EnvelopeFlag
Auto Trait Implementations§
impl Freeze for EnvelopeFlag
impl RefUnwindSafe for EnvelopeFlag
impl Send for EnvelopeFlag
impl Sync for EnvelopeFlag
impl Unpin for EnvelopeFlag
impl UnsafeUnpin for EnvelopeFlag
impl UnwindSafe for EnvelopeFlag
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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