DUNE-FEM (unstable)

Dune::Fem::LocalMassMatrixImplementationDgOrthoNormal< DiscreteFunctionSpace, VolumeQuadrature, refElemScaling > Class Template Reference

DG Local Mass Matrix for arbitrary spaces. More...

#include <dune/fem/operator/1order/localmassmatrix.hh>

Public Types

enum  
 is true if grid is structured grid
 

Public Member Functions

template<class MassCallerType , class BasisFunction , class LocalFunctionType >
void applyInverse (MassCallerType &caller, const EntityType &en, const BasisFunction &basisFunction, LocalFunctionType &lf) const
 
template<class LocalFunctionType >
void applyInverse (const EntityType &en, LocalFunctionType &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
 
int volumeQuadratureOrder (const EntityType &entity) const
 return appropriate quadrature order, default is 2 * order(entity)
 
bool affine () const
 returns true if geometry mapping is affine
 
double getAffineMassFactor (const Geometry &geo) const
 return mass factor for diagonal mass matrix
 
void applyInverse (MassCaller &caller, const EntityType &entity, const BasisFunctionSet &basisFunctionSet, LocalFunction &lf) const
 
void applyInverse (MassCaller &caller, const EntityType &entity, LocalFunction &lf) const
 
void applyInverse (const EntityType &entity, LocalFunction &lf) const
 apply local dg mass matrix to local function lf without mass factor
 

Protected Member Functions

int maxVolumeQuadratureOrder () const
 return appropriate quadrature order, default is 2 * order()
 
void rightMultiplyInverseDgOrthoNormalBasis (LocalMatrix &localMatrix) const
 compute localMatrix * M^-1
 
void leftMultiplyInverseDgOrthoNormalBasis (LocalMatrix &localMatrix) const
 compute M^-1 * localMatrix
 
bool entityHasChanged (const EntityType &entity) const
 returns true if the entity has been changed
 
void applyInverseDefault (MassCaller &caller, const EntityType &entity, const Geometry &geo, const BasisFunctionSet &basisFunctionSet, LocalFunction &lf) const
 
void rightMultiplyInverseDefault (const EntityType &entity, const Geometry &geo, LocalMatrix &localMatrix) const
 compute localMatrix * M^-1
 
void leftMultiplyInverseDefault (const EntityType &entity, const Geometry &geo, LocalMatrix &localMatrix) const
 compute M^-1 * localMatrix
 
void applyInverseLocally (const EntityType &entity, const Geometry &geo, const BasisFunctionSet &basisFunctionSet, LocalFunction &lf) const
 apply local mass matrix to local function lf
 
void leftMultiplyInverseLocally (const EntityType &entity, const Geometry &geo, LocalMatrix &localMatrix) const
 compute M^-1 * localMatrix
 
bool setup () const
 setup and return affinity
 
void buildMatrix (MassCaller &caller, const EntityType &entity, const Geometry &geo, const BasisFunctionSetType &set, std::size_t numDofs, Matrix &matrix) const
 build local mass 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
 
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

template<class DiscreteFunctionSpace, class VolumeQuadrature, bool refElemScaling = true>
class Dune::Fem::LocalMassMatrixImplementationDgOrthoNormal< DiscreteFunctionSpace, VolumeQuadrature, refElemScaling >

DG Local Mass Matrix for arbitrary spaces.

Member Function Documentation

◆ applyInverse() [1/3]

void Dune::Fem::LocalMassMatrixImplementation< DiscreteFunctionSpace, VolumeQuadrature, refElemScaling >::applyInverse ( MassCaller &  caller,
const EntityType &  entity,
const BasisFunctionSet basisFunctionSet,
LocalFunction lf 
) const
inlineinherited

apply local dg mass matrix to local function lf using the massFactor method of the caller

◆ applyInverse() [2/3]

void Dune::Fem::LocalMassMatrixImplementation< DiscreteFunctionSpace, VolumeQuadrature, refElemScaling >::applyInverse ( MassCaller &  caller,
const EntityType &  entity,
LocalFunction lf 
) const
inlineinherited

apply local dg mass matrix to local function lf using the massFactor method of the caller

◆ applyInverse() [3/3]

template<class DiscreteFunctionSpace , class VolumeQuadrature , bool refElemScaling = true>
template<class MassCallerType , class BasisFunction , class LocalFunctionType >
void Dune::Fem::LocalMassMatrixImplementationDgOrthoNormal< DiscreteFunctionSpace, VolumeQuadrature, refElemScaling >::applyInverse ( MassCallerType &  caller,
const EntityType &  en,
const BasisFunction &  basisFunction,
LocalFunctionType &  lf 
) const
inline

apply local dg mass matrix to local function lf using the massFactor method of the caller

Referenced by Dune::Fem::LocalMassMatrixImplementationDgOrthoNormal< DiscreteFunctionSpace, VolumeQuadrature, refElemScaling >::applyInverse().

◆ applyInverseDefault()

void Dune::Fem::LocalMassMatrixImplementation< DiscreteFunctionSpace, VolumeQuadrature, refElemScaling >::applyInverseDefault ( MassCaller &  caller,
const EntityType &  entity,
const Geometry &  geo,
const BasisFunctionSet basisFunctionSet,
LocalFunction lf 
) const
inlineprotectedinherited

apply local mass matrix to local function lf using the massFactor method of the caller


The documentation for this class was generated from the following file:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Nov 20, 23:30, 2024)