dune-fem
2.4.1-rc
|
Interface for local matrix classes. More...
#include </local/tomalk/somewhere/tmp/dune-fem/dune/fem/operator/common/localmatrix.hh>
Public Types | |
typedef LocalMatrixTraits | Traits |
type of traits class More... | |
typedef ThisType | LocalMatrixInterfaceType |
type of this interface More... | |
typedef Traits::LocalMatrixType | LocalMatrixType |
type of local matrix implementation More... | |
typedef Traits::RangeFieldType | RangeFieldType |
type of range field More... | |
typedef Traits::DomainSpaceType | DomainSpaceType |
type of domain discrete function space More... | |
typedef Traits::RangeSpaceType | RangeSpaceType |
type of range discrete function space More... | |
typedef DomainSpaceType::BasisFunctionSetType | DomainBasisFunctionSetType |
type of base function sets within domain function space More... | |
typedef RangeSpaceType::BasisFunctionSetType | RangeBasisFunctionSetType |
type of base function sets within range function space More... | |
typedef DomainSpaceType::EntityType | DomainEntityType |
typedef RangeSpaceType::EntityType | RangeEntityType |
typedef Traits::LittleBlockType | LittleBlockType |
typedef MatrixColumnObject< Traits > | MatrixColumnType |
Public Member Functions | |
void | init (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity) |
initialize the local matrix to entities More... | |
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 More... | |
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 More... | |
void | clearRow (const int localRow) |
set row to zero values More... | |
void | clearCol (const int localCol) |
ser column entries to zero More... | |
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 More... | |
const RangeFieldType | get (const int localRow, const int localCol) const |
get value of matrix entry (row,col) where row and col are local row and local column More... | |
void | scale (const RangeFieldType &scalar) |
scale matrix with scalar value More... | |
void | clear () |
set all entries of local matrix to zero More... | |
void | resort () |
resort ordering in global matrix (if possible) More... | |
int | rows () const |
get number of rows within the matrix More... | |
int | columns () const |
get number of columns within the matrix More... | |
const DomainSpaceType & | domainSpace () const |
access to the domain space More... | |
const RangeSpaceType & | rangeSpace () const |
access to the range space More... | |
const DomainBasisFunctionSetType & | domainBasisFunctionSet () const |
access to the base function set within the domain space More... | |
const RangeBasisFunctionSetType & | rangeBasisFunctionSet () const |
access to the base function set within the range space More... | |
const DomainEntityType & | domainEntity () const |
const RangeEntityType & | rangeEntity () const |
MatrixColumnType | column (const unsigned int col) |
return column object for local matrix which contains axpy methods for convenience More... | |
void | finalize () |
finalize local matrix setup and possibly add values to real matrix More... | |
Protected Member Functions | |
LocalMatrixInterface () | |
constructor More... | |
const LocalMatrixTraits::LocalMatrixType & | asImp () const |
LocalMatrixTraits::LocalMatrixType & | asImp () |
Static Protected Member Functions | |
static const LocalMatrixTraits::LocalMatrixType & | asImp (const ThisType &other) |
static LocalMatrixTraits::LocalMatrixType & | asImp (ThisType &other) |
Interface for local matrix classes.
typedef DomainSpaceType :: BasisFunctionSetType Dune::Fem::LocalMatrixInterface< LocalMatrixTraits >::DomainBasisFunctionSetType |
type of base function sets within domain function space
typedef DomainSpaceType::EntityType Dune::Fem::LocalMatrixInterface< LocalMatrixTraits >::DomainEntityType |
typedef Traits :: DomainSpaceType Dune::Fem::LocalMatrixInterface< LocalMatrixTraits >::DomainSpaceType |
type of domain discrete function space
typedef Traits :: LittleBlockType Dune::Fem::LocalMatrixInterface< LocalMatrixTraits >::LittleBlockType |
type of block (i.e. FieldMatrix for BlockMatrices
typedef ThisType Dune::Fem::LocalMatrixInterface< LocalMatrixTraits >::LocalMatrixInterfaceType |
type of this interface
typedef Traits :: LocalMatrixType Dune::Fem::LocalMatrixInterface< LocalMatrixTraits >::LocalMatrixType |
type of local matrix implementation
typedef MatrixColumnObject< Traits > Dune::Fem::LocalMatrixInterface< LocalMatrixTraits >::MatrixColumnType |
typedef RangeSpaceType :: BasisFunctionSetType Dune::Fem::LocalMatrixInterface< LocalMatrixTraits >::RangeBasisFunctionSetType |
type of base function sets within range function space
typedef RangeSpaceType::EntityType Dune::Fem::LocalMatrixInterface< LocalMatrixTraits >::RangeEntityType |
typedef Traits :: RangeFieldType Dune::Fem::LocalMatrixInterface< LocalMatrixTraits >::RangeFieldType |
type of range field
typedef Traits :: RangeSpaceType Dune::Fem::LocalMatrixInterface< LocalMatrixTraits >::RangeSpaceType |
type of range discrete function space
typedef LocalMatrixTraits Dune::Fem::LocalMatrixInterface< LocalMatrixTraits >::Traits |
type of traits class
|
inlineprotected |
constructor
|
inline |
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 |
Referenced by Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::add().
|
inlinestaticprotectedinherited |
|
inlinestaticprotectedinherited |
|
inlineprotectedinherited |
Referenced by Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::add(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::clear(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::clearCol(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::clearRow(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::column(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::columns(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::domainBasisFunctionSet(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::domainEntity(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::domainSpace(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::finalize(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::get(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::init(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::multiplyAdd(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::rangeBasisFunctionSet(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::rangeEntity(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::rangeSpace(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::resort(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::rows(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::scale(), and Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::set().
|
inlineprotectedinherited |
|
inline |
set all entries of local matrix to zero
Referenced by Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::clear().
|
inline |
ser column entries to zero
[in] | localCol | local column that is set to zero |
Referenced by Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::clearCol().
|
inline |
set row to zero values
[in] | localRow | local row that is set to zero |
Referenced by Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::clearRow().
|
inline |
return column object for local matrix which contains axpy methods for convenience
col | local column number |
|
inline |
get number of columns within the matrix
Referenced by Dune::Fem::LocalMatrixDefault< LocalMatrixTraits< MatrixObject > >::clearRow(), Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::columns(), and Dune::Fem::LocalMatrixDefault< LocalMatrixTraits< MatrixObject > >::multiplyAdd().
|
inline |
access to the base function set within the domain space
Referenced by Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::domainBasisFunctionSet(), and Dune::Fem::LocalMatrixDefault< LocalMatrixTraits< MatrixObject > >::domainEntity().
|
inline |
|
inline |
access to the domain space
Referenced by Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::domainSpace().
|
inline |
finalize local matrix setup and possibly add values to real matrix
Referenced by Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::finalize().
|
inline |
get value of matrix entry (row,col) where row and col are local row and local column
[in] | localRow | local row |
[in] | localCol | local column |
|
inline |
initialize the local matrix to entities
[in] | domainEntity | entity within grid of domain space, |
[in] | rangeEntity | entity within grid of range space |
Referenced by Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::init().
|
inline |
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 |
Referenced by Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::multiplyAdd().
|
inline |
access to the base function set within the range space
Referenced by Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::rangeBasisFunctionSet(), and Dune::Fem::LocalMatrixDefault< LocalMatrixTraits< MatrixObject > >::rangeEntity().
|
inline |
|
inline |
access to the range space
Referenced by Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::rangeSpace().
|
inline |
resort ordering in global matrix (if possible)
Referenced by Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::resort().
|
inline |
get number of rows within the matrix
Referenced by Dune::Fem::LocalMatrixDefault< LocalMatrixTraits< MatrixObject > >::clearCol(), Dune::Fem::LocalMatrixDefault< LocalMatrixTraits< MatrixObject > >::multiplyAdd(), and Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::rows().
|
inline |
scale matrix with scalar value
[in] | scalar | scalar value that scales the matrix |
Referenced by Dune::Fem::LocalMatrixInterface< LocalMatrixTraits< MatrixObject > >::scale().
|
inline |
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 |