pub enum NyxError {
Show 41 variants
SingularStateTransitionMatrix,
FuelExhausted(Box<Spacecraft>),
ConditionNeverTriggered,
UnsufficientTriggers(usize, usize),
MaxIterReached(String),
EventNotInEpochBraket(String, String),
StateTransitionMatrixUnset,
SensitivityNotUpdated,
SingularKalmanGain,
SingularCovarianceMatrix,
CovarianceMatrixNotPsd,
SingularJacobian,
TargetsTooClose,
LambertNotReasonablePhi,
LambertMultiRevNotSupported,
PartialsUndefined,
StateParameterUnavailable,
LoadingError(String),
FileUnreadable(String),
ObjectNotFound(String),
NoInterpolationData(String),
InvalidInterpolationData(String),
NoStateData(String),
DisjointFrameOrientations(String, String),
NoThrusterAvail,
CtrlNotAUnitVector(f64),
CtrlThrottleRangeErr(f64),
PolynomialOrderError(usize),
NoObjectiveDefined,
ExportError(String),
NotHyperbolic(String),
CorrectionIneffective(String),
MonteCarlo(String),
CCSDS(String),
MultipleShootingTargeter(usize, Box<NyxError>),
CustomError(String),
TimeError(TimeErrors),
Targeter(Box<TargetingError>),
Trajectory(TrajError),
MathDomain(String),
GuidanceConfigError(String),
}
Variants§
SingularStateTransitionMatrix
STM is singular, propagation or smoothing cannot proceed
FuelExhausted(Box<Spacecraft>)
Fuel exhausted at the provided spacecraft state
ConditionNeverTriggered
Propagation event not triggered within the max propagation time
UnsufficientTriggers(usize, usize)
Propagation event not hit enough times (requested, found).
MaxIterReached(String)
Maximum iterations reached
EventNotInEpochBraket(String, String)
Event not found within the provided epochs
StateTransitionMatrixUnset
The operation was expecting the state to have an STM, but it isn’t present.
SensitivityNotUpdated
The sensitivity matrix must be updated prior to a filter measurement update
SingularKalmanGain
Kalman Gain could not be computed because HP_barH + R is singular
SingularCovarianceMatrix
Singular Covariance
CovarianceMatrixNotPsd
Covariance is not positive semi definite
SingularJacobian
Singular Jacobian
TargetsTooClose
Targets in Lambert solver too close: Δν ~=0 and A ~=0
LambertNotReasonablePhi
No reasonable phi found to connect both radii
LambertMultiRevNotSupported
Multi revolution Lambert not supported, use the Izzo algorithm for multi-rev transfers
PartialsUndefined
Partials for this dynamical model are not defined
State parameter cannot be used in this function
LoadingError(String)
Could not load file
FileUnreadable(String)
Could not read file
ObjectNotFound(String)
Celestial object or spacecraft not found
NoInterpolationData(String)
No interpolation data
InvalidInterpolationData(String)
Invalid interpolation data
NoStateData(String)
No state data
DisjointFrameOrientations(String, String)
Cannot convert the state to another frame as the frames are disjoint
NoThrusterAvail
No thruster attached to spacecraft
CtrlNotAUnitVector(f64)
Control vector is not a unit vector
CtrlThrottleRangeErr(f64)
Throttle is not between 0.0 and 1.0
PolynomialOrderError(usize)
Happens when trying to modify a polynomial’s (error)-th error but the polynomial has less orders than that
NoObjectiveDefined
An objective based analysis or control was attempted, but no objective was defined
ExportError(String)
Error when exporting data
NotHyperbolic(String)
This computation requires the orbit to be hyperbolic
CorrectionIneffective(String)
Control variables to not decrease targeting error in differential corrector
MonteCarlo(String)
Monte Carlo error
CCSDS(String)
CCSDS error
MultipleShootingTargeter(usize, Box<NyxError>)
Multiple shooting failed with the provided error at the provided node computation
CustomError(String)
TimeError(TimeErrors)
Time related error
Targeter(Box<TargetingError>)
Targeting error
Trajectory(TrajError)
Trajectory error
MathDomain(String)
Math domain
GuidanceConfigError(String)
Guidance law config error
Trait Implementations§
source§impl Error for NyxError
impl Error for NyxError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
source§impl From<Errors> for NyxError
impl From<Errors> for NyxError
source§fn from(e: TimeErrors) -> Self
fn from(e: TimeErrors) -> Self
source§impl From<NyxError> for ParsingError
impl From<NyxError> for ParsingError
source§impl From<TargetingError> for NyxError
impl From<TargetingError> for NyxError
source§fn from(e: TargetingError) -> Self
fn from(e: TargetingError) -> Self
source§impl PartialEq<NyxError> for NyxError
impl PartialEq<NyxError> for NyxError
impl StructuralPartialEq for NyxError
Auto Trait Implementations§
impl RefUnwindSafe for NyxError
impl Send for NyxError
impl Sync for NyxError
impl Unpin for NyxError
impl UnwindSafe for NyxError
Blanket Implementations§
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> Printing<T> for Twhere
T: Display,
impl<T> Printing<T> for Twhere T: Display,
§fn to_str(self) -> String
fn to_str(self) -> String
printing.rs
. §fn to_plainstr(self) -> String
fn to_plainstr(self) -> String
printing.rs
.§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.