33 #ifndef __H__UG_DISC__GRADIENT_EVALUATORS__
34 #define __H__UG_DISC__GRADIENT_EVALUATORS__
47 template <
class TFunction>
52 typedef typename TFunction::element_type
elem_t;
56 m_aaPos(u->domain()->position_accessor()),
73 = ReferenceMappingProvider::get<dim, dim>(roid);
76 vector_t localIP = ReferenceElementCenter<dim>(roid);
79 const size_t numSH = lsfs.
num_sh();
98 for(
size_t sh = 0 ; sh < numSH; ++sh)
104 Vertex* vert = elem->vertex(sh);
107 std::vector<DoFIndex> ind;
108 u.inner_dof_indices(vert,
m_fct, ind);
120 typename TFunction::domain_type::position_accessor_type
m_aaPos;
virtual base class for reference mappings
Definition: reference_mapping_provider.h:53
virtual number jacobian_transposed_inverse(MathMatrix< worldDim, dim > &JTInv, const MathVector< dim > &locPos) const =0
returns transposed of the inverse of the jacobian and returns sqrt of gram determinante
virtual void update(const MathVector< worldDim > *vCornerCoord)=0
refresh mapping for new set of corners
Definition: gradient_evaluators.h:48
GradientEvaluator_LagrangeP1(TFunction *u, size_t fct)
Definition: gradient_evaluators.h:54
size_t m_fct
Definition: gradient_evaluators.h:121
TFunction::element_type elem_t
Definition: gradient_evaluators.h:52
vector_t evaluate(elem_t *elem)
Definition: gradient_evaluators.h:60
TFunction::domain_type::position_accessor_type m_aaPos
Definition: gradient_evaluators.h:120
static const int dim
Definition: gradient_evaluators.h:50
TFunction * m_pu
Definition: gradient_evaluators.h:119
std::vector< vector_t > vGlobalGrad
Definition: gradient_evaluators.h:125
std::vector< vector_t > vLocalGrad
Definition: gradient_evaluators.h:124
MathMatrix< dim, dim > JTInv
Definition: gradient_evaluators.h:123
MathVector< dim > vector_t
Definition: gradient_evaluators.h:51
std::vector< vector_t > vCorner
Definition: gradient_evaluators.h:126
Identifier for Local Finite Elements.
Definition: local_finite_element_id.h:98
@ LAGRANGE
Definition: local_finite_element_id.h:104
virtual size_t num_sh() const
Definition: local_dof_set.cpp:46
virtual base class for local shape function sets
Definition: local_shape_function_set.h:70
virtual void grads(grad_type *vGrad, const MathVector< dim > &x) const =0
returns all gradients evaluated at a point
Base-class for all vertex-types.
Definition: grid_base_objects.h:231
void CollectCornerCoordinates(std::vector< typename TAAPos::ValueType > &vCornerCoordsOut, const TElem &elem, const TAAPos &aaPos, bool clearContainer=true)
returns the corner coordinates of a geometric object
Definition: domain_util_impl.h:75
void MatVecMult(vector_t_out &vOut, const matrix_t &m, const vector_t_in &v)
Matrix - Vector Multiplication.
Definition: math_matrix_vector_functions_common_impl.hpp:49
void VecSet(vector_t &vInOut, typename vector_t::value_type s)
Set each vector component to scalar (componentwise)
Definition: math_vector_functions_common_impl.hpp:539
ReferenceObjectID
these ids are used to identify the shape of a geometric object.
Definition: grid_base_objects.h:74
number & DoFRef(TMatrix &mat, const DoFIndex &iInd, const DoFIndex &jInd)
Definition: multi_index.h:276