pub enum MonotoneRootError {
EvalFailed {
label: String,
a: f64,
source: String,
},
NonFiniteEval {
label: String,
a: f64,
f: f64,
fp: f64,
fpp: f64,
},
DegenerateDerivative {
label: String,
a: f64,
fp: f64,
},
BracketingExhausted {
label: String,
iters: usize,
a_lo: f64,
a_hi: f64,
},
RefinementDidNotConverge {
label: String,
iters: usize,
last_residual: f64,
},
}Expand description
Typed errors emitted by the monotone-root solver. Display preserves the
exact pre-refactor error-string shapes so log expectations are unchanged.
Variants§
EvalFailed
eval(a) returned an inner error message at the bracketing / refine step.
NonFiniteEval
eval(a) returned a non-finite tuple component (f, f’, or f’’).
DegenerateDerivative
Derivative at the initial / current point is zero or non-finite — monotonicity hypothesis violated.
BracketingExhausted
Bracketing failed to find a sign change within max_bracket_iters.
RefinementDidNotConverge
Newton refinement did not meet convergence_tol within max_refine_iters.
Implementations§
Source§impl MonotoneRootError
Internal: which exact textual shape a given error site emitted.
These are folded into the enum variants above via Display so callers see
byte-identical strings to the pre-refactor format!() output.
impl MonotoneRootError
Internal: which exact textual shape a given error site emitted. These are folded into the enum variants above via Display so callers see byte-identical strings to the pre-refactor format!() output.
pub fn exact_root_degenerate(label: &str, a: f64) -> Self
pub fn converged_root_degenerate(label: &str, a: f64) -> Self
pub fn analytic_bracket_invalid(label: &str, lo: f64, hi: f64) -> Self
pub fn analytic_bracket_no_straddle(label: &str, f_lo: f64, f_hi: f64) -> Self
pub fn search_exhausted(label: &str, step_sign: f64, a_init: f64) -> Self
Trait Implementations§
Source§impl Clone for MonotoneRootError
impl Clone for MonotoneRootError
Source§fn clone(&self) -> MonotoneRootError
fn clone(&self) -> MonotoneRootError
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for MonotoneRootError
impl Debug for MonotoneRootError
Source§impl Display for MonotoneRootError
impl Display for MonotoneRootError
Source§impl Error for MonotoneRootError
impl Error for MonotoneRootError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl From<MonotoneRootError> for EstimationError
impl From<MonotoneRootError> for EstimationError
Source§fn from(source: MonotoneRootError) -> Self
fn from(source: MonotoneRootError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for MonotoneRootError
impl RefUnwindSafe for MonotoneRootError
impl Send for MonotoneRootError
impl Sync for MonotoneRootError
impl Unpin for MonotoneRootError
impl UnsafeUnpin for MonotoneRootError
impl UnwindSafe for MonotoneRootError
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.