pub struct SymmetricEigen<T: Scalar, D: Dim>{
pub eigenvectors: OMatrix<T, D, D>,
pub eigenvalues: OVector<T, D>,
}
Expand description
Eigendecomposition of a real square symmetric matrix with real eigenvalues.
Fields§
§eigenvectors: OMatrix<T, D, D>
The eigenvectors of the decomposed matrix.
eigenvalues: OVector<T, D>
The unsorted eigenvalues of the decomposed matrix.
Implementations§
Source§impl<T: SymmetricEigenScalar + RealField, D: Dim> SymmetricEigen<T, D>
impl<T: SymmetricEigenScalar + RealField, D: Dim> SymmetricEigen<T, D>
Sourcepub fn new(m: OMatrix<T, D, D>) -> Self
pub fn new(m: OMatrix<T, D, D>) -> Self
Computes the eigenvalues and eigenvectors of the symmetric matrix m
.
Only the lower-triangular part of m
is read. If eigenvectors
is false
then, the
eigenvectors are not computed explicitly. Panics if the method did not converge.
Sourcepub fn try_new(m: OMatrix<T, D, D>) -> Option<Self>
pub fn try_new(m: OMatrix<T, D, D>) -> Option<Self>
Computes the eigenvalues and eigenvectors of the symmetric matrix m
.
Only the lower-triangular part of m
is read. If eigenvectors
is false
then, the
eigenvectors are not computed explicitly. Returns None
if the method did not converge.
Sourcepub fn eigenvalues(m: OMatrix<T, D, D>) -> OVector<T, D>
pub fn eigenvalues(m: OMatrix<T, D, D>) -> OVector<T, D>
Computes only the eigenvalues of the input matrix.
Panics if the method does not converge.
Sourcepub fn try_eigenvalues(m: OMatrix<T, D, D>) -> Option<OVector<T, D>>
pub fn try_eigenvalues(m: OMatrix<T, D, D>) -> Option<OVector<T, D>>
Computes only the eigenvalues of the input matrix.
Returns None
if the method does not converge.
Sourcepub fn determinant(&self) -> T
pub fn determinant(&self) -> T
The determinant of the decomposed matrix.
Trait Implementations§
Source§impl<T: Clone + Scalar, D: Clone + Dim> Clone for SymmetricEigen<T, D>
impl<T: Clone + Scalar, D: Clone + Dim> Clone for SymmetricEigen<T, D>
Source§fn clone(&self) -> SymmetricEigen<T, D>
fn clone(&self) -> SymmetricEigen<T, D>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreimpl<T: Scalar + Copy, D: Dim> Copy for SymmetricEigen<T, D>
Auto Trait Implementations§
impl<T, D> !Freeze for SymmetricEigen<T, D>
impl<T, D> !RefUnwindSafe for SymmetricEigen<T, D>
impl<T, D> !Send for SymmetricEigen<T, D>
impl<T, D> !Sync for SymmetricEigen<T, D>
impl<T, D> !Unpin for SymmetricEigen<T, D>
impl<T, D> !UnwindSafe for SymmetricEigen<T, D>
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.