dune-fem 2.8.0
|
SparseRowMatrixObject. More...
#include <dune/fem/operator/matrix/spmatrix.hh>
Classes | |
class | LocalMatrix |
LocalMatrix. More... | |
struct | LocalMatrixTraits |
LocalMatrixTraits. More... | |
Public Member Functions | |
SparseRowMatrixObject (const DomainSpaceType &domainSpace, const RangeSpaceType &rangeSpace, const SolverParameter ¶m=SolverParameter()) | |
construct matrix object | |
const DomainSpaceType & | domainSpace () const |
get domain space (i.e. space that builds the rows) | |
const RangeSpaceType & | rangeSpace () const |
get range space (i.e. space that builds the columns) | |
MatrixType & | exportMatrix () const |
get reference to storage object | |
ObjectType * | newObject () const |
interface method from LocalMatrixFactory | |
LocalMatrixType | localMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity) const |
LocalMatrixType | localMatrix () const |
LocalColumnObjectType | localColumn (const DomainEntityType &domainEntity) const |
get local column | |
void | unitRow (const size_type row) |
template<class LocalBlock > | |
void | addBlock (const size_type row, const size_type col, const LocalBlock &block) |
template<class LocalBlock > | |
void | setBlock (const size_type row, const size_type col, const LocalBlock &block) |
template<class LocalMatrix > | |
void | addLocalMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity, const LocalMatrix &localMat) |
template<class LocalMatrix , class Scalar > | |
void | addScaledLocalMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity, const LocalMatrix &localMat, const Scalar &s) |
template<class LocalMatrix > | |
void | setLocalMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity, const LocalMatrix &localMat) |
template<class LocalMatrix > | |
void | getLocalMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity, LocalMatrix &localMat) const |
void | clear () |
clear matrix | |
void | compress () |
compress matrix to a real CRS format | |
template<class Set > | |
void | reserve (const std::vector< Set > &sparsityPattern) |
template<class Stencil > | |
void | reserve (const Stencil &stencil, bool verbose=false) |
reserve memory | |
template<class DomainFunction , class RangeFunction > | |
void | apply (const DomainFunction &arg, RangeFunction &dest) const |
apply matrix to discrete function | |
template<class DiscreteFunctionType > | |
void | extractDiagonal (DiscreteFunctionType &diag) const |
template<class Vector > | |
void | setUnitRows (const Vector &rows) |
void | resort () |
resort row numbering in matrix to have ascending numbering | |
Static Public Attributes | |
static const size_type | domainLocalBlockSize = DomainSpaceType::dimRange |
static const size_type | rangeLocalBlockSize = RangeSpaceType::dimRange |
Protected Member Functions | |
MatrixType & | matrix () const |
get reference to storage object, for internal use | |
void | finalizeAssembly () const |
Protected Attributes | |
const DomainSpaceType & | domainSpace_ |
const RangeSpaceType & | rangeSpace_ |
DomainMapperType | domainMapper_ |
RangeMapperType | rangeMapper_ |
int | sequence_ |
MatrixType | matrix_ |
bool | preconditioning_ |
LocalMatrixStackType | localMatrixStack_ |
typedef MatrixBlockType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::block_type |
typedef DomainSpaceType::EntityType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::ColumnEntityType |
typedef DomainSpaceType::BlockMapperType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::DomainBlockMapperType |
typedef DomainSpaceType::EntityType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::DomainEntityType |
typedef NonBlockMapper< DomainBlockMapperType, DomainSpaceType::localBlockSize > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::DomainMapperType |
typedef DomainSpace Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::DomainSpaceType |
typedef MatrixType::field_type Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::field_type |
typedef ColumnObject< ThisType > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::LocalColumnObjectType |
typedef ThisType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::LocalMatrixFactoryType |
typedef Fem::ObjectStack< LocalMatrixFactoryType > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::LocalMatrixStackType |
typedef LocalMatrixWrapper< LocalMatrixStackType > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::LocalMatrixType |
typedef Dune::FieldMatrix< field_type, rangeLocalBlockSize, domainLocalBlockSize > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::MatrixBlockType |
typedef Matrix Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::MatrixType |
typedef LocalMatrix<ThisType> Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::ObjectType |
typedef MatrixType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::PreconditionMatrixType |
typedef RangeSpaceType::BlockMapperType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::RangeBlockMapperType |
typedef RangeSpaceType::EntityType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::RangeEntityType |
typedef NonBlockMapper< RangeBlockMapperType, RangeSpaceType::localBlockSize > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::RangeMapperType |
typedef RangeSpace Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::RangeSpaceType |
typedef RangeSpaceType::EntityType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::RowEntityType |
typedef MatrixType::size_type Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::size_type |
typedef SparseRowMatrixObject< DomainSpaceType, RangeSpaceType, MatrixType > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::ThisType |
|
inline |
construct matrix object
|
inline |
|
inline |
|
inline |
|
inline |
apply matrix to discrete function
|
inline |
clear matrix
|
inline |
compress matrix to a real CRS format
|
inline |
get domain space (i.e. space that builds the rows)
|
inline |
get reference to storage object
|
inline |
extract diagonal entries from matrix into discrete function this only works for square matrices
|
inlineprotected |
|
inline |
|
inline |
get local column
|
inline |
|
inline |
|
inlineprotected |
get reference to storage object, for internal use
|
inline |
interface method from LocalMatrixFactory
|
inline |
get range space (i.e. space that builds the columns)
|
inline |
|
inline |
reserve memory
|
inline |
resort row numbering in matrix to have ascending numbering
|
inline |
|
inline |
|
inline |
|
inline |
|
static |
|
protected |
|
protected |
|
mutableprotected |
|
mutableprotected |
|
protected |
|
static |
|
protected |
|
protected |
|
protected |