Shapeworks Studio
2.1
Shape analysis software suite
|
Expression of a selfadjoint matrix from a triangular part of a dense matrix. More...
#include <SelfAdjointView.h>
Public Types | |
enum | { Mode = internal::traits<SelfAdjointView>::Mode } |
typedef TriangularBase< SelfAdjointView > | Base |
typedef internal::traits< SelfAdjointView >::MatrixTypeNested | MatrixTypeNested |
typedef internal::traits< SelfAdjointView >::MatrixTypeNestedCleaned | MatrixTypeNestedCleaned |
typedef internal::traits< SelfAdjointView >::Scalar | Scalar |
The type of coefficients in this matrix. | |
typedef MatrixType::Index | Index |
typedef MatrixType::PlainObject | PlainObject |
typedef NumTraits< Scalar >::Real | RealScalar |
typedef Matrix< RealScalar, internal::traits< MatrixType >::ColsAtCompileTime, 1 > | EigenvaluesReturnType |
Public Types inherited from Eigen::TriangularBase< SelfAdjointView< MatrixType, UpLo > > | |
enum | |
typedef internal::traits< SelfAdjointView< MatrixType, UpLo > >::Scalar | Scalar |
typedef internal::traits< SelfAdjointView< MatrixType, UpLo > >::StorageKind | StorageKind |
typedef internal::traits< SelfAdjointView< MatrixType, UpLo > >::Index | Index |
typedef internal::traits< SelfAdjointView< MatrixType, UpLo > >::DenseMatrixType | DenseMatrixType |
typedef DenseMatrixType | DenseType |
Public Types inherited from Eigen::EigenBase< Derived > | |
typedef internal::traits< Derived >::StorageKind | StorageKind |
typedef internal::traits< Derived >::Index | Index |
Public Member Functions | |
SelfAdjointView (MatrixType &matrix) | |
Index | rows () const |
Index | cols () const |
Index | outerStride () const |
Index | innerStride () const |
Scalar | coeff (Index row, Index col) const |
Scalar & | coeffRef (Index row, Index col) |
const MatrixTypeNestedCleaned & | _expression () const |
const MatrixTypeNestedCleaned & | nestedExpression () const |
MatrixTypeNestedCleaned & | nestedExpression () |
template<typename OtherDerived > | |
SelfadjointProductMatrix< MatrixType, Mode, false, OtherDerived, 0, OtherDerived::IsVectorAtCompileTime > | operator* (const MatrixBase< OtherDerived > &rhs) const |
template<typename DerivedU , typename DerivedV > | |
SelfAdjointView & | rankUpdate (const MatrixBase< DerivedU > &u, const MatrixBase< DerivedV > &v, const Scalar &alpha=Scalar(1)) |
template<typename DerivedU > | |
SelfAdjointView & | rankUpdate (const MatrixBase< DerivedU > &u, const Scalar &alpha=Scalar(1)) |
const LLT< PlainObject, UpLo > | llt () const |
const LDLT< PlainObject, UpLo > | ldlt () const |
EigenvaluesReturnType | eigenvalues () const |
Computes the eigenvalues of a matrix. More... | |
RealScalar | operatorNorm () const |
Computes the L2 operator norm. More... | |
template<typename DerivedU > | |
SelfAdjointView< MatrixType, UpLo > & | rankUpdate (const MatrixBase< DerivedU > &u, const Scalar &alpha) |
template<typename DerivedU , typename DerivedV > | |
SelfAdjointView< MatrixType, UpLo > & | rankUpdate (const MatrixBase< DerivedU > &u, const MatrixBase< DerivedV > &v, const Scalar &alpha) |
Public Member Functions inherited from Eigen::TriangularBase< SelfAdjointView< MatrixType, UpLo > > | |
Index | rows () const |
Index | cols () const |
Index | outerStride () const |
Index | innerStride () const |
Scalar | coeff (Index row, Index col) const |
Scalar & | coeffRef (Index row, Index col) |
EIGEN_STRONG_INLINE void | copyCoeff (Index row, Index col, Other &other) |
Scalar | operator() (Index row, Index col) const |
Scalar & | operator() (Index row, Index col) |
const SelfAdjointView< MatrixType, UpLo > & | derived () const |
SelfAdjointView< MatrixType, UpLo > & | derived () |
void | evalTo (MatrixBase< DenseDerived > &other) const |
void | evalToLazy (MatrixBase< DenseDerived > &other) const |
DenseMatrixType | toDenseMatrix () const |
Public Member Functions inherited from Eigen::EigenBase< Derived > | |
Derived & | derived () |
const Derived & | derived () const |
Derived & | const_cast_derived () const |
const Derived & | const_derived () const |
Index | rows () const |
Index | cols () const |
Index | size () const |
template<typename Dest > | |
void | evalTo (Dest &dst) const |
template<typename Dest > | |
void | addTo (Dest &dst) const |
template<typename Dest > | |
void | subTo (Dest &dst) const |
template<typename Dest > | |
void | applyThisOnTheRight (Dest &dst) const |
template<typename Dest > | |
void | applyThisOnTheLeft (Dest &dst) const |
Protected Attributes | |
MatrixTypeNested | m_matrix |
Friends | |
template<typename OtherDerived > | |
SelfadjointProductMatrix< OtherDerived, 0, OtherDerived::IsVectorAtCompileTime, MatrixType, Mode, false > | operator* (const MatrixBase< OtherDerived > &lhs, const SelfAdjointView &rhs) |
Additional Inherited Members | |
Protected Member Functions inherited from Eigen::TriangularBase< SelfAdjointView< MatrixType, UpLo > > | |
void | check_coordinates (Index row, Index col) const |
void | check_coordinates_internal (Index, Index) const |
Expression of a selfadjoint matrix from a triangular part of a dense matrix.
MatrixType | the type of the dense matrix storing the coefficients |
TriangularPart | can be either #Lower or #Upper |
This class is an expression of a sefladjoint matrix from a triangular part of a matrix with given dense storage of the coefficients. It is the return type of MatrixBase::selfadjointView() and most of the time this is the only way that it is used.
Definition at line 53 of file SelfAdjointView.h.
typedef Matrix<RealScalar, internal::traits<MatrixType>::ColsAtCompileTime, 1> Eigen::SelfAdjointView< MatrixType, UpLo >::EigenvaluesReturnType |
Return type of eigenvalues()
Definition at line 160 of file SelfAdjointView.h.
typedef NumTraits<Scalar>::Real Eigen::SelfAdjointView< MatrixType, UpLo >::RealScalar |
Real part of Scalar
Definition at line 158 of file SelfAdjointView.h.
|
inline |
Definition at line 83 of file SelfAdjointView.h.
|
inline |
Definition at line 92 of file SelfAdjointView.h.
|
inline |
Computes the eigenvalues of a matrix.
This function computes the eigenvalues with the help of the SelfAdjointEigenSolver class. The eigenvalues are repeated according to their algebraic multiplicity, so there are as many eigenvalues as rows in the matrix.
Example:
Output:
Definition at line 89 of file MatrixBaseEigenvalues.h.
|
inline |
|
inline |
|
inline |
Efficient self-adjoint matrix times vector/matrix product
Definition at line 107 of file SelfAdjointView.h.
|
inline |
Computes the L2 operator norm.
This function computes the L2 operator norm of a self-adjoint matrix. For a self-adjoint matrix, the operator norm is the largest eigenvalue.
The current implementation uses the eigenvalues of the matrix, as computed by eigenvalues(), to compute the operator norm of the matrix.
Example:
Output:
Definition at line 153 of file MatrixBaseEigenvalues.h.
SelfAdjointView& Eigen::SelfAdjointView< MatrixType, UpLo >::rankUpdate | ( | const MatrixBase< DerivedU > & | u, |
const MatrixBase< DerivedV > & | v, | ||
const Scalar & | alpha = Scalar(1) |
||
) |
Perform a symmetric rank 2 update of the selfadjoint matrix *this
:
*this
The vectors u and v
must be column vectors, however they can be a adjoint expression without any overhead. Only the meaningful triangular part of the matrix is updated, the rest is left unchanged.
SelfAdjointView& Eigen::SelfAdjointView< MatrixType, UpLo >::rankUpdate | ( | const MatrixBase< DerivedU > & | u, |
const Scalar & | alpha = Scalar(1) |
||
) |
Perform a symmetric rank K update of the selfadjoint matrix *this
: where u is a vector or matrix.
*this
Note that to perform you can simply call this function with u.adjoint().
|
friend |
Efficient vector/matrix times self-adjoint matrix product
Definition at line 117 of file SelfAdjointView.h.