Template Struct TridiagonalSymmetricMatrixTpl

Inheritance Relationships

Base Type

  • public Eigen::ReturnByValue< TridiagonalSymmetricMatrixTpl< _Scalar, _Options > >

Struct Documentation

template<typename _Scalar, int _Options>
struct TridiagonalSymmetricMatrixTpl : public Eigen::ReturnByValue<TridiagonalSymmetricMatrixTpl<_Scalar, _Options>>

Dynamic size Tridiagonal symmetric matrix type This class is in practice used in Lanczos decomposition.

Public Types

Values:

enumerator Options
typedef _Scalar Scalar
typedef Eigen::Matrix<Scalar, Eigen::Dynamic, 1, Options> CoeffVectorType
typedef traits<Self>::PlainMatrixType PlainMatrixType

Public Functions

inline explicit TridiagonalSymmetricMatrixTpl(const Eigen::DenseIndex size)

Default constructor from a given size.

inline bool operator==(const TridiagonalSymmetricMatrixTpl &other) const
inline bool operator!=(const TridiagonalSymmetricMatrixTpl &other) const
inline TridiagonalSymmetricMatrixInverse<Self> inverse() const
inline CoeffVectorType &diagonal()
inline const CoeffVectorType &diagonal() const
inline CoeffVectorType &subDiagonal()
inline const CoeffVectorType &subDiagonal() const
inline void setIdentity()
inline bool isIdentity(const Scalar prec = Eigen::NumTraits<Scalar>::dummy_precision()) const
inline void setZero()
inline bool isZero(const Scalar prec = Eigen::NumTraits<Scalar>::dummy_precision()) const
inline void setRandom()
inline bool isDiagonal(const Scalar prec = Eigen::NumTraits<Scalar>::dummy_precision()) const
template<typename VectorCoeffType>
inline void setDiagonal(const Eigen::MatrixBase<VectorCoeffType> &diagonal_coefficients)
inline EIGEN_CONSTEXPR Eigen::Index rows () const EIGEN_NOEXCEPT
inline EIGEN_CONSTEXPR Eigen::Index cols () const EIGEN_NOEXCEPT
inline PlainMatrixType matrix() const
template<typename ResultType>
inline void evalTo(ResultType &result) const
template<typename MatrixDerived>
inline TridiagonalSymmetricMatrixApplyOnTheRightReturnType<Self, MatrixDerived> applyOnTheRight(const Eigen::MatrixBase<MatrixDerived> &mat) const
template<typename MatrixDerived>
inline TridiagonalSymmetricMatrixApplyOnTheLeftReturnType<MatrixDerived, Self> applyOnTheLeft(const Eigen::MatrixBase<MatrixDerived> &mat) const
template<typename MatrixDerived>
inline TridiagonalSymmetricMatrixApplyOnTheRightReturnType<Self, MatrixDerived> operator*(const Eigen::MatrixBase<MatrixDerived> &mat) const

Public Members

EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef TridiagonalSymmetricMatrixTpl Self

Protected Attributes

Eigen::DenseIndex m_size
CoeffVectorType m_diagonal
CoeffVectorType m_sub_diagonal