20 #ifndef __mast_libmesh_accessor_h__ 21 #define __mast_libmesh_accessor_h__ 29 #include <libmesh/system.h> 30 #include <libmesh/dof_map.h> 36 namespace libMeshWrapper {
38 template <
typename ScalarType,
typename VecType>
43 Accessor(
const libMesh::System& sys,
const VecType& vec):
64 "Invalid element degree-of-freedom index");
69 inline void init(
const libMesh::Elem& e) {
83 template <
typename Vec2Type>
84 inline ScalarType
dot(
const Vec2Type& v)
const {
87 this->
size(), v.size(),
88 "Inconsistent dimensions");
99 const libMesh::System *
_sys;
109 #endif // __mast_libmesh_accessor_h__ ScalarType get(const std::vector< ScalarType > &v, uint_t i)
std::vector< libMesh::dof_id_type > & dof_indices()
void init_dof_id_set(std::set< uint_t > &dofs)
ScalarType operator()(uint_t i) const
void init(const libMesh::Elem &e)
std::vector< libMesh::dof_id_type > _dof_ids
void set_system(libMesh::System &sys)
const std::vector< libMesh::dof_id_type > & dof_indices() const
Accessor(const libMesh::System &sys, const VecType &vec)
#define Assert2(cond, v1, v2, msg)
const libMesh::System * _sys
ScalarType dot(const Vec2Type &v) const
void set_vec(const VecType &vec)