dune-fem 2.8.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix > Struct Template Reference

SparseRowLinearOperator. More...

#include <dune/fem/operator/linear/spoperator.hh>

Inheritance diagram for Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix >:
Inheritance graph

Public Types

typedef DomainFunction::DiscreteFunctionSpaceType DomainSpaceType
 
typedef RangeFunction::DiscreteFunctionSpaceType RangeSpaceType
 
typedef SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix > ThisType
 
typedef SparseRowMatrixObject< DomainSpaceType, RangeSpaceType, Matrix > BaseType
 
typedef DomainSpaceType::EntityType DomainEntityType
 
typedef RangeSpaceType::EntityType RangeEntityType
 
typedef DomainSpaceType::EntityType ColumnEntityType
 
typedef RangeSpaceType::EntityType RowEntityType
 
typedef DomainSpaceType::BlockMapperType DomainBlockMapperType
 
typedef NonBlockMapper< DomainBlockMapperType, DomainSpaceType::localBlockSize > DomainMapperType
 
typedef RangeSpaceType::BlockMapperType RangeBlockMapperType
 
typedef NonBlockMapper< RangeBlockMapperType, RangeSpaceType::localBlockSize > RangeMapperType
 
typedef Matrix MatrixType
 
typedef MatrixType::size_type size_type
 
typedef MatrixType::field_type field_type
 
typedef Dune::FieldMatrix< field_type, rangeLocalBlockSize, domainLocalBlockSizeMatrixBlockType
 
typedef MatrixBlockType block_type
 
typedef MatrixType PreconditionMatrixType
 
typedef LocalMatrix< ThisTypeObjectType
 
typedef ThisType LocalMatrixFactoryType
 
typedef Fem::ObjectStack< LocalMatrixFactoryTypeLocalMatrixStackType
 
typedef LocalMatrixWrapper< LocalMatrixStackTypeLocalMatrixType
 
typedef ColumnObject< ThisTypeLocalColumnObjectType
 
typedef DomainFunction DomainFunctionType
 type of discrete function in the operator's domain
 
typedef RangeFunction RangeFunctionType
 type of discrete function in the operator's range
 
typedef DomainFunction::RangeFieldType DomainFieldType
 field type of the operator's domain
 
typedef RangeFunction::RangeFieldType RangeFieldType
 field type of the operator's range
 

Public Member Functions

 SparseRowLinearOperator (const std::string &, const DomainSpaceType &domainSpace, const RangeSpaceType &rangeSpace, const SolverParameter &param=SolverParameter())
 
virtual void operator() (const DomainFunction &arg, RangeFunction &dest) const
 application operator
 
virtual void finalize ()
 finalization of operator
 
template<class DomainFunction , class RangeFunction >
void apply (const DomainFunction &arg, RangeFunction &dest) const
 apply matrix to discrete function
 
MatrixTypeexportMatrix () const
 get reference to storage object
 
const DomainSpaceTypedomainSpace () const
 get domain space (i.e. space that builds the rows)
 
const RangeSpaceTyperangeSpace () const
 get range space (i.e. space that builds the columns)
 
ObjectTypenewObject () 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 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
 
virtual void flushAssembly ()
 commit intermediate states of linear operator assembly
 
void beginAssemble ()
 Initiate the assemble of values using the LocalContribution concept.
 
void endAssemble ()
 Finalize the assemble of values using the LocalContribution concept.
 
virtual bool symmetric () const
 
virtual bool positiveDefinite () const
 

Static Public Attributes

static constexpr bool assembled = true
 
static const size_type domainLocalBlockSize = DomainSpaceType::dimRange
 
static const size_type rangeLocalBlockSize = RangeSpaceType::dimRange
 

Protected Member Functions

MatrixTypematrix () const
 get reference to storage object, for internal use
 
void finalizeAssembly () const
 

Protected Attributes

const DomainSpaceTypedomainSpace_
 
const RangeSpaceTyperangeSpace_
 
DomainMapperType domainMapper_
 
RangeMapperType rangeMapper_
 
int sequence_
 
MatrixType matrix_
 
