10 #ifndef EIGEN_SIMPLICIAL_CHOLESKY_H
11 #define EIGEN_SIMPLICIAL_CHOLESKY_H
21 template <
typename CholMatrixType,
typename InputMatrixType>
30 template <
typename MatrixType>
50 template <
typename Derived>
84 Derived&
derived() {
return *
static_cast<Derived*
>(
this); }
85 const Derived&
derived()
const {
return *
static_cast<const Derived*
>(
this); }
124 #ifndef EIGEN_PARSED_BY_DOXYGEN
126 template <
typename Stream>
133 s <<
" diag: " << ((total +=
m_diag.size() *
sizeof(
Scalar)) >> 20) <<
"Mb"
135 s <<
" tree: " << ((total +=
m_parent.size() *
sizeof(
int)) >> 20) <<
"Mb"
137 s <<
" nonzeros: " << ((total +=
m_workSpace.size() *
sizeof(
int)) >> 20) <<
"Mb"
139 s <<
" perm: " << ((total +=
m_P.
size() *
sizeof(
int)) >> 20) <<
"Mb"
141 s <<
" perm^-1: " << ((total +=
m_Pinv.
size() *
sizeof(
int)) >> 20) <<
"Mb"
143 s <<
" TOTAL: " << (total >> 20) <<
"Mb"
148 template <
typename Rhs,
typename Dest>
151 "The decomposition is not in a valid state for solving, you must first call either compute() or "
152 "symbolic()/numeric()");
163 derived().matrixL().solveInPlace(dest);
165 if (
m_diag.size() > 0) dest =
m_diag.asDiagonal().inverse() * dest;
168 derived().matrixU().solveInPlace(dest);
173 template <
typename Rhs,
typename Dest>
182 template <
bool DoLDLT,
bool NonHermitian>
188 ordering<NonHermitian>(
matrix, pmat,
tmp);
190 factorize_preordered<DoLDLT, NonHermitian>(*pmat);
193 template <
bool DoLDLT,
bool NonHermitian>
204 internal::permute_symm_to_symm<UpLo, Upper, NonHermitian>(
a,
tmp,
m_P.
indices().data());
208 factorize_preordered<DoLDLT, NonHermitian>(*pmat);
211 template <
bool DoLDLT,
bool NonHermitian>
214 template <
bool DoLDLT,
bool NonHermitian>
220 ordering<NonHermitian>(
a, pmat,
tmp);
225 template <
bool NonHermitian>
251 template <
typename MatrixType_,
int UpLo_ =
Lower,
254 template <
typename MatrixType_,
int UpLo_ =
Lower,
257 template <
typename MatrixType_,
int UpLo_ =
Lower,
260 template <
typename MatrixType_,
int UpLo_ =
Lower,
263 template <
typename MatrixType_,
int UpLo_ =
Lower,
269 template <
typename MatrixType_,
int UpLo_,
typename Ordering_>
273 enum { UpLo = UpLo_ };
286 template <
typename MatrixType_,
int UpLo_,
typename Ordering_>
290 enum { UpLo = UpLo_ };
303 template <
typename MatrixType_,
int UpLo_,
typename Ordering_>
307 enum { UpLo = UpLo_ };
320 template <
typename MatrixType_,
int UpLo_,
typename Ordering_>
324 enum { UpLo = UpLo_ };
337 template <
typename MatrixType_,
int UpLo_,
typename Ordering_>
341 enum { UpLo = UpLo_ };
370 template <
typename MatrixType_,
int UpLo_,
typename Ordering_>
405 Base::template compute<false, false>(
matrix);
452 template <
typename MatrixType_,
int UpLo_,
typename Ordering_>
493 Base::template compute<true, false>(
matrix);
537 template <
typename MatrixType_,
int UpLo_,
typename Ordering_>
574 Base::template compute<false, true>(
matrix);
621 template <
typename MatrixType_,
int UpLo_,
typename Ordering_>
663 Base::template compute<true, true>(
matrix);
693 template <
typename MatrixType_,
int UpLo_,
typename Ordering_>
739 Base::template compute<true, false>(
matrix);
741 Base::template compute<false, false>(
matrix);
753 Base::template analyzePattern<true, false>(
a);
755 Base::template analyzePattern<false, false>(
a);
766 Base::template factorize<true, false>(
a);
768 Base::template factorize<false, false>(
a);
772 template <
typename Rhs,
typename Dest>
775 "The decomposition is not in a valid state for solving, you must first call either compute() or "
776 "symbolic()/numeric()");
808 template <
typename Rhs,
typename Dest>
826 template <
typename Derived>
827 template <
bool NonHermitian>
836 internal::permute_symm_to_fullsymm<UpLo, NonHermitian>(
a,
C, NULL);
842 if (m_Pinv.size() > 0)
843 m_P = m_Pinv.inverse();
848 internal::permute_symm_to_symm<UpLo, Upper, NonHermitian>(
a,
ap, m_P.indices().data());
852 if (
int(UpLo) ==
int(
Lower) || MatrixType::IsRowMajor) {
855 internal::permute_symm_to_symm<UpLo, Upper, NonHermitian>(
a,
ap, NULL);
AnnoyingScalar conj(const AnnoyingScalar &x)
Definition: AnnoyingScalar.h:133
#define eigen_assert(x)
Definition: Macros.h:910
Scalar Scalar int size
Definition: benchVecAdd.cpp:17
Scalar * b
Definition: benchVecAdd.cpp:17
SCALAR Scalar
Definition: bench_gemm.cpp:45
Matrix< Scalar, Dynamic, Dynamic > C
Definition: bench_gemm.cpp:49
NumTraits< Scalar >::Real RealScalar
Definition: bench_gemm.cpp:46
MatrixXf MatrixType
Definition: benchmark-blocking-sizes.cpp:52
Definition: Ordering.h:50
Expression of a diagonal/subdiagonal/superdiagonal in a matrix.
Definition: Diagonal.h:68
Base class for all dense matrices, vectors, and expressions.
Definition: MatrixBase.h:52
Definition: Ordering.h:89
EIGEN_DEVICE_FUNC Index size() const
Definition: PermutationMatrix.h:96
const IndicesType & indices() const
Definition: PermutationMatrix.h:334
A base class for direct sparse Cholesky factorizations.
Definition: SimplicialCholesky.h:51
Matrix< StorageIndex, Dynamic, 1 > VectorI
Definition: SimplicialCholesky.h:66
SparseSolverBase< Derived > Base
Definition: SimplicialCholesky.h:52
SimplicialCholeskyBase()
Definition: SimplicialCholesky.h:74
void factorize(const MatrixType &a)
Definition: SimplicialCholesky.h:194
MatrixType::RealScalar RealScalar
Definition: SimplicialCholesky.h:60
VectorI m_parent
Definition: SimplicialCholesky.h:242
Derived & derived()
Definition: SimplicialCholesky.h:84
CholMatrixType const * ConstCholMatrixPtr
Definition: SimplicialCholesky.h:64
void compute(const MatrixType &matrix)
Definition: SimplicialCholesky.h:183
void _solve_impl(const MatrixBase< Rhs > &b, MatrixBase< Dest > &dest) const
Definition: SimplicialCholesky.h:149
ComputationInfo info() const
Reports whether previous computation was successful.
Definition: SimplicialCholesky.h:95
bool m_analysisIsOk
Definition: SimplicialCholesky.h:238
MatrixType::Scalar Scalar
Definition: SimplicialCholesky.h:59
void dumpMemory(Stream &s)
Definition: SimplicialCholesky.h:127
SparseMatrix< Scalar, ColMajor, StorageIndex > CholMatrixType
Definition: SimplicialCholesky.h:63
CholMatrixType m_matrix
Definition: SimplicialCholesky.h:240
void _solve_impl(const SparseMatrixBase< Rhs > &b, SparseMatrixBase< Dest > &dest) const
Definition: SimplicialCholesky.h:174
void analyzePattern(const MatrixType &a)
Definition: SimplicialCholesky.h:215
const PermutationMatrix< Dynamic, Dynamic, StorageIndex > & permutationPinv() const
Definition: SimplicialCholesky.h:106
@ UpLo
Definition: SimplicialCholesky.h:58
DiagonalScalar m_shiftScale
Definition: SimplicialCholesky.h:248
MatrixType::StorageIndex StorageIndex
Definition: SimplicialCholesky.h:62
SimplicialCholeskyBase(const MatrixType &matrix)
Definition: SimplicialCholesky.h:77
DiagonalScalar m_shiftOffset
Definition: SimplicialCholesky.h:247
Index cols() const
Definition: SimplicialCholesky.h:87
Derived & setShift(const DiagonalScalar &offset, const DiagonalScalar &scale=1)
Definition: SimplicialCholesky.h:118
@ ColsAtCompileTime
Definition: SimplicialCholesky.h:68
@ MaxColsAtCompileTime
Definition: SimplicialCholesky.h:68
const PermutationMatrix< Dynamic, Dynamic, StorageIndex > & permutationP() const
Definition: SimplicialCholesky.h:102
internal::traits< Derived >::DiagonalScalar DiagonalScalar
Definition: SimplicialCholesky.h:61
VectorType m_diag
Definition: SimplicialCholesky.h:241
Index rows() const
Definition: SimplicialCholesky.h:88
const Derived & derived() const
Definition: SimplicialCholesky.h:85
Scalar getSymm(Scalar x)
Definition: SimplicialCholesky.h:229
void analyzePattern_preordered(const CholMatrixType &a, bool doLDLT)
Definition: SimplicialCholesky_impl.h:280
DiagonalScalar getDiag(Scalar x)
Definition: SimplicialCholesky.h:228
internal::traits< Derived >::MatrixType MatrixType
Definition: SimplicialCholesky.h:56
bool m_isInitialized
Definition: SparseSolverBase.h:110
void ordering(const MatrixType &a, ConstCholMatrixPtr &pmat, CholMatrixType &ap)
Definition: SimplicialCholesky.h:828
~SimplicialCholeskyBase()
Definition: SimplicialCholesky.h:82
bool m_factorizationIsOk
Definition: SimplicialCholesky.h:237
Matrix< Scalar, Dynamic, 1 > VectorType
Definition: SimplicialCholesky.h:65
void factorize_preordered(const CholMatrixType &a)
Definition: SimplicialCholesky_impl.h:296
VectorI m_workSpace
Definition: SimplicialCholesky.h:243
ComputationInfo m_info
Definition: SimplicialCholesky.h:236
PermutationMatrix< Dynamic, Dynamic, StorageIndex > m_Pinv
Definition: SimplicialCholesky.h:245
internal::traits< Derived >::OrderingType OrderingType
Definition: SimplicialCholesky.h:57
PermutationMatrix< Dynamic, Dynamic, StorageIndex > m_P
Definition: SimplicialCholesky.h:244
Definition: SimplicialCholesky.h:694
SimplicialCholesky()
Definition: SimplicialCholesky.h:708
void _solve_impl(const MatrixBase< Rhs > &b, MatrixBase< Dest > &dest) const
Definition: SimplicialCholesky.h:773
MatrixType::Scalar Scalar
Definition: SimplicialCholesky.h:699
bool m_LDLT
Definition: SimplicialCholesky.h:823
internal::traits< SimplicialLLT< MatrixType, UpLo > > LLTTraits
Definition: SimplicialCholesky.h:705
MatrixType::RealScalar RealScalar
Definition: SimplicialCholesky.h:700
SimplicialCholesky & compute(const MatrixType &matrix)
Definition: SimplicialCholesky.h:737
void factorize(const MatrixType &a)
Definition: SimplicialCholesky.h:764
SimplicialCholesky & setMode(SimplicialCholeskyMode mode)
Definition: SimplicialCholesky.h:712
void _solve_impl(const SparseMatrixBase< Rhs > &b, SparseMatrixBase< Dest > &dest) const
Definition: SimplicialCholesky.h:809
const VectorType vectorD() const
Definition: SimplicialCholesky.h:727
Matrix< Scalar, Dynamic, 1 > VectorType
Definition: SimplicialCholesky.h:703
void analyzePattern(const MatrixType &a)
Definition: SimplicialCholesky.h:751
MatrixType_ MatrixType
Definition: SimplicialCholesky.h:696
internal::traits< SimplicialLDLT< MatrixType, UpLo > > LDLTTraits
Definition: SimplicialCholesky.h:704
Scalar determinant() const
Definition: SimplicialCholesky.h:813
@ UpLo
Definition: SimplicialCholesky.h:697
SimplicialCholesky(const MatrixType &matrix)
Definition: SimplicialCholesky.h:710
SimplicialCholeskyBase< SimplicialCholesky > Base
Definition: SimplicialCholesky.h:698
MatrixType::StorageIndex StorageIndex
Definition: SimplicialCholesky.h:701
const CholMatrixType rawMatrix() const
Definition: SimplicialCholesky.h:731
SparseMatrix< Scalar, ColMajor, StorageIndex > CholMatrixType
Definition: SimplicialCholesky.h:702
A direct sparse LDLT Cholesky factorizations without square root.
Definition: SimplicialCholesky.h:453
MatrixType::RealScalar RealScalar
Definition: SimplicialCholesky.h:459
Traits::MatrixL MatrixL
Definition: SimplicialCholesky.h:464
Scalar determinant() const
Definition: SimplicialCholesky.h:514
const MatrixL matrixL() const
Definition: SimplicialCholesky.h:480
SimplicialLDLT(const MatrixType &matrix)
Definition: SimplicialCholesky.h:472
MatrixType::Scalar Scalar
Definition: SimplicialCholesky.h:458
const MatrixU matrixU() const
Definition: SimplicialCholesky.h:486
@ UpLo
Definition: SimplicialCholesky.h:456
SimplicialCholeskyBase< SimplicialLDLT > Base
Definition: SimplicialCholesky.h:457
SimplicialLDLT & compute(const MatrixType &matrix)
Definition: SimplicialCholesky.h:492
SparseMatrix< Scalar, ColMajor, StorageIndex > CholMatrixType
Definition: SimplicialCholesky.h:461
internal::traits< SimplicialLDLT > Traits
Definition: SimplicialCholesky.h:463
void analyzePattern(const MatrixType &a)
Definition: SimplicialCholesky.h:503
void factorize(const MatrixType &a)
Definition: SimplicialCholesky.h:511
MatrixType_ MatrixType
Definition: SimplicialCholesky.h:455
const VectorType vectorD() const
Definition: SimplicialCholesky.h:475
Traits::MatrixU MatrixU
Definition: SimplicialCholesky.h:465
Matrix< Scalar, Dynamic, 1 > VectorType
Definition: SimplicialCholesky.h:462
MatrixType::StorageIndex StorageIndex
Definition: SimplicialCholesky.h:460
SimplicialLDLT()
Definition: SimplicialCholesky.h:469
A direct sparse LLT Cholesky factorizations.
Definition: SimplicialCholesky.h:371
MatrixType::Scalar Scalar
Definition: SimplicialCholesky.h:376
MatrixType::StorageIndex StorageIndex
Definition: SimplicialCholesky.h:378
const MatrixL matrixL() const
Definition: SimplicialCholesky.h:392
Matrix< Scalar, Dynamic, 1 > VectorType
Definition: SimplicialCholesky.h:380
Scalar determinant() const
Definition: SimplicialCholesky.h:426
MatrixType_ MatrixType
Definition: SimplicialCholesky.h:373
SimplicialCholeskyBase< SimplicialLLT > Base
Definition: SimplicialCholesky.h:375
Traits::MatrixL MatrixL
Definition: SimplicialCholesky.h:382
@ UpLo
Definition: SimplicialCholesky.h:374
internal::traits< SimplicialLLT > Traits
Definition: SimplicialCholesky.h:381
SimplicialLLT & compute(const MatrixType &matrix)
Definition: SimplicialCholesky.h:404
MatrixType::RealScalar RealScalar
Definition: SimplicialCholesky.h:377
const MatrixU matrixU() const
Definition: SimplicialCholesky.h:398
SimplicialLLT()
Definition: SimplicialCholesky.h:387
void analyzePattern(const MatrixType &a)
Definition: SimplicialCholesky.h:415
SparseMatrix< Scalar, ColMajor, Index > CholMatrixType
Definition: SimplicialCholesky.h:379
void factorize(const MatrixType &a)
Definition: SimplicialCholesky.h:423
Traits::MatrixU MatrixU
Definition: SimplicialCholesky.h:383
SimplicialLLT(const MatrixType &matrix)
Definition: SimplicialCholesky.h:389
A direct sparse LDLT Cholesky factorizations without square root, for symmetric non-hermitian matrice...
Definition: SimplicialCholesky.h:623
SimplicialNonHermitianLDLT()
Definition: SimplicialCholesky.h:639
Scalar determinant() const
Definition: SimplicialCholesky.h:684
SimplicialCholeskyBase< SimplicialNonHermitianLDLT > Base
Definition: SimplicialCholesky.h:627
const MatrixU matrixU() const
Definition: SimplicialCholesky.h:656
Traits::MatrixU MatrixU
Definition: SimplicialCholesky.h:635
MatrixType_ MatrixType
Definition: SimplicialCholesky.h:625
@ UpLo
Definition: SimplicialCholesky.h:626
Matrix< Scalar, Dynamic, 1 > VectorType
Definition: SimplicialCholesky.h:632
Traits::MatrixL MatrixL
Definition: SimplicialCholesky.h:634
internal::traits< SimplicialNonHermitianLDLT > Traits
Definition: SimplicialCholesky.h:633
const MatrixL matrixL() const
Definition: SimplicialCholesky.h:650
const VectorType vectorD() const
Definition: SimplicialCholesky.h:645
SimplicialNonHermitianLDLT(const MatrixType &matrix)
Definition: SimplicialCholesky.h:642
void factorize(const MatrixType &a)
Definition: SimplicialCholesky.h:681
MatrixType::RealScalar RealScalar
Definition: SimplicialCholesky.h:629
MatrixType::StorageIndex StorageIndex
Definition: SimplicialCholesky.h:630
SparseMatrix< Scalar, ColMajor, StorageIndex > CholMatrixType
Definition: SimplicialCholesky.h:631
void analyzePattern(const MatrixType &a)
Definition: SimplicialCholesky.h:673
SimplicialNonHermitianLDLT & compute(const MatrixType &matrix)
Definition: SimplicialCholesky.h:662
MatrixType::Scalar Scalar
Definition: SimplicialCholesky.h:628
A direct sparse LLT Cholesky factorizations, for symmetric non-hermitian matrices.
Definition: SimplicialCholesky.h:539
void factorize(const MatrixType &a)
Definition: SimplicialCholesky.h:592
MatrixType::StorageIndex StorageIndex
Definition: SimplicialCholesky.h:546
const MatrixU matrixU() const
Definition: SimplicialCholesky.h:567
Matrix< Scalar, Dynamic, 1 > VectorType
Definition: SimplicialCholesky.h:548
internal::traits< SimplicialNonHermitianLLT > Traits
Definition: SimplicialCholesky.h:549
SimplicialNonHermitianLLT()
Definition: SimplicialCholesky.h:555
Traits::MatrixU MatrixU
Definition: SimplicialCholesky.h:551
MatrixType::Scalar Scalar
Definition: SimplicialCholesky.h:544
Scalar determinant() const
Definition: SimplicialCholesky.h:595
SimplicialCholeskyBase< SimplicialNonHermitianLLT > Base
Definition: SimplicialCholesky.h:543
MatrixType_ MatrixType
Definition: SimplicialCholesky.h:541
const MatrixL matrixL() const
Definition: SimplicialCholesky.h:561
SparseMatrix< Scalar, ColMajor, StorageIndex > CholMatrixType
Definition: SimplicialCholesky.h:547
Traits::MatrixL MatrixL
Definition: SimplicialCholesky.h:550
MatrixType::RealScalar RealScalar
Definition: SimplicialCholesky.h:545
void analyzePattern(const MatrixType &a)
Definition: SimplicialCholesky.h:584
SimplicialNonHermitianLLT(const MatrixType &matrix)
Definition: SimplicialCholesky.h:558
SimplicialNonHermitianLLT & compute(const MatrixType &matrix)
Definition: SimplicialCholesky.h:573
@ UpLo
Definition: SimplicialCholesky.h:542
Base class of any sparse matrices or sparse expressions.
Definition: SparseMatrixBase.h:30
Index nonZeros() const
Definition: SparseCompressedBase.h:64
const ConstDiagonalReturnType diagonal() const
Definition: SparseMatrix.h:757
Index cols() const
Definition: SparseMatrix.h:161
Index rows() const
Definition: SparseMatrix.h:159
A base class for sparse solvers.
Definition: SparseSolverBase.h:67
bool m_isInitialized
Definition: SparseSolverBase.h:110
Derived & derived()
Definition: SparseSolverBase.h:76
Expression of a triangular part in a matrix.
Definition: TriangularMatrix.h:167
Definition: matrices.h:74
Concept for reading and writing characters.
Eigen::Map< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic, Eigen::ColMajor >, 0, Eigen::OuterStride<> > matrix(T *data, int rows, int cols, int stride)
Definition: common.h:85
float real
Definition: datatypes.h:10
ComputationInfo
Definition: Constants.h:438
@ Lower
Definition: Constants.h:211
@ Upper
Definition: Constants.h:213
@ Success
Definition: Constants.h:440
RealScalar s
Definition: level1_cplx_impl.h:130
const Scalar * a
Definition: level2_cplx_impl.h:32
int * m
Definition: level2_cplx_impl.h:294
Scalar * ap
Definition: level2_cplx_impl.h:161
Eigen::Matrix< Scalar, Dynamic, Dynamic, ColMajor > tmp
Definition: level3_impl.h:365
std::enable_if_t< Rhs::ColsAtCompileTime !=1 &&Dest::ColsAtCompileTime !=1 > solve_sparse_through_dense_panels(const Decomposition &dec, const Rhs &rhs, Dest &dest)
Definition: SparseSolverBase.h:25
EIGEN_DEVICE_FUNC bool abs2(bool x)
Definition: MathFunctions.h:1102
Namespace containing all symbols from the Eigen library.
Definition: bench_norm.cpp:70
squared absolute value
Definition: GlobalFunctions.h:87
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
Definition: Meta.h:83
SimplicialCholeskyMode
Definition: SimplicialCholesky.h:18
@ SimplicialCholeskyLDLT
Definition: SimplicialCholesky.h:18
@ SimplicialCholeskyLLT
Definition: SimplicialCholesky.h:18
Definition: Eigen_Colamd.h:49
list x
Definition: plotDoE.py:28
Definition: SimplicialCholesky.h:232
bool operator()(const Index &row, const Index &col, const Scalar &) const
Definition: SimplicialCholesky.h:233
MatrixType::Scalar Scalar
Definition: SimplicialCholesky.h:342
static Scalar getSymm(Scalar x)
Definition: SimplicialCholesky.h:345
static DiagonalScalar getDiag(Scalar x)
Definition: SimplicialCholesky.h:344
MatrixType::RealScalar DiagonalScalar
Definition: SimplicialCholesky.h:343
MatrixType_ MatrixType
Definition: SimplicialCholesky.h:339
Ordering_ OrderingType
Definition: SimplicialCholesky.h:340
MatrixType::RealScalar DiagonalScalar
Definition: SimplicialCholesky.h:292
MatrixType_ MatrixType
Definition: SimplicialCholesky.h:288
TriangularView< const CholMatrixType, Eigen::UnitLower > MatrixL
Definition: SimplicialCholesky.h:295
TriangularView< const typename CholMatrixType::AdjointReturnType, Eigen::UnitUpper > MatrixU
Definition: SimplicialCholesky.h:296
static MatrixU getU(const CholMatrixType &m)
Definition: SimplicialCholesky.h:298
static DiagonalScalar getDiag(Scalar x)
Definition: SimplicialCholesky.h:299
MatrixType::Scalar Scalar
Definition: SimplicialCholesky.h:291
Ordering_ OrderingType
Definition: SimplicialCholesky.h:289
SparseMatrix< Scalar, ColMajor, StorageIndex > CholMatrixType
Definition: SimplicialCholesky.h:294
MatrixType::StorageIndex StorageIndex
Definition: SimplicialCholesky.h:293
static Scalar getSymm(Scalar x)
Definition: SimplicialCholesky.h:300
static MatrixL getL(const CholMatrixType &m)
Definition: SimplicialCholesky.h:297
static MatrixU getU(const CholMatrixType &m)
Definition: SimplicialCholesky.h:281
TriangularView< const typename CholMatrixType::AdjointReturnType, Eigen::Upper > MatrixU
Definition: SimplicialCholesky.h:279
static DiagonalScalar getDiag(Scalar x)
Definition: SimplicialCholesky.h:282
MatrixType_ MatrixType
Definition: SimplicialCholesky.h:271
static Scalar getSymm(Scalar x)
Definition: SimplicialCholesky.h:283
Ordering_ OrderingType
Definition: SimplicialCholesky.h:272
MatrixType::StorageIndex StorageIndex
Definition: SimplicialCholesky.h:276
static MatrixL getL(const CholMatrixType &m)
Definition: SimplicialCholesky.h:280
MatrixType::RealScalar DiagonalScalar
Definition: SimplicialCholesky.h:275
TriangularView< const CholMatrixType, Eigen::Lower > MatrixL
Definition: SimplicialCholesky.h:278
MatrixType::Scalar Scalar
Definition: SimplicialCholesky.h:274
SparseMatrix< Scalar, ColMajor, StorageIndex > CholMatrixType
Definition: SimplicialCholesky.h:277
static MatrixU getU(const CholMatrixType &m)
Definition: SimplicialCholesky.h:332
MatrixType::Scalar Scalar
Definition: SimplicialCholesky.h:325
TriangularView< const CholMatrixType, Eigen::UnitLower > MatrixL
Definition: SimplicialCholesky.h:329
static Scalar getSymm(Scalar x)
Definition: SimplicialCholesky.h:334
TriangularView< const typename CholMatrixType::ConstTransposeReturnType, Eigen::UnitUpper > MatrixU
Definition: SimplicialCholesky.h:330
MatrixType::StorageIndex StorageIndex
Definition: SimplicialCholesky.h:327
MatrixType::Scalar DiagonalScalar
Definition: SimplicialCholesky.h:326
static MatrixL getL(const CholMatrixType &m)
Definition: SimplicialCholesky.h:331
SparseMatrix< Scalar, ColMajor, StorageIndex > CholMatrixType
Definition: SimplicialCholesky.h:328
static DiagonalScalar getDiag(Scalar x)
Definition: SimplicialCholesky.h:333
Ordering_ OrderingType
Definition: SimplicialCholesky.h:323
MatrixType_ MatrixType
Definition: SimplicialCholesky.h:322
MatrixType::Scalar Scalar
Definition: SimplicialCholesky.h:308
static DiagonalScalar getDiag(Scalar x)
Definition: SimplicialCholesky.h:316
MatrixType::Scalar DiagonalScalar
Definition: SimplicialCholesky.h:309
MatrixType::StorageIndex StorageIndex
Definition: SimplicialCholesky.h:310
static Scalar getSymm(Scalar x)
Definition: SimplicialCholesky.h:317
Ordering_ OrderingType
Definition: SimplicialCholesky.h:306
static MatrixL getL(const CholMatrixType &m)
Definition: SimplicialCholesky.h:314
static MatrixU getU(const CholMatrixType &m)
Definition: SimplicialCholesky.h:315
SparseMatrix< Scalar, ColMajor, StorageIndex > CholMatrixType
Definition: SimplicialCholesky.h:311
TriangularView< const CholMatrixType, Eigen::Lower > MatrixL
Definition: SimplicialCholesky.h:312
MatrixType_ MatrixType
Definition: SimplicialCholesky.h:305
TriangularView< const typename CholMatrixType::ConstTransposeReturnType, Eigen::Upper > MatrixU
Definition: SimplicialCholesky.h:313
Definition: ForwardDeclarations.h:21