23 template <
int size,
typename LocalView>
27 "This function is only supported for Lagrange basis");
28 assert(localView.bound() &&
"The local view must be bound to an element");
29 const auto& localFE = localView.tree().child(0).finiteElement();
30 lagrangeNodeCoords.resize(localFE.size());
31 std::vector<double> out;
32 for (
int i = 0; i < size; i++) {
34 localFE.localInterpolation().interpolate(ithCoord, out);
35 for (std::size_t j = 0; j < out.size(); j++)
36 lagrangeNodeCoords[j][i] = out[j];
38 for (
auto& nCoord : lagrangeNodeCoords)
39 nCoord = localView.element().geometry().global(nCoord);
void obtainLagrangeNodePositions(const LocalView &localView, std::vector< Dune::FieldVector< double, size > > &lagrangeNodeCoords)
A function to obtain the global positions of the nodes of an element with Lagrangian basis,...
Definition: functionhelper.hh:24
Definition: algorithms.hh:17
Definition: resultevaluators.hh:20
Concept to check if a node in a basis tree is a Lagrangian node.
Definition: concepts.hh:69