34 libmesh_error_msg(
"Nedelec elements require the element type \nbecause edge orientation is needed.");
61 libmesh_assert_less (i, 4);
64 const Real eta = p(1);
69 libmesh_assert_less_equal ( std::fabs(xi), 1.0+10*
TOLERANCE );
70 libmesh_assert_less_equal ( std::fabs(eta), 1.0+10*
TOLERANCE );
105 libmesh_error_msg(
"Invalid i = " << i);
113 const Real xi = p(0);
114 const Real eta = p(1);
116 libmesh_assert_less (i, 3);
144 libmesh_error_msg(
"Invalid i = " << i);
149 libmesh_error_msg(
"ERROR: Unsupported 2D element type!: " << elem->
type());
155 libmesh_error_msg(
"ERROR: Unsupported 2D FE order!: " << total_order);
157 #else // LIBMESH_DIM > 1 171 libmesh_error_msg(
"Nedelec elements require the element type \nbecause edge orientation is needed.");
180 const unsigned int i,
181 const unsigned int j,
185 libmesh_assert(elem);
186 libmesh_assert_less (j, 2);
195 switch (elem->
type())
200 libmesh_assert_less (i, 4);
227 libmesh_error_msg(
"Invalid i = " << i);
254 libmesh_error_msg(
"Invalid i = " << i);
259 libmesh_error_msg(
"Invalid j = " << j);
267 libmesh_assert_less (i, 3);
293 libmesh_error_msg(
"Invalid i = " << i);
309 libmesh_error_msg(
"Invalid j = " << j);
314 libmesh_error_msg(
"ERROR: Unsupported 2D element type!: " << elem->
type());
319 libmesh_error_msg(
"ERROR: Unsupported 2D FE order!: " << total_order);
321 #else // LIBMESH_DIM > 1 336 libmesh_error_msg(
"Nedelec elements require the element type \nbecause edge orientation is needed.");
345 const unsigned int libmesh_dbg_var(i),
346 const unsigned int libmesh_dbg_var(j),
350 libmesh_assert(elem);
355 libmesh_assert_less (j, 3);
364 switch (elem->
type())
369 libmesh_assert_less (i, 4);
376 libmesh_assert_less (i, 3);
382 libmesh_error_msg(
"ERROR: Unsupported 2D element type!: " << elem->
type());
389 libmesh_error_msg(
"ERROR: Unsupported 2D FE order!: " << total_order);
393 #else // LIBMESH_DIM > 1
RealVectorValue RealGradient
static OutputShape shape(const ElemType t, const Order o, const unsigned int i, const Point &p)
The base class for all geometric element types.
static OutputShape shape_deriv(const ElemType t, const Order o, const unsigned int i, const unsigned int j, const Point &p)
unsigned int p_level() const
static const Real TOLERANCE
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual ElemType type() const =0
A geometric point in (x,y,z) space.
const Point & point(const unsigned int i) const
static OutputShape shape_second_deriv(const ElemType t, const Order o, const unsigned int i, const unsigned int j, const Point &p)