pub struct UffOptimizer {
pub max_iterations: usize,
pub force_threshold: f64,
pub verbose: bool,
pub num_threads: usize,
pub cutoff: f64,
pub history_size: usize,
pub max_displacement: f64,
}Expand description
Optimizer for molecular structures using the FIRE (Fast Iterative Relaxation Engine) algorithm.
Fields§
§max_iterations: usizeMaximum number of iterations to perform.
force_threshold: f64Threshold for the maximum force on any atom (kcal/mol/Å).
verbose: boolWhether to print optimization progress to stdout.
num_threads: usizeNumber of threads to use. 0 means automatic based on system size.
cutoff: f64Cutoff distance for non-bonded interactions (Å).
history_size: usizeNumber of steps to average for convergence criteria.
max_displacement: f64Maximum distance an atom can move in a single step (Å).
Implementations§
Source§impl UffOptimizer
impl UffOptimizer
Sourcepub fn new(max_iterations: usize, force_threshold: f64) -> Self
pub fn new(max_iterations: usize, force_threshold: f64) -> Self
Creates a new optimizer with default settings.
pub fn with_max_displacement(self, max: f64) -> Self
pub fn with_num_threads(self, num_threads: usize) -> Self
pub fn with_cutoff(self, cutoff: f64) -> Self
pub fn with_history_size(self, size: usize) -> Self
pub fn with_verbose(self, verbose: bool) -> Self
Auto Trait Implementations§
impl Freeze for UffOptimizer
impl RefUnwindSafe for UffOptimizer
impl Send for UffOptimizer
impl Sync for UffOptimizer
impl Unpin for UffOptimizer
impl UnsafeUnpin for UffOptimizer
impl UnwindSafe for UffOptimizer
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