10 #ifndef EIGEN_BANDMATRIX_H 11 #define EIGEN_BANDMATRIX_H 17 template<
typename Derived>
60 inline const CoefficientsType&
coeffs()
const {
return derived().coeffs(); }
79 len = std::max<Index>(0,
coeffs().rows() - (i + 1 -
rows() +
subs()));
134 template<
typename Dest>
inline void evalTo(Dest& dst)
const 177 template<
typename _Scalar,
int _Rows,
int _Cols,
int _Supers,
int _Subs,
int _Options>
198 template<
typename _Scalar,
int Rows,
int Cols,
int Supers,
int Subs,
int Options>
225 inline const CoefficientsType&
coeffs()
const {
return m_coeffs; }
226 inline CoefficientsType&
coeffs() {
return m_coeffs; }
236 template<
typename _CoefficientsType,
int _Rows,
int _Cols,
int _Supers,
int _Subs,
int _Options>
239 template<
typename _CoefficientsType,
int _Rows,
int _Cols,
int _Supers,
int _Subs,
int _Options>
260 template<
typename _CoefficientsType,
int _Rows,
int _Cols,
int _Supers,
int _Subs,
int _Options>
289 inline const CoefficientsType&
coeffs()
const {
return m_coeffs; }
311 template<
typename Scalar,
int Size,
int Options>
320 {
return Base::template diagonal<1>(); }
322 {
return Base::template diagonal<1>(); }
324 {
return Base::template
diagonal<-1>(); }
326 {
return Base::template
diagonal<-1>(); }
333 template<
typename _Scalar,
int _Rows,
int _Cols,
int _Supers,
int _Subs,
int _Options>
340 template<
typename _CoefficientsType,
int _Rows,
int _Cols,
int _Supers,
int _Subs,
int _Options>
342 :
public evaluator_traits_base<BandMatrixWrapper<_CoefficientsType,_Rows,_Cols,_Supers,_Subs,_Options> >
353 #endif // EIGEN_BANDMATRIX_H internal::variable_if_dynamic< Index, _Rows > m_rows
internal::variable_if_dynamic< Index, _Supers > m_supers
TridiagonalMatrix(Index size=Size)
_CoefficientsType::StorageIndex StorageIndex
internal::variable_if_dynamic< Index, Supers > m_supers
CoefficientsType & coeffs()
DenseMatrixType::StorageIndex StorageIndex
const CoefficientsType & coeffs() const
internal::traits< BandMatrixWrapper >::Scalar Scalar
const Base::template DiagonalIntReturnType< 1 >::Type super() const
const unsigned int LvalueBit
internal::traits< Derived >::CoefficientsType CoefficientsType
Represents a rectangular matrix with a banded storage.
EIGEN_CONSTEXPR Index subs() const
Namespace containing all symbols from the Eigen library.
Holds information about the various numeric (i.e. scalar) types allowed by Eigen. ...
EIGEN_CONSTEXPR Index cols() const
#define EIGEN_STATIC_ASSERT(CONDITION, MSG)
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index cols() const EIGEN_NOEXCEPT
Eigen::Index Index
The interface type of indices.
EIGEN_CONSTEXPR Index rows() const
internal::traits< Derived >::Scalar Scalar
Block< CoefficientsType, 1, SizeAtCompileTime > diagonal()
EigenBase< Derived > Base
const CoefficientsType & m_coeffs
Base::template DiagonalIntReturnType< 1 >::Type super()
cout<< "Here is the matrix m:"<< endl<< m<< endl;Matrix< ptrdiff_t, 3, 1 > res
const Block< const CoefficientsType, 1, Dynamic > diagonal(Index i) const
DiagonalIntReturnType< N >::Type diagonal()
internal::variable_if_dynamic< Index, Subs > m_subs
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index size() const EIGEN_NOEXCEPT
internal::traits< BandMatrix >::CoefficientsType CoefficientsType
Represents a tridiagonal matrix with a compact banded storage.
_CoefficientsType::StorageKind StorageKind
internal::traits< BandMatrix >::Scalar Scalar
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
BandMatrix(Index rows=Rows, Index cols=Cols, Index supers=Supers, Index subs=Subs)
Base::StorageIndex StorageIndex
void evalTo(Dest &dst) const
internal::variable_if_dynamic< Index, _Subs > m_subs
Matrix< Scalar, DataRowsAtCompileTime, ColsAtCompileTime, int(Options) &int(RowMajor) ? RowMajor :ColMajor > CoefficientsType
_CoefficientsType CoefficientsType
EIGEN_CONSTEXPR Index rows() const
const CoefficientsType & coeffs() const
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index rows() const EIGEN_NOEXCEPT
const Block< const CoefficientsType, 1, SizeAtCompileTime > diagonal() const
internal::traits< BandMatrixWrapper >::StorageIndex StorageIndex
EIGEN_CONSTEXPR Index supers() const
CoefficientsType m_coeffs
BandMatrixWrapper(const CoefficientsType &coeffs, Index rows=_Rows, Index cols=_Cols, Index supers=_Supers, Index subs=_Subs)
CoefficientsType & coeffs()
Expression of a fixed-size or dynamic-size block.
EIGEN_CONSTEXPR Index cols() const
internal::traits< BandMatrix >::StorageIndex StorageIndex
Block< CoefficientsType, 1, DiagonalSize > BuildType
const CoefficientsType & coeffs() const
BandMatrix< Scalar, Size, Size, Options &SelfAdjoint?0:1, 1, Options|RowMajor > Base
EIGEN_CONSTEXPR Index subs() const
Index diagonalLength(Index i) const
internal::variable_if_dynamic< Index, Rows > m_rows
Block< CoefficientsType, Dynamic, 1 > col(Index i)
Eigen::Index StorageIndex
Block< CoefficientsType, 1, Dynamic > diagonal(Index i)
_CoefficientsType::Scalar Scalar
Matrix< Scalar, RowsAtCompileTime, ColsAtCompileTime > DenseMatrixType
internal::conditional< Conjugate, CwiseUnaryOp< internal::scalar_conjugate_op< Scalar >, BuildType >, BuildType >::type Type
Generic expression where a coefficient-wise unary operator is applied to an expression.
The matrix class, also used for vectors and row-vectors.
size_t len(handle h)
Get the length of a Python object.
#define EIGEN_SIZE_MIN_PREFER_DYNAMIC(a, b)
EIGEN_DEVICE_FUNC Derived & derived()
const Base::template DiagonalIntReturnType<-1 >::Type sub() const
const DiagonalIntReturnType< N >::Type diagonal() const
DenseMatrixType toDenseMatrix() const
#define EIGEN_UNUSED_VARIABLE(var)
internal::traits< BandMatrixWrapper >::CoefficientsType CoefficientsType
EIGEN_CONSTEXPR Index supers() const
Base::template DiagonalIntReturnType<-1 >::Type sub()