bool preconditioning_
 
LocalMatrixStackType localMatrixStack_
 
std::type_index assembleOperation_
 
std::size_t assembleCount_
 

Detailed Description

template<class DomainFunction, class RangeFunction, class Matrix = SparseRowMatrix< typename DomainFunction::DiscreteFunctionSpaceType::RangeFieldType >>
struct Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix >

SparseRowLinearOperator.

Member Typedef Documentation

◆ BaseType

template<class DomainFunction , class RangeFunction , class Matrix = SparseRowMatrix< typename DomainFunction::DiscreteFunctionSpaceType::RangeFieldType >>
typedef SparseRowMatrixObject< DomainSpaceType, RangeSpaceType, Matrix > Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix >::BaseType

◆ block_type

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef MatrixBlockType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::block_type
inherited

◆ ColumnEntityType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef DomainSpaceType::EntityType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::ColumnEntityType
inherited

◆ DomainBlockMapperType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef DomainSpaceType::BlockMapperType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::DomainBlockMapperType
inherited

◆ DomainEntityType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef DomainSpaceType::EntityType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::DomainEntityType
inherited

◆ DomainFieldType

typedef DomainFunction::RangeFieldType Dune::Fem::Operator< DomainFunction, RangeFunction >::DomainFieldType
inherited

field type of the operator's domain

◆ DomainFunctionType

typedef DomainFunction Dune::Fem::Operator< DomainFunction, RangeFunction >::DomainFunctionType
inherited

type of discrete function in the operator's domain

◆ DomainMapperType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef NonBlockMapper< DomainBlockMapperType, DomainSpaceType::localBlockSize > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::DomainMapperType
inherited

◆ DomainSpaceType

template<class DomainFunction , class RangeFunction , class Matrix = SparseRowMatrix< typename DomainFunction::DiscreteFunctionSpaceType::RangeFieldType >>
typedef DomainFunction::DiscreteFunctionSpaceType Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, 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
inherited

◆ LocalColumnObjectType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef ColumnObject< ThisType > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::LocalColumnObjectType
inherited

◆ LocalMatrixFactoryType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef ThisType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::LocalMatrixFactoryType
inherited

◆ LocalMatrixStackType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef Fem::ObjectStack< LocalMatrixFactoryType > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::LocalMatrixStackType
inherited

◆ LocalMatrixType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef LocalMatrixWrapper< LocalMatrixStackType > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::LocalMatrixType
inherited

◆ 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
inherited

◆ MatrixType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef Matrix Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::MatrixType
inherited

◆ ObjectType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef LocalMatrix<ThisType> Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::ObjectType
inherited

◆ PreconditionMatrixType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef MatrixType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::PreconditionMatrixType
inherited

◆ RangeBlockMapperType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef RangeSpaceType::BlockMapperType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::RangeBlockMapperType
inherited

◆ RangeEntityType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef RangeSpaceType::EntityType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::RangeEntityType
inherited

◆ RangeFieldType

typedef RangeFunction::RangeFieldType Dune::Fem::Operator< DomainFunction, RangeFunction >::RangeFieldType
inherited

field type of the operator's range

◆ RangeFunctionType

typedef RangeFunction Dune::Fem::Operator< DomainFunction, RangeFunction >::RangeFunctionType
inherited

type of discrete function in the operator's range

◆ RangeMapperType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef NonBlockMapper< RangeBlockMapperType, RangeSpaceType::localBlockSize > Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::RangeMapperType
inherited

◆ RangeSpaceType

template<class DomainFunction , class RangeFunction , class Matrix = SparseRowMatrix< typename DomainFunction::DiscreteFunctionSpaceType::RangeFieldType >>
typedef RangeFunction::DiscreteFunctionSpaceType Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix >::RangeSpaceType

◆ RowEntityType

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
typedef RangeSpaceType::EntityType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::RowEntityType
inherited

◆ 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
inherited

◆ ThisType

template<class DomainFunction , class RangeFunction , class Matrix = SparseRowMatrix< typename DomainFunction::DiscreteFunctionSpaceType::RangeFieldType >>
typedef SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix > Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix >::ThisType

