dune-fem
2.4.1-rc
|
#include </local/tomalk/somewhere/tmp/dune-fem/dune/fem/operator/linear/spoperator.hh>
Public Types | |
typedef Base::DomainSpaceType | DomainSpaceType |
typedef Base::RangeSpaceType | RangeSpaceType |
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 | PreconditionMatrixType |
typedef LocalMatrix< ThisType > | ObjectType |
type of local matrix More... | |
typedef ThisType | LocalMatrixFactoryType |
typedef Fem::ObjectStack< LocalMatrixFactoryType > | LocalMatrixStackType |
typedef LocalMatrixWrapper< LocalMatrixStackType > | LocalMatrixType |
type of local matrix More... | |
typedef ColumnObject< ThisType > | LocalColumnObjectType |
typedef DomainFunction | DomainFunctionType |
type of discrete function in the operator's domain More... | |
typedef RangeFunction | RangeFunctionType |
type of discrete function in the operator's range More... | |
typedef DomainFunction::RangeFieldType | DomainFieldType |
field type of the operator's domain More... | |
typedef RangeFunction::RangeFieldType | RangeFieldType |
field type of the operator's range More... | |
Public Member Functions | |
SparseRowLinearOperator (const std::string &, const DomainSpaceType &domainSpace, const RangeSpaceType &rangeSpace, const std::string ¶mfile) | |
SparseRowLinearOperator (const std::string &, const DomainSpaceType &domainSpace, const RangeSpaceType &rangeSpace, const MatrixParameter ¶m=SparseRowMatrixParameter()) | |
virtual void | operator() (const DomainFunction &arg, RangeFunction &dest) const |
application operator More... | |
const Base & | systemMatrix () const |
void | communicate () const |
const DomainSpaceType & | domainSpace () const |
return domain space (i.e. space that builds the rows) More... | |
const RangeSpaceType & | rangeSpace () const |
return range space (i.e. space that builds the columns) More... | |
MatrixType & | matrix () const |
return reference to stability matrix More... | |
ObjectType * | newObject () const |
interface method from LocalMatrixFactory More... | |
LocalMatrixType | localMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity) const |
return local matrix More... | |
LocalColumnObjectType | localColumn (const DomainEntityType &domainEntity) const |
void | addLocalMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity, const LocalMatrix &localMat) |
void | addScaledLocalMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity, const LocalMatrix &localMat, const Scalar &s) |
void | setLocalMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity, const LocalMatrix &localMat) |
void | getLocalMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity, LocalMatrix &localMat) const |
void | clear () |
resize all matrices and clear them More... | |
bool | hasPreconditionMatrix () const |
return true if precoditioning matrix is provided More... | |
const PreconditionMatrixType & | preconditionMatrix () const |
return reference to preconditioner More... | |
void | reserve (const Stencil &stencil, bool verbose=false) |
reserve memory for assemble based on the provided stencil More... | |
void | solveUMF (const DomainFunction &arg, RangeFunction &dest) const |
void | solveUMFNonSymmetric (const DomainFunction &arg, RangeFunction &dest) const |
void | apply (const DomainFunction &arg, RangeFunction &dest) const |
apply matrix to discrete function More... | |
void | apply (const AdaptiveDiscreteFunction< DomainSpaceType > &arg, AdaptiveDiscreteFunction< RangeSpaceType > &dest) const |
apply matrix to discrete function More... | |
void | apply_t (const RangeFunction &arg, DomainFunction &dest) const |
apply transposed matrix to discrete function More... | |
void | apply_t (const AdaptiveDiscreteFunction< RangeSpaceType > &arg, AdaptiveDiscreteFunction< DomainSpaceType > &dest) const |
apply transposed matrix to discrete function More... | |
double | ddotOEM (const double *v, const double *w) const |
mult method of matrix object used by oem solver More... | |
void | multOEM (const double *arg, double *dest) const |
mult method of matrix object used by oem solver More... | |
void | resort () |
resort row numbering in matrix to have ascending numbering More... | |
void | createPreconditionMatrix () |
void | extractDiagonal (DiscreteFunctionType &diag) const |
extract diagonal entries from matrix into discrete function More... | |
void | changeHangingNodes (const HangingNodesType &hangingNodes) |
delete all row belonging to a hanging node and rebuild them More... | |
virtual bool | symmetric () const |
virtual bool | positiveDefinite () const |
Static Public Attributes | |
static const bool | assembled = true |
Protected Types | |
typedef DomainSpaceType::GridType | GridType |
Protected Member Functions | |
void | insertHangingRow (const HangingNodesType &hangingNodes, const int row, const ColumnVectorType &colVec) |
insert row to be a row for a hanging node More... | |
Protected Attributes | |
const DomainSpaceType & | domainSpace_ |
const RangeSpaceType & | rangeSpace_ |
DomainMapperType | domainMapper_ |
RangeMapperType | rangeMapper_ |
int | sequence_ |
MatrixType | matrix_ |
bool | preconditioning_ |
LocalMatrixStackType | localMatrixStack_ |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
field type of the operator's domain
|
inherited |
type of discrete function in the operator's domain
|
inherited |
typedef Base::DomainSpaceType Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction >::DomainSpaceType |
|
protectedinherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
type of local matrix
|
inherited |
|
inherited |
type of local matrix
|
inherited |
|
inherited |
|
inherited |
|
inherited |
field type of the operator's range
|
inherited |
type of discrete function in the operator's range
|
inherited |
typedef Base::RangeSpaceType Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction >::RangeSpaceType |
|
inherited |
|
inline |
|
inline |
|
inlineinherited |
References Dune::Fem::makePairFunctor().
|
inlineinherited |
References Dune::Fem::makePairFunctor().
|
inlineinherited |
apply matrix to discrete function
|
inlineinherited |
apply matrix to discrete function
References Dune::Fem::DiscreteFunctionDefault< AdaptiveDiscreteFunction< DiscreteFunctionSpace > >::communicate(), and Dune::Fem::AdaptiveDiscreteFunction< DiscreteFunctionSpace >::leakPointer().
|
inlineinherited |
apply transposed matrix to discrete function
|
inlineinherited |
apply transposed matrix to discrete function
References Dune::Fem::DiscreteFunctionDefault< AdaptiveDiscreteFunction< DiscreteFunctionSpace > >::communicate(), and Dune::Fem::AdaptiveDiscreteFunction< DiscreteFunctionSpace >::leakPointer().
|
inlineinherited |
delete all row belonging to a hanging node and rebuild them
|
inlineinherited |
resize all matrices and clear them
|
inline |
|
inlineinherited |
|
inlinevirtualinherited |
mult method of matrix object used by oem solver
Implements Dune::Fem::OEMMatrix.
|
inlineinherited |
return domain space (i.e. space that builds the rows)
|
inlineinherited |
extract diagonal entries from matrix into discrete function
|
inlineinherited |
References Dune::Fem::makePairFunctor().
|
inlineinherited |
return true if precoditioning matrix is provided
|
inlineprotectedinherited |
insert row to be a row for a hanging node
|
inlineinherited |
|
inlineinherited |
return local matrix
|
inlineinherited |
return reference to stability matrix
|
inlinevirtualinherited |
mult method of matrix object used by oem solver
Implements Dune::Fem::OEMMatrix.
|
inlineinherited |
interface method from LocalMatrixFactory
|
inlinevirtual |
application operator
[in] | u | argument discrete function |
[out] | w | destination discrete function |
Implements Dune::Fem::Operator< DomainFunction, RangeFunction >.
References Dune::Fem::SparseRowMatrixObject< DomainSpace, RangeSpace, Matrix >::apply().
|
inlinevirtualinherited |
Return true
if the Operator is positive definite.
|
inlineinherited |
return reference to preconditioner
|
inlineinherited |
return range space (i.e. space that builds the columns)
|
inlineinherited |
reserve memory for assemble based on the provided stencil
References Dune::Std::max(), and Dune::Fem::Stencil< DomainSpace, RangeSpace >::maxNonZerosEstimate().
|
inlineinherited |
resort row numbering in matrix to have ascending numbering
|
inlineinherited |
References Dune::Fem::makePairFunctor().
|
inlineinherited |
|
inlineinherited |
|
inlinevirtualinherited |
Return true
if the Operator is symmetric.
|
inline |
|
static |
|
protectedinherited |
|
protectedinherited |
|
mutableprotectedinherited |
|
mutableprotectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |