pub struct JointRietveldRefinementOptions {
pub limits: RefinementLimits,
pub min_iterations: usize,
pub objective_tolerance: f64,
pub parameter_tolerance: f64,
pub initial_damping: f64,
pub damping_increase: f64,
pub damping_decrease: f64,
pub cg_tolerance: f64,
pub max_cg_iterations: usize,
pub max_scaled_parameter_step: f64,
pub max_backtracks: usize,
}Expand description
Numerical and bounded-runtime controls for a joint native refinement.
Fields§
§limits: RefinementLimitsHard iteration/evaluation/time/rejection limits.
min_iterations: usizeMinimum accepted iterations before objective convergence.
objective_tolerance: f64Relative accepted objective-change tolerance.
parameter_tolerance: f64Scaled step-norm tolerance.
initial_damping: f64Initial positive Levenberg damping in scaled coordinates.
damping_increase: f64Multiplier applied after an unsuccessful iteration.
damping_decrease: f64Multiplier applied after an accepted iteration.
cg_tolerance: f64Relative conjugate-gradient residual tolerance.
max_cg_iterations: usizeMaximum conjugate-gradient iterations per attempted step.
max_scaled_parameter_step: f64Maximum Euclidean scaled step norm.
max_backtracks: usizeNumber of half-step retries after the full trial.
Implementations§
Source§impl JointRietveldRefinementOptions
impl JointRietveldRefinementOptions
Sourcepub fn new(
limits: RefinementLimits,
min_iterations: usize,
objective_tolerance: f64,
parameter_tolerance: f64,
initial_damping: f64,
damping_increase: f64,
damping_decrease: f64,
cg_tolerance: f64,
max_cg_iterations: usize,
max_scaled_parameter_step: f64,
max_backtracks: usize,
) -> Result<Self, JointRietveldRefinementError>
pub fn new( limits: RefinementLimits, min_iterations: usize, objective_tolerance: f64, parameter_tolerance: f64, initial_damping: f64, damping_increase: f64, damping_decrease: f64, cg_tolerance: f64, max_cg_iterations: usize, max_scaled_parameter_step: f64, max_backtracks: usize, ) -> Result<Self, JointRietveldRefinementError>
Construct validated joint numerical controls.
§Errors
Returns JointRietveldRefinementError::InvalidOptions for invalid
tolerances, damping, iteration, or step controls.
Sourcepub fn validate(self) -> Result<(), JointRietveldRefinementError>
pub fn validate(self) -> Result<(), JointRietveldRefinementError>
Revalidate adapter-decoded joint numerical controls.
§Errors
Returns JointRietveldRefinementError::InvalidOptions for invalid
fields.
Trait Implementations§
Source§impl Clone for JointRietveldRefinementOptions
impl Clone for JointRietveldRefinementOptions
Source§fn clone(&self) -> JointRietveldRefinementOptions
fn clone(&self) -> JointRietveldRefinementOptions
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 JointRietveldRefinementOptions
impl StructuralPartialEq for JointRietveldRefinementOptions
Auto Trait Implementations§
impl Freeze for JointRietveldRefinementOptions
impl RefUnwindSafe for JointRietveldRefinementOptions
impl Send for JointRietveldRefinementOptions
impl Sync for JointRietveldRefinementOptions
impl Unpin for JointRietveldRefinementOptions
impl UnsafeUnpin for JointRietveldRefinementOptions
impl UnwindSafe for JointRietveldRefinementOptions
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> 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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Scalar for T
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.