Constructor & Destructor Documentation

◆ SparseRowLinearOperator()

template<class DomainFunction , class RangeFunction , class Matrix = SparseRowMatrix< typename DomainFunction::DiscreteFunctionSpaceType::RangeFieldType >>
Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix >::SparseRowLinearOperator ( const std::string &  ,
const DomainSpaceType domainSpace,
const RangeSpaceType rangeSpace,
const SolverParameter param = SolverParameter() 
)
inline

Member Function Documentation

◆ addBlock()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class LocalBlock >
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::addBlock ( const size_type  row,
const size_type  col,
const LocalBlock &  block 
)
inlineinherited

◆ addLocalMatrix()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class LocalMatrix >
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::addLocalMatrix ( const DomainEntityType domainEntity,
const RangeEntityType rangeEntity,
const LocalMatrix localMat 
)
inlineinherited

◆ addScaledLocalMatrix()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class LocalMatrix , class Scalar >
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::addScaledLocalMatrix ( const DomainEntityType domainEntity,
const RangeEntityType rangeEntity,
const LocalMatrix localMat,
const Scalar &  s 
)
inlineinherited

◆ apply()

template<class DomainFunction , class RangeFunction , class Matrix = SparseRowMatrix< typename DomainFunction::DiscreteFunctionSpaceType::RangeFieldType >>
template<class DomainFunction , class RangeFunction >
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::apply ( const DomainFunction &  arg,
RangeFunction &  dest 
) const
inline

apply matrix to discrete function

◆ beginAssemble()

void Dune::Fem::AssembledOperator< DomainFunction, RangeFunction >::beginAssemble ( )
inlineinherited

Initiate the assemble of values using the LocalContribution concept.

Template Parameters
AssembleOperationthe specific operation (Add, Set, ...)

◆ clear()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::clear ( )
inlineinherited

clear matrix

◆ compress()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::compress ( )
inlineinherited

compress matrix to a real CRS format

◆ domainSpace()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
const DomainSpaceType & Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::domainSpace ( ) const
inlineinherited

get domain space (i.e. space that builds the rows)

◆ endAssemble()

void Dune::Fem::AssembledOperator< DomainFunction, RangeFunction >::endAssemble ( )
inlineinherited

Finalize the assemble of values using the LocalContribution concept.

Template Parameters
AssembleOperationthe specific operation (Add, Set, ...)

◆ exportMatrix()

template<class DomainFunction , class RangeFunction , class Matrix = SparseRowMatrix< typename DomainFunction::DiscreteFunctionSpaceType::RangeFieldType >>
MatrixType & Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::exportMatrix ( ) const
inline

get reference to storage object

◆ extractDiagonal()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class DiscreteFunctionType >
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::extractDiagonal ( DiscreteFunctionType &  diag) const
inlineinherited

extract diagonal entries from matrix into discrete function this only works for square matrices

◆ finalize()

template<class DomainFunction , class RangeFunction , class Matrix = SparseRowMatrix< typename DomainFunction::DiscreteFunctionSpaceType::RangeFieldType >>
virtual void Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix >::finalize ( )
inlinevirtual

finalization of operator

Note
The default implementation is empty.

Reimplemented from Dune::Fem::Operator< DomainFunction, RangeFunction >.

◆ finalizeAssembly()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::finalizeAssembly ( ) const
inlineprotectedinherited

◆ flushAssembly()

virtual void Dune::Fem::AssembledOperator< DomainFunction, RangeFunction >::flushAssembly ( )
inlinevirtualinherited

commit intermediate states of linear operator assembly

◆ getLocalMatrix()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class LocalMatrix >
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::getLocalMatrix ( const DomainEntityType domainEntity,
const RangeEntityType rangeEntity,
LocalMatrix localMat 
) const
inlineinherited

◆ localColumn()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
LocalColumnObjectType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::localColumn ( const DomainEntityType domainEntity) const
inlineinherited

get local column

