DUNE-FEM (unstable)
Local Mass Matrix inversion implementation, select the correct method in your implementation. More...
#include <dune/fem/operator/1order/localmassmatrix.hh>
Public Types | |
enum | |
is true if grid is structured grid | |
Public Member Functions | |
int | volumeQuadratureOrder (const EntityType &entity) const |
return appropriate quadrature order, default is 2 * order(entity) | |
LocalMassMatrixImplementation (const DiscreteFunctionSpaceType &spc, int volQuadOrd) | |
constructor taking space and volume quadrature order | |
LocalMassMatrixImplementation (const DiscreteFunctionSpaceType &spc, std::function< int(const int)> volQuadOrderFct=[](const int order) { return Capabilities::DefaultQuadrature< DiscreteFunctionSpaceType >::volumeOrder(order);}) | |
constructor taking space and volume quadrature order | |
LocalMassMatrixImplementation (const ThisType &other) | |
copy constructor | |
bool | affine () const |
returns true if geometry mapping is affine | |
double | getAffineMassFactor (const Geometry &geo) const |
return mass factor for diagonal mass matrix | |
template<class MassCaller , class BasisFunctionSet , class LocalFunction > | |
void | applyInverse (MassCaller &caller, const EntityType &entity, const BasisFunctionSet &basisFunctionSet, LocalFunction &lf) const |
template<class MassCaller , class LocalFunction > | |
void | applyInverse (MassCaller &caller, const EntityType &entity, LocalFunction &lf) const |
template<class LocalFunction > | |
void | applyInverse (const EntityType &entity, LocalFunction &lf) const |
apply local dg mass matrix to local function lf without mass factor | |
template<class LocalFunction > | |
void | applyInverse (LocalFunction &lf) const |
apply local dg mass matrix to local function lf without mass factor | |
template<class LocalMatrix > | |
void | rightMultiplyInverse (LocalMatrix &localMatrix) const |
compute localMatrix * M^-1 | |
template<class LocalMatrix > | |
void | leftMultiplyInverse (LocalMatrix &localMatrix) const |
compute M^-1 * localMatrix | |
Protected Member Functions | |
int | maxVolumeQuadratureOrder () const |
return appropriate quadrature order, default is 2 * order() | |
template<class LocalMatrix > | |
void | rightMultiplyInverseDgOrthoNormalBasis (LocalMatrix &localMatrix) const |
compute localMatrix * M^-1 | |
template<class LocalMatrix > | |
void | leftMultiplyInverseDgOrthoNormalBasis (LocalMatrix &localMatrix) const |
compute M^-1 * localMatrix | |
bool | entityHasChanged (const EntityType &entity) const |
returns true if the entity has been changed | |
template<class MassCaller , class BasisFunctionSet , class LocalFunction > | |
void | applyInverseDefault (MassCaller &caller, const EntityType &entity, const Geometry &geo, const BasisFunctionSet &basisFunctionSet, LocalFunction &lf) const |
template<class LocalMatrix > | |
void | rightMultiplyInverseDefault (const EntityType &entity, const Geometry &geo, LocalMatrix &localMatrix) const |
compute localMatrix * M^-1 | |
template<class LocalMatrix > | |
void | leftMultiplyInverseDefault (const EntityType &entity, const Geometry &geo, LocalMatrix &localMatrix) const |
compute M^-1 * localMatrix | |
template<class BasisFunctionSet , class LocalFunction > | |
void | applyInverseLocally (const EntityType &entity, const Geometry &geo, const BasisFunctionSet &basisFunctionSet, LocalFunction &lf) const |
apply local mass matrix to local function lf | |
template<class LocalMatrix > | |
void | leftMultiplyInverseLocally (const EntityType &entity, const Geometry &geo, LocalMatrix &localMatrix) const |
compute M^-1 * localMatrix | |
bool | setup () const |
setup and return affinity | |
template<class MassCaller , class Matrix > | |
void | buildMatrix (MassCaller &caller, const EntityType &entity, const Geometry &geo, const BasisFunctionSetType &set, std::size_t numDofs, Matrix &matrix) const |
build local mass matrix | |
template<class Matrix > | |
void | buildMatrixNoMassFactor (const EntityType &en, const Geometry &geo, const BasisFunctionSetType &set, const VolumeQuadratureType &volQuad, const int numDofs, Matrix &matrix, const bool applyIntegrationElement=true) const |
build local mass matrix with mass factor | |
template<class MassCallerType , class Matrix > | |
void | buildMatrixWithMassFactor (MassCallerType &caller, const EntityType &en, const Geometry &geo, const BasisFunctionSetType &set, const VolumeQuadratureType &volQuad, const int numDofs, Matrix &matrix) const |
build local mass matrix with mass factor | |
Detailed Description
class Dune::Fem::LocalMassMatrixImplementation< DiscreteFunctionSpace, VolumeQuadrature, refElemScaling >
Local Mass Matrix inversion implementation, select the correct method in your implementation.
Member Function Documentation
◆ applyInverse() [1/2]
|
inline |
apply local dg mass matrix to local function lf using the massFactor method of the caller
References Dune::Fem::LocalMassMatrixImplementation< DiscreteFunctionSpace, VolumeQuadrature, refElemScaling >::affine(), Dune::Fem::LocalMassMatrixImplementation< DiscreteFunctionSpace, VolumeQuadrature, refElemScaling >::applyInverseDefault(), and Dune::Fem::LocalMassMatrixImplementation< DiscreteFunctionSpace, VolumeQuadrature, refElemScaling >::applyInverseLocally().
Referenced by Dune::Fem::LocalMassMatrixImplementation< DiscreteFunctionSpace, VolumeQuadrature, refElemScaling >::applyInverse().
◆ applyInverse() [2/2]
|
inline |
apply local dg mass matrix to local function lf using the massFactor method of the caller
References Dune::Fem::LocalMassMatrixImplementation< DiscreteFunctionSpace, VolumeQuadrature, refElemScaling >::applyInverse(), and Dune::Fem::LocalFunction< BasisFunctionSet, LocalDofVector >::basisFunctionSet().
◆ applyInverseDefault()
|
inlineprotected |
apply local mass matrix to local function lf using the massFactor method of the caller
References Dune::Fem::LocalFunction< BasisFunctionSet, LocalDofVector >::size().
Referenced by Dune::Fem::LocalMassMatrixImplementation< DiscreteFunctionSpace, VolumeQuadrature, refElemScaling >::applyInverse().
The documentation for this class was generated from the following file:
- dune/fem/operator/1order/localmassmatrix.hh