5 #include <amdis/localoperators/FirstOrderTestPartialTrial.hpp> 25 template <
class LC,
class Gr
idFct>
32 static_assert( static_size_v<typename GridFct::Range> == 1,
"Expression must be of scalar type." );
40 template <
class CG,
class Node,
class Vec>
41 void getElementVector(CG
const& contextGeo, Node
const& node, Vec& elementVector)
43 static_assert(Node::isLeaf,
"Operator can be applied to Leaf-Nodes only.");
45 auto const& quad = this->getQuadratureRule(contextGeo.type(), node);
48 for (
auto const& qp : quad) {
50 decltype(
auto) local = contextGeo.local(qp.position());
53 auto dx = contextGeo.integrationElement(qp.position()) * qp.weight();
54 dx *= Super::coefficient(local);
57 auto const& partial = localBasis.partialsAt(local, comp_);
59 for (std::size_t j = 0; j < localBasis.size(); ++j) {
60 const auto local_j = node.localIndex(j);
61 elementVector[local_j] += dx * partial[j];
Definition: FirstOrderPartialTest.hpp:16
Convert a simple (scalar) local basis into a global basis.
Definition: LocalToGlobalAdapter.hpp:64
The base-template for GridFunctionOperators.
Definition: GridFunctionOperator.hpp:242
Contains all classes needed for solving linear and non linear equation systems.
Definition: AdaptBase.hpp:6
The main implementation of an CRTP-base class for operators using a grid-function coefficient to be u...
Definition: GridFunctionOperator.hpp:39