pub struct GradientFreeStatus {
pub message: String,
pub x: DVector<Float>,
pub fx: Float,
pub n_f_evals: usize,
pub converged: bool,
pub hess: Option<DMatrix<Float>>,
pub cov: Option<DMatrix<Float>>,
pub err: Option<DVector<Float>>,
}Expand description
A status message struct containing all information about a minimization result.
Fields§
§message: String§x: DVector<Float>The current parameters of the minimization.
fx: FloatThe current value of the minimization problem function at GradientFreeStatus::x.
n_f_evals: usizeThe number of function evaluations (approximately, this is left up to individual
Algorithms to correctly compute and may not be exact).
converged: boolFlag that says whether or not the fit is in a converged state.
hess: Option<DMatrix<Float>>The Hessian matrix at the end of the fit (None if not computed yet)
cov: Option<DMatrix<Float>>Covariance matrix at the end of the fit (None if not computed yet)
err: Option<DVector<Float>>Errors on parameters at the end of the fit (None if not computed yet)
Implementations§
Source§impl GradientFreeStatus
impl GradientFreeStatus
Sourcepub fn with_message(&mut self, message: &str)
pub fn with_message(&mut self, message: &str)
Updates the GradientFreeStatus::message field.
Sourcepub fn with_position(&mut self, pos: (DVector<Float>, Float))
pub fn with_position(&mut self, pos: (DVector<Float>, Float))
Updates the GradientFreeStatus::x and GradientFreeStatus::fx fields.
Sourcepub fn set_converged(&mut self)
pub fn set_converged(&mut self)
Sets GradientFreeStatus::converged to be true.
Sourcepub fn inc_n_f_evals(&mut self)
pub fn inc_n_f_evals(&mut self)
Increments GradientFreeStatus::n_f_evals by 1.
Sourcepub fn with_cov(&mut self, covariance: Option<DMatrix<Float>>)
pub fn with_cov(&mut self, covariance: Option<DMatrix<Float>>)
Updates the GradientFreeStatus::err field.
Sourcepub fn with_hess(&mut self, hessian: &DMatrix<Float>)
pub fn with_hess(&mut self, hessian: &DMatrix<Float>)
Updates the GradientFreeStatus::hess field and computes GradientFreeStatus::cov and GradientFreeStatus::err.
Trait Implementations§
Source§impl<P, U, E> Algorithm<P, GradientFreeStatus, U, E> for NelderMeadwhere
P: CostFunction<U, E>,
impl<P, U, E> Algorithm<P, GradientFreeStatus, U, E> for NelderMeadwhere
P: CostFunction<U, E>,
Source§type Summary = MinimizationSummary
type Summary = MinimizationSummary
Source§type Config = NelderMeadConfig
type Config = NelderMeadConfig
Source§fn initialize(
&mut self,
problem: &P,
status: &mut GradientFreeStatus,
args: &U,
config: &Self::Config,
) -> Result<(), E>
fn initialize( &mut self, problem: &P, status: &mut GradientFreeStatus, args: &U, config: &Self::Config, ) -> Result<(), E>
Source§fn step(
&mut self,
_current_step: usize,
problem: &P,
status: &mut GradientFreeStatus,
args: &U,
config: &Self::Config,
) -> Result<(), E>
fn step( &mut self, _current_step: usize, problem: &P, status: &mut GradientFreeStatus, args: &U, config: &Self::Config, ) -> Result<(), E>
Source§fn summarize(
&self,
_current_step: usize,
_func: &P,
status: &GradientFreeStatus,
_args: &U,
config: &Self::Config,
) -> Result<MinimizationSummary, E>
fn summarize( &self, _current_step: usize, _func: &P, status: &GradientFreeStatus, _args: &U, config: &Self::Config, ) -> Result<MinimizationSummary, E>
Algorithm::Summary from the current state of the Algorithm, which can be displayed or used elsewhere. Read moreSource§fn default_callbacks() -> Callbacks<Self, P, GradientFreeStatus, U, E, Self::Config>where
Self: Sized,
fn default_callbacks() -> Callbacks<Self, P, GradientFreeStatus, U, E, Self::Config>where
Self: Sized,
Algorithm.Source§fn postprocessing(
&mut self,
problem: &P,
status: &mut S,
args: &U,
config: &Self::Config,
) -> Result<(), E>
fn postprocessing( &mut self, problem: &P, status: &mut S, args: &U, config: &Self::Config, ) -> Result<(), E>
Source§impl Clone for GradientFreeStatus
impl Clone for GradientFreeStatus
Source§fn clone(&self) -> GradientFreeStatus
fn clone(&self) -> GradientFreeStatus
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for GradientFreeStatus
impl Debug for GradientFreeStatus
Source§impl Default for GradientFreeStatus
impl Default for GradientFreeStatus
Source§fn default() -> GradientFreeStatus
fn default() -> GradientFreeStatus
Source§impl<'de> Deserialize<'de> for GradientFreeStatus
impl<'de> Deserialize<'de> for GradientFreeStatus
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for GradientFreeStatus
impl Serialize for GradientFreeStatus
Source§impl Status for GradientFreeStatus
impl Status for GradientFreeStatus
Source§fn reset(&mut self)
fn reset(&mut self)
Algorithm::process run. Only members that are
not persistent between runs should be reset. For example, the initial parameters of
a minimization should not be reset.Source§fn update_message(&mut self, message: &str)
fn update_message(&mut self, message: &str)
Source§impl<P, U, E> Terminator<NelderMead, P, GradientFreeStatus, U, E, NelderMeadConfig> for NelderMeadFTerminatorwhere
P: CostFunction<U, E>,
impl<P, U, E> Terminator<NelderMead, P, GradientFreeStatus, U, E, NelderMeadConfig> for NelderMeadFTerminatorwhere
P: CostFunction<U, E>,
Source§fn check_for_termination(
&mut self,
_current_step: usize,
algorithm: &mut NelderMead,
_problem: &P,
status: &mut GradientFreeStatus,
_args: &U,
_config: &NelderMeadConfig,
) -> ControlFlow<()>
fn check_for_termination( &mut self, _current_step: usize, algorithm: &mut NelderMead, _problem: &P, status: &mut GradientFreeStatus, _args: &U, _config: &NelderMeadConfig, ) -> ControlFlow<()>
Algorithm.Source§impl<P, U, E> Terminator<NelderMead, P, GradientFreeStatus, U, E, NelderMeadConfig> for NelderMeadXTerminatorwhere
P: CostFunction<U, E>,
impl<P, U, E> Terminator<NelderMead, P, GradientFreeStatus, U, E, NelderMeadConfig> for NelderMeadXTerminatorwhere
P: CostFunction<U, E>,
Source§fn check_for_termination(
&mut self,
_current_step: usize,
algorithm: &mut NelderMead,
_problem: &P,
status: &mut GradientFreeStatus,
_args: &U,
_config: &NelderMeadConfig,
) -> ControlFlow<()>
fn check_for_termination( &mut self, _current_step: usize, algorithm: &mut NelderMead, _problem: &P, status: &mut GradientFreeStatus, _args: &U, _config: &NelderMeadConfig, ) -> ControlFlow<()>
Algorithm.Auto Trait Implementations§
impl Freeze for GradientFreeStatus
impl RefUnwindSafe for GradientFreeStatus
impl Send for GradientFreeStatus
impl Sync for GradientFreeStatus
impl Unpin for GradientFreeStatus
impl UnwindSafe for GradientFreeStatus
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Serialize for T
impl<T> Serialize for T
fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<(), Error>
fn do_erased_serialize( &self, serializer: &mut dyn Serializer, ) -> Result<(), ErrorImpl>
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>
self from the equivalent element of its
superset. Read moreSource§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).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.