pub struct LMConfig {
pub maxiter: usize,
pub tol: f64,
pub atol: f64,
pub lambda_init: f64,
pub jacobian_epsilon: f64,
pub x0: Array1<f64>,
pub weights: Option<Array1<f64>>,
pub disp: bool,
pub callback: Option<Box<dyn FnMut(&LMIntermediate) -> LMCallbackAction>>,
}Expand description
Configuration for the LM solver.
Fields§
§maxiter: usizeMaximum iterations (default 100).
tol: f64Relative convergence tolerance on the objective.
atol: f64Absolute convergence tolerance on the objective.
lambda_init: f64Initial damping parameter (default 1.0).
jacobian_epsilon: f64Finite-difference step for Jacobian approximation (default 1e-8).
x0: Array1<f64>Initial guess (required).
weights: Option<Array1<f64>>Per-residual weights (optional; default = uniform).
disp: boolPrint progress to stderr.
callback: Option<Box<dyn FnMut(&LMIntermediate) -> LMCallbackAction>>Optional progress callback.
Auto Trait Implementations§
impl Freeze for LMConfig
impl !RefUnwindSafe for LMConfig
impl !Send for LMConfig
impl !Sync for LMConfig
impl Unpin for LMConfig
impl UnsafeUnpin for LMConfig
impl !UnwindSafe for LMConfig
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
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 more