◆ localMatrix() [1/2]

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
LocalMatrixType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::localMatrix ( ) const
inlineinherited
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 >>
LocalMatrixType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::localMatrix ( const DomainEntityType domainEntity,
const RangeEntityType rangeEntity 
) const
inlineinherited
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 >>
MatrixType & Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::matrix ( ) const
inlineprotectedinherited

get reference to storage object, for internal use

◆ newObject()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
ObjectType * Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::newObject ( ) const
inlineinherited

interface method from LocalMatrixFactory

◆ operator()()

template<class DomainFunction , class RangeFunction , class Matrix = SparseRowMatrix< typename DomainFunction::DiscreteFunctionSpaceType::RangeFieldType >>
virtual void Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix >::operator() ( const DomainFunction &  u,
RangeFunction &  w 
) const
inlinevirtual

application operator

Parameters
[in]uargument discrete function
[out]wdestination discrete function
Note
This method has to be implemented by all derived classes.

Implements Dune::Fem::Operator< DomainFunction, RangeFunction >.

◆ positiveDefinite()

virtual bool Dune::Fem::LinearOperator< DomainFunction, RangeFunction >::positiveDefinite ( ) const
inlinevirtualinherited

Return true if the Operator is positive definite.

◆ rangeSpace()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
const RangeSpaceType & Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::rangeSpace ( ) const
inlineinherited

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 >
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::reserve ( const std::vector< Set > &  sparsityPattern)
inlineinherited

◆ reserve() [2/2]

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class Stencil >
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::reserve ( const Stencil stencil,
bool  verbose = false 
)
inlineinherited

reserve memory

◆ resort()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::resort ( )
inlineinherited

resort row numbering in matrix to have ascending numbering

◆ setBlock()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class LocalBlock >
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::setBlock ( const size_type  row,
const size_type  col,
const LocalBlock &  block 
)
inlineinherited

◆ setLocalMatrix()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class LocalMatrix >
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::setLocalMatrix ( const DomainEntityType domainEntity,
const RangeEntityType rangeEntity,
const LocalMatrix localMat 
)
inlineinherited

◆ setUnitRows()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
template<class Vector >
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::setUnitRows ( const Vector &  rows)
inlineinherited

◆ symmetric()

virtual bool Dune::Fem::LinearOperator< DomainFunction, RangeFunction >::symmetric ( ) const
inlinevirtualinherited

Return true if the Operator is symmetric.

◆ unitRow()

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
void Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::unitRow ( const size_type  row)
inlineinherited

Member Data Documentation

◆ assembleCount_

std::size_t Dune::Fem::AssembledOperator< DomainFunction, RangeFunction >::assembleCount_
protectedinherited

◆ assembled

template<class DomainFunction , class RangeFunction , class Matrix = SparseRowMatrix< typename DomainFunction::DiscreteFunctionSpaceType::RangeFieldType >>
constexpr bool Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix >::assembled = true
staticconstexpr

◆ assembleOperation_

std::type_index Dune::Fem::AssembledOperator< DomainFunction, RangeFunction >::assembleOperation_
protectedinherited

◆ domainLocalBlockSize

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
const size_type Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::domainLocalBlockSize = DomainSpaceType::dimRange
staticinherited

◆ domainMapper_

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
DomainMapperType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::domainMapper_
protectedinherited

◆ domainSpace_

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
const DomainSpaceType& Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::domainSpace_
protectedinherited

◆ localMatrixStack_

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
LocalMatrixStackType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::localMatrixStack_
mutableprotectedinherited

◆ matrix_

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
MatrixType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::matrix_
mutableprotectedinherited

◆ preconditioning_

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
bool Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::preconditioning_
protectedinherited

◆ rangeLocalBlockSize

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
const size_type Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::rangeLocalBlockSize = RangeSpaceType::dimRange
staticinherited

◆ rangeMapper_

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
RangeMapperType Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::rangeMapper_
protectedinherited

◆ rangeSpace_

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
const RangeSpaceType& Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::rangeSpace_
protectedinherited

◆ sequence_

template<class DomainSpace , class RangeSpace , class Matrix = SparseRowMatrix< typename DomainSpace::RangeFieldType >>
int Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::sequence_
protectedinherited

The documentation for this struct was generated from the following file: