pub struct RrLUOptions {
pub max_rank: usize,
pub rel_tol: f64,
pub abs_tol: f64,
pub left_orthogonal: bool,
}Expand description
Options for rank-revealing LU decomposition.
§Examples
use tensor4all_tcicore::RrLUOptions;
// Default: rel_tol = 1e-14, no absolute tolerance, no rank limit
let opts = RrLUOptions::default();
assert_eq!(opts.rel_tol, 1e-14);
assert_eq!(opts.abs_tol, 0.0);
assert!(opts.left_orthogonal);
// Limit rank to 5
let opts = RrLUOptions { max_rank: 5, ..Default::default() };
assert_eq!(opts.max_rank, 5);Fields§
§max_rank: usizeMaximum rank
rel_tol: f64Relative tolerance
abs_tol: f64Absolute tolerance
left_orthogonal: boolLeft orthogonal (L has 1s on diagonal) or right orthogonal (U has 1s)
Trait Implementations§
Source§impl Clone for RrLUOptions
impl Clone for RrLUOptions
Source§fn clone(&self) -> RrLUOptions
fn clone(&self) -> RrLUOptions
Returns a duplicate of the value. Read more
1.0.0 · 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 RrLUOptions
impl Debug for RrLUOptions
Auto Trait Implementations§
impl Freeze for RrLUOptions
impl RefUnwindSafe for RrLUOptions
impl Send for RrLUOptions
impl Sync for RrLUOptions
impl Unpin for RrLUOptions
impl UnsafeUnpin for RrLUOptions
impl UnwindSafe for RrLUOptions
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
Casts
self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read moreSource§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,
§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
fn rand<T>(&self, rng: &mut (impl Rng + ?Sized)) -> Twhere
Self: Distribution<T>,
§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
fn rand<T>(&self, rng: &mut (impl Rng + ?Sized)) -> Twhere
Self: Distribution<T>,
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