![]() |
|
a class to manipulate the L supernodal factor from the SparseLU factorization More...
#include <SparseLU_SupernodalMatrix.h>
Classes | |
class | InnerIterator |
InnerIterator class to iterate over nonzero values of the current column in the supernodal matrix L. More... | |
Public Types | |
typedef Scalar_ | Scalar |
typedef StorageIndex_ | StorageIndex |
typedef Matrix< StorageIndex, Dynamic, 1 > | IndexVector |
typedef Matrix< Scalar, Dynamic, 1 > | ScalarVector |
Protected Attributes | |
Index | m_row |
Index | m_col |
Index | m_nsuper |
Scalar * | m_nzval |
StorageIndex * | m_nzval_colptr |
StorageIndex * | m_rowind |
StorageIndex * | m_rowind_colptr |
StorageIndex * | m_col_to_sup |
StorageIndex * | m_sup_to_col |
a class to manipulate the L supernodal factor from the SparseLU factorization
This class contain the data to easily store and manipulate the supernodes during the factorization and solution phase of Sparse LU. Only the lower triangular matrix has supernodes.
NOTE : This class corresponds to the SCformat structure in SuperLU
typedef Matrix<StorageIndex, Dynamic, 1> Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::IndexVector |
typedef Scalar_ Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::Scalar |
typedef Matrix<Scalar, Dynamic, 1> Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::ScalarVector |
typedef StorageIndex_ Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::StorageIndex |
|
inline |
|
inline |
References m, n, and Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::setInfos().
|
inline |
|
inline |
Return the pointers to the beginning of each column in valuePtr()
References Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_nzval_colptr.
|
inline |
|
inline |
Number of columns
References Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_col.
Referenced by gdb.printers._MatrixEntryIterator::__next__(), gdb.printers.EigenMatrixPrinter::children(), gdb.printers.EigenSparseMatrixPrinter::children(), gdb.printers.EigenMatrixPrinter::to_string(), and gdb.printers.EigenSparseMatrixPrinter::to_string().
|
inline |
Return the array of column-to-supernode mapping
References Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_col_to_sup.
|
inline |
|
inline |
Return the number of supernodes
References Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_nsuper.
|
inline |
Return the array of compressed row indices of all supernodes
References Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_rowind.
|
inline |
|
inline |
Return the location in rowvaluePtr() which starts each column
References Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_rowind_colptr.
|
inline |
|
inline |
Number of rows
References Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_row.
Referenced by gdb.printers._MatrixEntryIterator::__next__(), gdb.printers.EigenMatrixPrinter::children(), gdb.printers.EigenSparseMatrixPrinter::children(), gdb.printers.EigenMatrixPrinter::to_string(), and gdb.printers.EigenSparseMatrixPrinter::to_string().
|
inline |
Set appropriate pointers for the lower triangular supernodal matrix These infos are available at the end of the numerical factorization FIXME This class will be modified such that it can be use in the course of the factorization.
References Eigen::PlainObjectBase< Derived >::data(), m, Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_col, Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_col_to_sup, Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_nsuper, Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_nzval, Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_nzval_colptr, Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_row, Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_rowind, Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_rowind_colptr, Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_sup_to_col, and n.
Referenced by Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::MappedSuperNodalMatrix().
void Eigen::internal::MappedSuperNodalMatrix< Scalar, Index_ >::solveInPlace | ( | MatrixBase< Dest > & | X | ) | const |
Solve with the supernode triangular matrix.
References i, int(), j, k, lda, n, Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::InnerIterator::row(), Eigen::PlainObjectBase< Derived >::setZero(), RachelsAdvectionDiffusion::U, Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::InnerIterator::value(), and X.
void Eigen::internal::MappedSuperNodalMatrix< Scalar, Index_ >::solveTransposedInPlace | ( | MatrixBase< Dest > & | X | ) | const |
References conj(), Eigen::conj(), i, int(), j, k, lda, n, Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::InnerIterator::row(), Eigen::PlainObjectBase< Derived >::setZero(), RachelsAdvectionDiffusion::U, Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::InnerIterator::value(), and X.
|
inline |
Return the array of supernode-to-column mapping
References Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_sup_to_col.
|
inline |
|
inline |
Return the array of nonzero values packed by column
The size is nnz
References Eigen::internal::MappedSuperNodalMatrix< Scalar_, StorageIndex_ >::m_nzval.
|
inline |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |