pub struct LanczosParams {
pub max_iter: usize,
pub tol: f64,
pub seed: Option<u64>,
}Expand description
Parameters controlling the Lanczos iteration.
Fields§
§max_iter: usizeMaximum number of Lanczos iterations. Capped internally at dim.
tol: f64Convergence tolerance, interpreted as the corresponding T::Real.
Used in two places: (1) the iteration loop exits as soon as the
cheap Lanczos residual estimate beta_j * |z[m-1]| falls at or
below tol, and (2) the returned LanczosResult::converged
flag is set from the true residual ||H psi - lambda psi||_2
against the same tol, so the flag is consistent with the
residual the caller sees.
seed: Option<u64>Optional seed for the initial vector. None draws from the OS RNG.
Trait Implementations§
Source§impl Clone for LanczosParams
impl Clone for LanczosParams
Source§fn clone(&self) -> LanczosParams
fn clone(&self) -> LanczosParams
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 LanczosParams
impl Debug for LanczosParams
Source§impl Default for LanczosParams
impl Default for LanczosParams
Source§impl From<LanczosParams> for LocalEigensolverParams
impl From<LanczosParams> for LocalEigensolverParams
Source§fn from(p: LanczosParams) -> Self
fn from(p: LanczosParams) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for LanczosParams
impl RefUnwindSafe for LanczosParams
impl Send for LanczosParams
impl Sync for LanczosParams
impl Unpin for LanczosParams
impl UnsafeUnpin for LanczosParams
impl UnwindSafe for LanczosParams
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> 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 more