template<typename MatrixType_, unsigned int UpLo>
class Eigen::SelfAdjointView< MatrixType_, UpLo >
Expression of a selfadjoint matrix from a triangular part of a dense matrix.
- Template Parameters
-
| MatrixType | the type of the dense matrix storing the coefficients |
| TriangularPart | can be either Lower or Upper |
This class is an expression of a selfadjoint 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.
- See also
- class TriangularBase, MatrixBase::selfadjointView()
|
| BunchKaufman< PlainObject, UpLo > | bunchKaufman () const |
| |
| MatrixType::ConstDiagonalReturnType | diagonal () const |
| |
| EigenvaluesReturnType | eigenvalues () const |
| | Computes the eigenvalues of a matrix.
|
| |
| RealScalar | l1Norm () const |
| |
| LDLT< PlainObject, UpLo > | ldlt () const |
| |
| LLT< PlainObject, UpLo > | llt () const |
| |
| const Product< SelfAdjointView, Inverse< OtherDerived > > | operator* (const InverseImpl< OtherDerived, PermutationStorage > &rhs) const |
| |
| const Product< SelfAdjointView, OtherDerived > | operator* (const PermutationBase< OtherDerived > &rhs) const |
| |
| const Product< SelfAdjointView, OtherDerived > | operator* (const TriangularBase< OtherDerived > &rhs) const |
| |
| SelfAdjointView & | operator*= (const Scalar &other) |
| |
| template<typename OtherDerived> |
| SelfAdjointView & | operator+= (const DenseBase< OtherDerived > &other) |
| |
| template<typename OtherDerived> |
| SelfAdjointView & | operator-= (const DenseBase< OtherDerived > &other) |
| |
| SelfAdjointView & | operator/= (const Scalar &other) |
| |
| template<typename OtherDerived> |
| SelfAdjointView & | operator= (const MatrixBase< OtherDerived > &other) |
| |
| template<typename OtherDerived> |
| SelfAdjointView & | operator= (const TriangularBase< OtherDerived > &other) |
| |
| RealScalar | operatorNorm () const |
| | Computes the L2 operator norm.
|
| |
| 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)) |
| |
| template<unsigned int TriMode> |
| std::conditional_t<(TriMode &(Upper|Lower))==(UpLo &(Upper|Lower)), TriangularView< MatrixType, TriMode >, TriangularView< typename MatrixType::AdjointReturnType, TriMode > > | triangularView () const |
| |
| const AdjointReturnType | adjoint () const |
| |
| Scalar | coeff (Index row, Index col) const |
| |
| Scalar & | coeffRef (Index row, Index col) |
| |
| const ConjugateReturnType | conjugate () const |
| |
| std::conditional_t< Cond, ConjugateReturnType, ConstView > | conjugateIf () const |
| |
| void | copyCoeff (Index row, Index col, Other &other) |
| |
| void | evalTo (MatrixBase< DenseDerived > &other) const |
| |
| void | evalToLazy (MatrixBase< DenseDerived > &other) const |
| |
| void | fill (const Scalar &value) |
| |
| Scalar & | operator() (Index row, Index col) |
| |
| Scalar | operator() (Index row, Index col) const |
| |
| const Product< SelfAdjointView< MatrixType_, UpLo >, Inverse< OtherDerived > > | operator* (const InverseImpl< OtherDerived, PermutationStorage > &rhs) const |
| |
| const Product< SelfAdjointView< MatrixType_, UpLo >, OtherDerived > | operator* (const PermutationBase< OtherDerived > &rhs) const |
| |
| const Product< SelfAdjointView< MatrixType_, UpLo >, OtherDerived > | operator* (const TriangularBase< OtherDerived > &rhs) const |
| |
| auto | operator+ (const DiagonalBase< OtherDerived > &other) const |
| |
| auto | operator- (const DiagonalBase< OtherDerived > &other) const |
| |
| SelfAdjointView< MatrixType_, UpLo > & | setConstant (const Scalar &value) |
| |
| SelfAdjointView< MatrixType_, UpLo > & | setIdentity () |
| |
| SelfAdjointView< MatrixType_, UpLo > & | setOnes () |
| |
| SelfAdjointView< MatrixType_, UpLo > & | setRandom () |
| |
| SelfAdjointView< MatrixType_, UpLo > & | setZero () |
| |
| TransposeReturnType | transpose () |
| |
| const ConstTransposeReturnType | transpose () const |
| |
| constexpr Index | cols () const noexcept |
| |
| constexpr SelfAdjointView< MatrixType_, UpLo > & | derived () |
| |
| constexpr const SelfAdjointView< MatrixType_, UpLo > & | derived () const |
| |
| constexpr Index | rows () const noexcept |
| |
| constexpr Index | size () const noexcept |
| |
template<typename MatrixType, unsigned int UpLo>
Computes the L2 operator norm.
- Returns
- Operator norm of the matrix.
This is defined in the Eigenvalues module.
#include <Eigen/Eigenvalues>
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:
cout <<
"The operator norm of the 3x3 matrix of ones is " << ones.selfadjointView<
Lower>().
operatorNorm() << endl;
RealScalar operatorNorm() const
Computes the L2 operator norm.
Definition MatrixBaseEigenvalues.h:136
Output:
The operator norm of the 3x3 matrix of ones is 3
- See also
- eigenvalues(), MatrixBase::operatorNorm()
template<typename MatrixType_, unsigned int UpLo>
template<typename DerivedU, typename DerivedV>
Perform a symmetric rank 2 update of the selfadjoint matrix *this: \( this = this + \alpha u v^* + conj(\alpha) v u^* \)
- Returns
- a reference to
*this
The vectors u and v must be column vectors, however they can be an adjoint expression without any overhead. Only the meaningful triangular part of the matrix is updated, the rest is left unchanged.
- See also
- rankUpdate(const MatrixBase<DerivedU>&, Scalar)
template<typename MatrixType_, unsigned int UpLo>
template<unsigned int TriMode>
- Returns
- an expression of a triangular view extracted from the current selfadjoint view of a given triangular part
The parameter TriMode can have the following values: Upper, StrictlyUpper, UnitUpper, Lower, StrictlyLower, UnitLower.
If TriMode references the same triangular part than *this, then this method simply return a TriangularView of the nested expression, otherwise, the nested expression is first transposed, thus returning a TriangularView<Transpose<MatrixType>> object.
- See also
- MatrixBase::triangularView(), class TriangularView