|
dune-fem 2.12-git
|
A local matrix with a small array as storage. More...
#include <dune/fem/operator/common/temporarylocalmatrix.hh>

Public Member Functions | |
| TemporaryLocalMatrix (const DomainSpaceType &domainSpace, const RangeSpaceType &rangeSpace) | |
| template<class DomainEntityType , class RangeEntityType > | |
| TemporaryLocalMatrix (const DomainSpaceType &domainSpace, const RangeSpaceType &rangeSpace, const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity) | |
| template<class DomainEntityType , class RangeEntityType > | |
| void | init (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity) |
| initialize the local matrix to entities | |
| template<class DomainEntityType , class RangeEntityType > | |
| void | bind (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity) |
| initialize the local matrix to entities | |
| void | unbind () |
| clear local matrix from entities | |
| 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 | |
| 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 | |
| void | scale (const RangeFieldType &value) |
| scale matrix with scalar value | |
| void | clear () |
| set all entries of local matrix to zero | |
| void | clearRow (const int localRow) |
| set row to zero values | |
| size_type | rows () const |
| size_type | cols () const |
| size_type | columns () const |
| size_type | mat_rows () const |
| size_type | mat_cols () const |
| row_reference | mat_access (size_type i) |
| const_row_reference | mat_access (size_type i) const |
| const RangeFieldType * | data () const |
| void | print (std::ostream &out) const |
| 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 | |
| void | resize (int rows, int cols) |
| TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp > & | operator() (int row, int col) |
| const TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp > & | operator() (int row, int col) const |
| RowType & | operator[] (int row) |
| const RowType & | operator[] (int row) const |
| void | mult (const TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp > *vec, RowType &result) const |
| void | mult (const RowType &vec, RowType &result) const |
| void | multOEM (const TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp > *vec, TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp > *result) const |
| void | multTransposed (const RowType &vec, RowType &result) const |
| void | multiply (const DenseMatrix &A, const DenseMatrix &B) |
| void | multiplyTransposed (const DenseMatrix &A, const DenseMatrix &B) |
| void | multiply_AT_A (const DenseMatrix &A) |
| this = A^T * A | |
| void | scale (const TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp > &val) |
| scale matrix with scalar | |
| DenseMatrix< TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp > > & | operator+= (const DenseMatrix &org) |
| add matrix | |
| DenseMatrix< TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp > > & | operator-= (const DenseMatrix &org) |
| substract matrix | |
| 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 | resort () |
| resort ordering in global matrix (if possible) | |
| void | finalize () |
| finalize local matrix setup and possibly add values to real matrix | |
| const DomainSpaceType & | domainSpace () const |
| access to the domain space | |
| const RangeSpaceType & | rangeSpace () const |
| access to the range space | |
| const DomainEntityType & | domainEntity () const |
| const RangeEntityType & | rangeEntity () const |
| 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) |
Detailed Description
class Dune::Fem::TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp >
A local matrix with a small array as storage.
A TemporaryLocalMatrix is an implementation of the LocalMatrixInterface storing the matrix values in an array. It is useful when generating multiple local matrices that shall then be added together.
- Note
- Due to the backing array, accesses to the matrix should be very fast.
- Parameters
-
DomainSpaceImp DiscreteFunctionSpace modelling the domain RangeSpaceImp DiscreteFunctionSpace modelling the range
Member Typedef Documentation
◆ const_row_reference
| typedef RowReferenceVector< const value_type > Dune::Fem::TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp >::const_row_reference |
◆ DomainBasisFunctionSetType
|
inherited |
◆ DomainEntityType
|
inherited |
◆ DomainFieldType
| typedef Traits::DomainFieldType Dune::Fem::TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp >::DomainFieldType |
◆ DomainSpaceType
| typedef DomainSpaceImp Dune::Fem::TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp >::DomainSpaceType |
◆ LittleBlockType
|
inherited |
type of block (i.e. FieldMatrix for BlockMatrices
◆ LocalMatrixInterfaceType
|
inherited |
type of this interface
◆ LocalMatrixType
|
inherited |
type of local matrix implementation
◆ MatrixColumnType
|
inherited |
◆ MatrixEntriesType
| typedef std::vector< RangeFieldType > Dune::Fem::TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp >::MatrixEntriesType |
◆ RangeBasisFunctionSetType
|
inherited |
◆ RangeEntityType
|
inherited |
◆ RangeFieldType
| typedef Traits::RangeFieldType Dune::Fem::TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp >::RangeFieldType |
◆ RangeSpaceType
| typedef RangeSpaceImp Dune::Fem::TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp >::RangeSpaceType |
◆ row_reference
| typedef RowReferenceVector< value_type > Dune::Fem::TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp >::row_reference |
◆ RowType
|
inherited |
remember the value type
◆ size_type
| typedef int Dune::Fem::TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp >::size_type |
◆ Traits
| typedef TemporaryLocalMatrixTraits< DomainSpaceType, RangeSpaceType > Dune::Fem::TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp >::Traits |
◆ Ttype
|
inherited |
◆ value_type
| typedef RangeFieldType Dune::Fem::TemporaryLocalMatrix< DomainSpaceImp, RangeSpaceImp >::value_type |
Constructor & Destructor Documentation
◆ TemporaryLocalMatrix() [1/2]
|
inline |
◆ TemporaryLocalMatrix() [2/2]
|
inline |
Member Function Documentation
◆ add() [1/2]
|
inlineinherited |
add value to matrix entry (row,col) where row and col are local row and local column
- Parameters
-
[in] localRow local row [in] localCol local column [in] value value to add
◆ add() [2/2]
|
inline |
add value to matrix entry (row,col) where row and col are local row and local column
- Parameters
-
[in] localRow local row [in] localCol local column [in] value value to add
◆ asImp() [1/6]
|
inlineprotectedinherited |
◆ asImp() [2/6]
|
inlineprotectedinherited |
◆ asImp() [3/6]
|
inlinestaticprotectedinherited |
◆ asImp() [4/6]
|
inlinestaticprotectedinherited |
◆ asImp() [5/6]
|
inlinestaticprotectedinherited |
◆ asImp() [6/6]
|
inlinestaticprotectedinherited |
◆ bind() [1/2]
|
inlineinherited |
initialize the local matrix to entities
- Parameters
-
[in] domainEntity entity within grid of domain space, [in] rangeEntity entity within grid of range space
◆ bind() [2/2]
|
inline |
initialize the local matrix to entities
- Parameters
-
[in] domainEntity entity within grid of domain space, [in] rangeEntity entity within grid of range space
◆ clear()
|
inline |
set all entries of local matrix to zero
◆ clearCol()
|
inlineinherited |
ser column entries to zero
- Parameters
-
[in] localCol local column that is set to zero
◆ clearRow()
|
inline |
set row to zero values
- Parameters
-
[in] localRow local row that is set to zero
◆ cols()
|
inline |
◆ column()
|
inlineinherited |
return column object for local matrix which contains axpy methods for convenience
- Parameters
-
col local column number
- Returns
- object of type MatrixColumnObject
◆ columns()
|
inline |
◆ data()
|
inline |
◆ domainBasisFunctionSet()
|
inline |
access to the base function set within the domain space
◆ domainEntity()
|
inlineinherited |
◆ domainSpace()
|
inlineinherited |
access to the domain space
◆ finalize()
|
inlineinherited |
finalize local matrix setup and possibly add values to real matrix
◆ get()
|
inline |
get value of matrix entry (row,col) where row and col are local row and local column
- Parameters
-
[in] localRow local row [in] localCol local column
- Returns
- value of matrix entry
◆ init() [1/2]
|
inlineinherited |
initialize the local matrix to entities
- Parameters
-
[in] domainEntity entity within grid of domain space, [in] rangeEntity entity within grid of range space
◆ init() [2/2]
|
inline |
initialize the local matrix to entities
- Parameters
-
[in] domainEntity entity within grid of domain space, [in] rangeEntity entity within grid of range space
◆ mat_access() [1/2]
|
inline |
◆ mat_access() [2/2]
|
inline |
◆ mat_cols()
|
inline |
◆ mat_rows()
|
inline |
◆ mult() [1/2]
|
inlineinherited |
◆ mult() [2/2]
|
inlineinherited |
◆ multiply()
|
inlineinherited |
◆ multiply_AT_A()
|
inlineinherited |
this = A^T * A
◆ multiplyAdd()
|
inlineinherited |
multiply left hand side with local matrix and add to right hand side rhs += Matrix * lhs
- Parameters
-
[in] lhs left hand side [out] rhs right hand side
◆ multiplyTransposed()
|
inlineinherited |
◆ multOEM()
|
inlineinherited |
◆ multTransposed()
|
inlineinherited |
◆ operator()() [1/2]
|
inlineinherited |
◆ operator()() [2/2]
|
inlineinherited |
◆ operator+=()
|
inlineinherited |
add matrix
◆ operator-=()
|
inlineinherited |
substract matrix
◆ operator[]() [1/2]
|
inlineinherited |
◆ operator[]() [2/2]
|
inlineinherited |
◆ print()
|
inline |
◆ rangeBasisFunctionSet()
|
inline |
access to the base function set within the range space
◆ rangeEntity()
|
inlineinherited |
◆ rangeSpace()
|
inlineinherited |
access to the range space
◆ resize()
|
inlineinherited |
◆ resort()
|
inlineinherited |
resort ordering in global matrix (if possible)
◆ rows()
|
inline |
◆ scale() [1/3]
|
inlineinherited |
scale matrix with scalar value
- Parameters
-
[in] scalar scalar value that scales the matrix
◆ scale() [2/3]
|
inline |
scale matrix with scalar value
- Parameters
-
[in] scalar scalar value that scales the matrix
◆ scale() [3/3]
|
inlineinherited |
scale matrix with scalar
◆ set() [1/2]
|
inlineinherited |
set value of matrix entry (row,col) where row and col are local row and local column
- Parameters
-
[in] localRow local row [in] localCol local column [in] value value to set
◆ set() [2/2]
|
inline |
set value of matrix entry (row,col) where row and col are local row and local column
- Parameters
-
[in] localRow local row [in] localCol local column [in] value value to set
◆ unbind()
|
inline |
clear local matrix from entities
Member Data Documentation
◆ domainBaseSet_
|
protectedinherited |
◆ domainEntity_
|
protectedinherited |
◆ domainSpace_
|
protectedinherited |
◆ fields_
|
protected |
◆ rangeBaseSet_
|
protectedinherited |
◆ rangeEntity_
|
protectedinherited |
◆ rangeSpace_
|
protectedinherited |
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