PhysicsBasedAnimationToolkit 0.0.10
Cross-platform C++20 library of algorithms and data structures commonly used in computer graphics research on physically-based simulation.
|
Sparsity pattern precomputer to accelerate sparse matrix assembly. More...
#include <SparsityPattern.h>
Public Types | |
using | IndexType = TIndex |
Index type for the matrix indices. | |
using | InnerPatternType |
Type of the inner pattern. | |
Public Member Functions | |
template<common::CContiguousIndexRange TRowIndexRange, common::CContiguousIndexRange TColIndexRange> | |
SparsityPattern (IndexType nRows, IndexType nCols, TRowIndexRange &&rowIndices, TColIndexRange &&colIndices) | |
template<common::CContiguousIndexRange TRowIndexRange, common::CContiguousIndexRange TColIndexRange> | |
void | Compute (IndexType nRows, IndexType nCols, TRowIndexRange &&rowIndices, TColIndexRange &&colIndices) |
template<common::CArithmeticRange TNonZeroRange> | |
auto | ToMatrix (TNonZeroRange &&nonZeros) const -> Eigen::SparseMatrix< std::ranges::range_value_t< TNonZeroRange >, Options, TIndex > |
template<common::CArithmeticRange TNonZeroRange, class TDerived> | |
void | To (TNonZeroRange &&nonZeros, Eigen::SparseCompressedBase< TDerived > &Ain) const |
template<common::CArithmeticRange TNonZeroRange, class TDerived> | |
void | AddTo (TNonZeroRange &&nonZeros, Eigen::SparseCompressedBase< TDerived > &Ain) const |
PBAT_API bool | IsEmpty () const |
template<common::CFloatingPoint TScalar> | |
auto | Pattern () const -> Eigen::SparseMatrix< TScalar, Options, TIndex > |
Sparsity pattern precomputer to accelerate sparse matrix assembly.
using pbat::math::linalg::SparsityPattern< TIndex, Options >::InnerPatternType |
Type of the inner pattern.