|
dune-fem 2.12-git
|
Loading...
Searching...
No Matches
Classes |
Public Types |
Public Member Functions |
Static Public Attributes |
Protected Member Functions |
Protected Attributes |
List of all members
Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix > Class Template Reference
SparseRowMatrixObject. More...
#include <dune/fem/operator/matrix/spmatrix.hh>
Inheritance diagram for Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >:

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 Container > | |
| void | setUnitRows (const Container &unitRows, const Container &auxRows) |
| 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_ |
| LocalMatrixStackType | localMatrixStack_ |
Detailed Description
template<class DomainSpace, class RangeSpace, class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
class Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >
class Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >
Member Typedef Documentation
◆ block_type
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef MatrixBlockType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::block_type |
◆ ColumnEntityType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef DomainSpaceType::EntityType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::ColumnEntityType |
◆ DomainBlockMapperType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef DomainSpaceType::BlockMapperType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::DomainBlockMapperType |
◆ DomainEntityType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef DomainSpaceType::EntityType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::DomainEntityType |
◆ DomainMapperType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef NonBlockMapper< DomainBlockMapperType, DomainSpaceType::localBlockSize > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::DomainMapperType |
◆ DomainSpaceType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef DomainSpace Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::DomainSpaceType |
◆ field_type
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef MatrixType::field_type Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::field_type |
◆ LocalColumnObjectType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef ColumnObject< ThisType > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::LocalColumnObjectType |
◆ LocalMatrixFactoryType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef ThisType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::LocalMatrixFactoryType |
◆ LocalMatrixStackType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef Fem::ObjectStack< LocalMatrixFactoryType > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::LocalMatrixStackType |
◆ LocalMatrixType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef LocalMatrixWrapper< LocalMatrixStackType > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::LocalMatrixType |
◆ MatrixBlockType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef Dune::FieldMatrix< field_type, rangeLocalBlockSize, domainLocalBlockSize > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::MatrixBlockType |
◆ MatrixType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef Matrix Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::MatrixType |
◆ ObjectType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef LocalMatrix<ThisType> Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::ObjectType |
◆ PreconditionMatrixType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef MatrixType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::PreconditionMatrixType |
◆ RangeBlockMapperType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef RangeSpaceType::BlockMapperType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::RangeBlockMapperType |
◆ RangeEntityType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef RangeSpaceType::EntityType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::RangeEntityType |
◆ RangeMapperType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef NonBlockMapper< RangeBlockMapperType, RangeSpaceType::localBlockSize > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::RangeMapperType |
◆ RangeSpaceType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef RangeSpace Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::RangeSpaceType |
◆ RowEntityType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef RangeSpaceType::EntityType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::RowEntityType |
◆ size_type
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef MatrixType::size_type Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::size_type |
◆ ThisType
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
| typedef SparseRowMatrixObject< DomainSpaceType, RangeSpaceType, MatrixType > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::ThisType |
Constructor & Destructor Documentation
◆ SparseRowMatrixObject()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
inline |
construct matrix object
Member Function Documentation
◆ addBlock()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class LocalBlock >
|
inline |
◆ addLocalMatrix()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class LocalMatrix >
|
inline |
◆ addScaledLocalMatrix()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class LocalMatrix , class Scalar >
|
inline |
◆ apply()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class DomainFunction , class RangeFunction >
|
inline |
apply matrix to discrete function
◆ clear()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
inline |
clear matrix
◆ compress()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
inline |
compress matrix to a real CRS format
◆ domainSpace()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
inline |
get domain space (i.e. space that builds the rows)
◆ exportMatrix()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
inline |
get reference to storage object
◆ extractDiagonal()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class DiscreteFunctionType >
|
inline |
extract diagonal entries from matrix into discrete function this only works for square matrices
◆ finalizeAssembly()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
inlineprotected |
◆ getLocalMatrix()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class LocalMatrix >
|
inline |
◆ localColumn()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
inline |
get local column
◆ localMatrix() [1/2]
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
inline |
- Deprecated:
- Use TemporaryLocalMatrix in combination with {add,set,get}LocalMatrix on matrix object return local matrix object
◆ localMatrix() [2/2]
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
inline |
- Deprecated:
- Use TemporaryLocalMatrix in combination with {add,set,get}LocalMatrix on matrix object return local matrix object
◆ matrix()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
inlineprotected |
get reference to storage object, for internal use
◆ newObject()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
inline |
interface method from LocalMatrixFactory
◆ rangeSpace()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
inline |
get range space (i.e. space that builds the columns)
◆ reserve() [1/2]
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class Set >
|
inline |
◆ reserve() [2/2]
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class Stencil >
|
inline |
reserve memory
◆ resort()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
inline |
resort row numbering in matrix to have ascending numbering
◆ setBlock()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class LocalBlock >
|
inline |
◆ setLocalMatrix()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class LocalMatrix >
|
inline |
◆ setUnitRows()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class Container >
|
inline |
◆ unitRow()
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
inline |
Member Data Documentation
◆ domainLocalBlockSize
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
static |
◆ domainMapper_
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
protected |
◆ domainSpace_
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
protected |
◆ localMatrixStack_
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
mutableprotected |
◆ matrix_
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
mutableprotected |
◆ rangeLocalBlockSize
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
static |
◆ rangeMapper_
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
protected |
◆ rangeSpace_
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
protected |
◆ sequence_
template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
|
protected |
The documentation for this class was generated from the following file:
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8