dune-fem 2.8.0
|
#include <dune/fem/operator/matrix/densematrix.hh>
Public Types | |
typedef LocalMatrixTraits | Traits |
typedef MatrixObject::MatrixType | MatrixType |
typedef Traits::RangeFieldType | RangeFieldType |
typedef Traits::LittleBlockType | LittleBlockType |
typedef RangeFieldType | DofType |
typedef BaseType::DomainSpaceType | DomainSpaceType |
typedef BaseType::RangeSpaceType | RangeSpaceType |
typedef BaseType::DomainBasisFunctionSetType | DomainBasisFunctionSetType |
typedef BaseType::RangeBasisFunctionSetType | RangeBasisFunctionSetType |
typedef BaseType::DomainEntityType | DomainEntityType |
typedef BaseType::RangeEntityType | RangeEntityType |
typedef ThisType | LocalMatrixInterfaceType |
type of this interface | |
typedef Traits::LocalMatrixType | LocalMatrixType |
type of local matrix implementation | |
typedef MatrixColumnObject< Traits > | MatrixColumnType |
Public Member Functions | |
LocalMatrix (MatrixType &matrix, const DomainSpaceType &domainSpace, const RangeSpaceType &rangeSpace, const DomainMapperType &domainMapper, const RangeMapperType &rangeMapper) | |
LocalMatrix (const ThisType &)=delete | |
ThisType & | operator= (const ThisType &)=delete |
void | init (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity) |
int | rows () const |
int | cols () const |
void | add (const int row, const int col, const DofType &value) |
const DofType & | get (const int row, const int col) const |
void | set (const int row, const int col, const DofType &value) |
void | clearRow (const int row) |
void | unitRow (const int row) |
void | clear () |
void | scale (const DofType &value) |
void | init (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity) |
initialize the local matrix to entities | |
void | bind (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity) |
initialize the local matrix to entities | |
void | unbind () |
clear local matrix from entities | |
void | resort () |
resort ordering in global matrix (if possible) | |
void | finalize () |
finalize local matrix setup and possibly add values to real matrix | |
int | columns () const |
get number of columns within the matrix | |
const DomainSpaceType & | domainSpace () const |
access to the domain space | |
const RangeSpaceType & | rangeSpace () const |
access to the range space | |
const DomainBasisFunctionSetType & | domainBasisFunctionSet () const |
access to the base function set within the domain space | |
const RangeBasisFunctionSetType & | rangeBasisFunctionSet () const |
access to the base function set within the range space | |
const DomainEntityType & | domainEntity () const |
const RangeEntityType & | rangeEntity () const |
template<class DomainLocalFunctionType , class RangeLocalFunctionType > | |
void | multiplyAdd (const DomainLocalFunctionType &lhs, RangeLocalFunctionType &rhs) const |
multiply left hand side with local matrix and add to right hand side rhs += Matrix * lhs | |
void | clearCol (const int localCol) |
ser column entries to zero | |
void | add (const int localRow, const int localCol, const RangeFieldType &value) |
add value to matrix entry (row,col) where row and col are local row and local column | |
void | set (const int localRow, const int localCol, const RangeFieldType &value) |
set value of matrix entry (row,col) where row and col are local row and local column | |
void | scale (const RangeFieldType &scalar) |
scale matrix with scalar value | |
MatrixColumnType | column (const unsigned int col) |
return column object for local matrix which contains axpy methods for convenience | |
Protected Member Functions | |
const Implementation & | asImp () const |
Implementation & | asImp () |
Static Protected Member Functions | |
static const Implementation & | asImp (const ThisType &other) |
static Implementation & | asImp (ThisType &other) |
static const LocalMatrixTraits::LocalMatrixType & | asImp (const ThisType &other) |
static LocalMatrixTraits::LocalMatrixType & | asImp (ThisType &other) |
Protected Attributes | |
const DomainSpaceType & | domainSpace_ |
const RangeSpaceType & | rangeSpace_ |
DomainBasisFunctionSetType | domainBaseSet_ |
RangeBasisFunctionSetType | rangeBaseSet_ |
std::optional< DomainEntityType > | domainEntity_ |
std::optional< RangeEntityType > | rangeEntity_ |
typedef RangeFieldType Dune::Fem::DenseRowMatrixObject< DomainSpace, RangeSpace >::LocalMatrix::DofType |
|
inherited |
|
inherited |
|
inherited |
typedef Traits::LittleBlockType Dune::Fem::DenseRowMatrixObject< DomainSpace, RangeSpace >::LocalMatrix::LittleBlockType |
|
inherited |
type of this interface
|
inherited |
type of local matrix implementation
|
inherited |
typedef MatrixObject::MatrixType Dune::Fem::DenseRowMatrixObject< DomainSpace, RangeSpace >::LocalMatrix::MatrixType |
|
inherited |
|
inherited |
typedef Traits::RangeFieldType Dune::Fem::DenseRowMatrixObject< DomainSpace, RangeSpace >::LocalMatrix::RangeFieldType |
|
inherited |
typedef LocalMatrixTraits Dune::Fem::DenseRowMatrixObject< DomainSpace, RangeSpace >::LocalMatrix::Traits |
|
inline |
|
delete |
|
inlineinherited |
add value to matrix entry (row,col) where row and col are local row and local column
[in] | localRow | local row |
[in] | localCol | local column |
[in] | value | value to add |
|
inline |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlinestaticprotectedinherited |
|
inlinestaticprotectedinherited |
|
inlinestaticprotectedinherited |
|
inlinestaticprotectedinherited |
|
inlineinherited |
initialize the local matrix to entities
[in] | domainEntity | entity within grid of domain space, |
[in] | rangeEntity | entity within grid of range space |
|
inline |
|
inlineinherited |
ser column entries to zero
[in] | localCol | local column that is set to zero |
|
inline |
|
inline |
|
inlineinherited |
return column object for local matrix which contains axpy methods for convenience
col | local column number |
|
inlineinherited |
get number of columns within the matrix
|
inlineinherited |
access to the base function set within the domain space
|
inlineinherited |
|
inlineinherited |
access to the domain space
|
inlineinherited |
finalize local matrix setup and possibly add values to real matrix
|
inline |
|
inlineinherited |
initialize the local matrix to entities
[in] | domainEntity | entity within grid of domain space, |
[in] | rangeEntity | entity within grid of range space |
|
inline |
|
inlineinherited |
multiply left hand side with local matrix and add to right hand side rhs += Matrix * lhs
[in] | lhs | left hand side |
[out] | rhs | right hand side |
|
delete |
|
inlineinherited |
access to the base function set within the range space
|
inlineinherited |
|
inlineinherited |
access to the range space
|
inlineinherited |
resort ordering in global matrix (if possible)
|
inline |
|
inline |
|
inlineinherited |
scale matrix with scalar value
[in] | scalar | scalar value that scales the matrix |
|
inlineinherited |
set value of matrix entry (row,col) where row and col are local row and local column
[in] | localRow | local row |
[in] | localCol | local column |
[in] | value | value to set |
|
inline |
|
inlineinherited |
clear local matrix from entities
|
inline |
|
protectedinherited |
|
protectedinherited |
|
protected |
|
protectedinherited |
|
protectedinherited |
|
protected |