pub enum LobpcgResult<A> {
Ok(Array1<A>, Array2<A>, Vec<A>),
Err(Array1<A>, Array2<A>, Vec<A>, LinalgError),
NoResult(LinalgError),
}
Expand description
The result of the eigensolver
In the best case the eigensolver has converged with a result better than the given threshold,
then a LobpcgResult::Ok
gives the eigenvalues, eigenvectors and norms. If an error ocurred
during the process, it is returned in LobpcgResult::Err
, but the best result is still returned,
as it could be usable. If there is no result at all, then LobpcgResult::NoResult
is returned.
This happens if the algorithm fails in an early stage, for example if the matrix A
is not SPD
Variants§
Ok(Array1<A>, Array2<A>, Vec<A>)
Err(Array1<A>, Array2<A>, Vec<A>, LinalgError)
NoResult(LinalgError)
Trait Implementations§
Auto Trait Implementations§
impl<A> Freeze for LobpcgResult<A>
impl<A> RefUnwindSafe for LobpcgResult<A>where
A: RefUnwindSafe,
impl<A> Send for LobpcgResult<A>where
A: Send,
impl<A> Sync for LobpcgResult<A>where
A: Sync,
impl<A> Unpin for LobpcgResult<A>where
A: Unpin,
impl<A> UnwindSafe for LobpcgResult<A>where
A: RefUnwindSafe + UnwindSafe,
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