![]() |
Dune-Fufem 2.11-git
|
Loading...
Searching...
No Matches
interiorpenaltydgassembler.hh
Go to the documentation of this file.
11#warning This header is deprecated and will be removed after 2.11. Use Dune::Fufem::Forms instead.
72[[deprecated("This class is deprecated and will be removed after 2.11. Use Dune::Fufem::Forms instead.")]]
82 [[deprecated("This class is deprecated and will be removed after 2.11. Use Dune::Fufem::Forms instead.")]]
89 [[deprecated("This class is deprecated and will be removed after 2.11. Use Dune::Fufem::Forms instead.")]]
90 InteriorPenaltyDGAssembler(double penalty, bool dirichlet=true, DGType dgType=DGType::SIPG, double gradientPenalty=0) :
111 void indices(const Edge& it, BoolMatrix& isNonZero, const TestLocalFE& tFE, const AnsatzLocalFE& aFE) const
128 void assemble(const Edge& edge, LocalMatrix& localMatrix, const TestLocalFE& tFE, const AnsatzLocalFE& aFE) const
216 void assemble(const Edge& edge, LocalMatrix& localMatrix, const TestLocalFE& tFEinside, const AnsatzLocalFE& aFEinside, const TestLocalFE& tFEoutside, const AnsatzLocalFE& aFEoutside) const
221 // to avoid too much duplicate code, we write this method, which was designed for the vintage intersection operator assembler, by calling
262 void assembleBlockwise(const Edge& edge, MC& matrixContainer, const TestLocalFE& tFEinside, const AnsatzLocalFE& aFEinside, const TestLocalFE& tFEoutside, const AnsatzLocalFE& aFEoutside) const
279 QuadratureRuleKey tFEquad(edge.type(), std::max(tFEinside.localBasis().order(),tFEoutside.localBasis().order()));
303 const auto& invJacobian = insideGeometry.jacobianInverseTransposed(edge.geometryInInside().global(quadPos));
304 const auto& outsideInvJacobian = outsideGeometry.jacobianInverseTransposed(edge.geometryInOutside().global(quadPos));
310 tFEinside.localBasis().evaluateJacobian(edge.geometryInInside().global(quadPos), insideReferenceGradients);
311 tFEoutside.localBasis().evaluateJacobian(edge.geometryInOutside().global(quadPos), outsideReferenceGradients);
320 tFEinside.localBasis().evaluateFunction(edge.geometryInInside().global(quadPos), tFEinsideValues);
321 tFEoutside.localBasis().evaluateFunction(edge.geometryInOutside().global(quadPos), tFEoutsideValues);
int size() const
size_type dim() const
#define DUNE_THROW(E,...)
typename Imp::BlockTraits< T >::field_type field_type
K field_type
const K & scalar() const
Local assembler for edge contributions in the Interior Penalty Discontinuous Galerkin (IPDG) method.
Definition interiorpenaltydgassembler.hh:74
void assemble(const Edge &edge, LocalMatrix &localMatrix, const TestLocalFE &tFE, const AnsatzLocalFE &aFE) const
Assemble penalty term for boundary edges.
Definition interiorpenaltydgassembler.hh:128
void assemble(const Edge &edge, LocalMatrix &localMatrix, const TestLocalFE &tFEinside, const AnsatzLocalFE &aFEinside, const TestLocalFE &tFEoutside, const AnsatzLocalFE &aFEoutside) const
Assemble penalty term for interior edges.
Definition interiorpenaltydgassembler.hh:216
InteriorPenaltyDGAssembler(double penalty, bool dirichlet=true, DGType dgType=DGType::SIPG, double gradientPenalty=0)
Definition interiorpenaltydgassembler.hh:90
void assembleBlockwise(const Edge &edge, MC &matrixContainer, const TestLocalFE &tFEinside, const AnsatzLocalFE &aFEinside, const TestLocalFE &tFEoutside, const AnsatzLocalFE &aFEoutside) const
Assemble penalty term for interior edges.
Definition interiorpenaltydgassembler.hh:262
void indices(const Edge &it, BoolMatrix &isNonZero, const TestLocalFE &tFEi, const AnsatzLocalFE &aFEi, const TestLocalFE &tFEo, const AnsatzLocalFE &aFEo) const
Definition interiorpenaltydgassembler.hh:117
void indices(const Edge &it, BoolMatrix &isNonZero, const TestLocalFE &tFE, const AnsatzLocalFE &aFE) const
Definition interiorpenaltydgassembler.hh:111
InteriorPenaltyDGAssembler()
Definition interiorpenaltydgassembler.hh:83
void setPenalty(double penaltyParameter)
Definition interiorpenaltydgassembler.hh:97
void setGradientPenalty(double gradientPenalty)
Definition interiorpenaltydgassembler.hh:104
static const Dune::QuadratureRule< coord_type, dim > & rule(const Dune::GeometryType >, const int order, int refinement)
Definition quadraturerulecache.hh:196
T max(T... args)
T size(T... args)
