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 Matrix< RealScalar, internal::traits< MatrixType > ::ColsAtCompileTime, 1 > | EigenvaluesReturnType |
typedef MatrixType::Index | Index |
typedef internal::traits < SelfAdjointView > ::MatrixTypeNested | MatrixTypeNested |
typedef internal::traits < SelfAdjointView > ::MatrixTypeNestedCleaned | MatrixTypeNestedCleaned |
typedef MatrixType::PlainObject | PlainObject |
typedef NumTraits< Scalar >::Real | RealScalar |
typedef internal::traits < SelfAdjointView >::Scalar | Scalar |
The type of coefficients in this matrix. | |
Public Member Functions | |
const MatrixTypeNestedCleaned & | _expression () const |
Scalar | coeff (Index row, Index col) const |
Scalar & | coeffRef (Index row, Index col) |
Index | cols () const |
EigenvaluesReturnType | eigenvalues () const |
Computes the eigenvalues of a matrix. | |
Index | innerStride () const |
const LDLT< PlainObject, UpLo > | ldlt () const |
const LLT< PlainObject, UpLo > | llt () const |
const MatrixTypeNestedCleaned & | nestedExpression () const |
MatrixTypeNestedCleaned & | nestedExpression () |
template<typename OtherDerived > | |
SelfadjointProductMatrix < MatrixType, Mode, false, OtherDerived, 0, OtherDerived::IsVectorAtCompileTime > | operator* (const MatrixBase< OtherDerived > &rhs) const |
RealScalar | operatorNorm () const |
Computes the L2 operator norm. | |
Index | outerStride () const |
template<typename DerivedU , typename DerivedV > | |
SelfAdjointView & | rankUpdate (const MatrixBase< DerivedU > &u, const MatrixBase< DerivedV > &v, Scalar alpha=Scalar(1)) |
template<typename DerivedU > | |
SelfAdjointView & | rankUpdate (const MatrixBase< DerivedU > &u, Scalar alpha=Scalar(1)) |
Index | rows () const |
SelfAdjointView (MatrixType &matrix) | |
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) |
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 TriangularBase<SelfAdjointView> Eigen::SelfAdjointView< MatrixType, UpLo >::Base |
Definition at line 58 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 MatrixType::Index Eigen::SelfAdjointView< MatrixType, UpLo >::Index |
Reimplemented from Eigen::TriangularBase< SelfAdjointView< MatrixType, UpLo > >.
Definition at line 65 of file SelfAdjointView.h.
typedef internal::traits<SelfAdjointView>::MatrixTypeNested Eigen::SelfAdjointView< MatrixType, UpLo >::MatrixTypeNested |
Definition at line 59 of file SelfAdjointView.h.
typedef internal::traits<SelfAdjointView>::MatrixTypeNestedCleaned Eigen::SelfAdjointView< MatrixType, UpLo >::MatrixTypeNestedCleaned |
Definition at line 60 of file SelfAdjointView.h.
typedef MatrixType::PlainObject Eigen::SelfAdjointView< MatrixType, UpLo >::PlainObject |
Definition at line 70 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.
typedef internal::traits<SelfAdjointView>::Scalar Eigen::SelfAdjointView< MatrixType, UpLo >::Scalar |
The type of coefficients in this matrix.
Reimplemented from Eigen::TriangularBase< SelfAdjointView< MatrixType, UpLo > >.
Definition at line 63 of file SelfAdjointView.h.
anonymous enum |
Definition at line 67 of file SelfAdjointView.h.
Eigen::SelfAdjointView< MatrixType, UpLo >::SelfAdjointView | ( | MatrixType & | matrix | ) | [inline] |
Definition at line 72 of file SelfAdjointView.h.
const MatrixTypeNestedCleaned& Eigen::SelfAdjointView< MatrixType, UpLo >::_expression | ( | ) | const [inline] |
Definition at line 99 of file SelfAdjointView.h.
Scalar Eigen::SelfAdjointView< MatrixType, UpLo >::coeff | ( | Index | row, |
Index | col | ||
) | const [inline] |
Definition at line 83 of file SelfAdjointView.h.
Scalar& Eigen::SelfAdjointView< MatrixType, UpLo >::coeffRef | ( | Index | row, |
Index | col | ||
) | [inline] |
Definition at line 92 of file SelfAdjointView.h.
Index Eigen::SelfAdjointView< MatrixType, UpLo >::cols | ( | void | ) | const [inline] |
Reimplemented from Eigen::TriangularBase< SelfAdjointView< MatrixType, UpLo > >.
Definition at line 76 of file SelfAdjointView.h.
SelfAdjointView< MatrixType, UpLo >::EigenvaluesReturnType Eigen::SelfAdjointView< MatrixType, UpLo >::eigenvalues | ( | ) | const [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.
Index Eigen::SelfAdjointView< MatrixType, UpLo >::innerStride | ( | ) | const [inline] |
Reimplemented from Eigen::TriangularBase< SelfAdjointView< MatrixType, UpLo > >.
Definition at line 78 of file SelfAdjointView.h.
const LDLT< typename SelfAdjointView< MatrixType, UpLo >::PlainObject, UpLo > Eigen::SelfAdjointView< MatrixType, UpLo >::ldlt | ( | ) | const [inline] |
const LLT< typename SelfAdjointView< MatrixType, UpLo >::PlainObject, UpLo > Eigen::SelfAdjointView< MatrixType, UpLo >::llt | ( | ) | const [inline] |
const MatrixTypeNestedCleaned& Eigen::SelfAdjointView< MatrixType, UpLo >::nestedExpression | ( | ) | const [inline] |
Definition at line 101 of file SelfAdjointView.h.
MatrixTypeNestedCleaned& Eigen::SelfAdjointView< MatrixType, UpLo >::nestedExpression | ( | ) | [inline] |
Definition at line 102 of file SelfAdjointView.h.
SelfadjointProductMatrix<MatrixType,Mode,false,OtherDerived,0,OtherDerived::IsVectorAtCompileTime> Eigen::SelfAdjointView< MatrixType, UpLo >::operator* | ( | const MatrixBase< OtherDerived > & | rhs | ) | const [inline] |
Efficient self-adjoint matrix times vector/matrix product
Definition at line 107 of file SelfAdjointView.h.
SelfAdjointView< MatrixType, UpLo >::RealScalar Eigen::SelfAdjointView< MatrixType, UpLo >::operatorNorm | ( | ) | const [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 152 of file MatrixBaseEigenvalues.h.
Index Eigen::SelfAdjointView< MatrixType, UpLo >::outerStride | ( | ) | const [inline] |
Reimplemented from Eigen::TriangularBase< SelfAdjointView< MatrixType, UpLo > >.
Definition at line 77 of file SelfAdjointView.h.
SelfAdjointView< MatrixType, UpLo > & Eigen::SelfAdjointView< MatrixType, UpLo >::rankUpdate | ( | const MatrixBase< DerivedU > & | u, |
const MatrixBase< DerivedV > & | v, | ||
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.
Definition at line 61 of file SelfadjointRank2Update.h.
SelfAdjointView< MatrixType, UpLo > & Eigen::SelfAdjointView< MatrixType, UpLo >::rankUpdate | ( | const MatrixBase< DerivedU > & | u, |
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().
Definition at line 116 of file SelfadjointProduct.h.
Index Eigen::SelfAdjointView< MatrixType, UpLo >::rows | ( | void | ) | const [inline] |
Reimplemented from Eigen::TriangularBase< SelfAdjointView< MatrixType, UpLo > >.
Definition at line 75 of file SelfAdjointView.h.
SelfadjointProductMatrix<OtherDerived,0,OtherDerived::IsVectorAtCompileTime,MatrixType,Mode,false> operator* | ( | const MatrixBase< OtherDerived > & | lhs, |
const SelfAdjointView< MatrixType, UpLo > & | rhs | ||
) | [friend] |
Efficient vector/matrix times self-adjoint matrix product
Definition at line 117 of file SelfAdjointView.h.
MatrixTypeNested Eigen::SelfAdjointView< MatrixType, UpLo >::m_matrix [protected] |
Definition at line 189 of file SelfAdjointView.h.