16 : d_quadOrder(order), d_elemType(element_type),
17 d_numQuadPts(
util::vtk_map_element_to_num_nodes[element_type]){};
21 const std::vector<util::Point> &nodes) {
22 std::cerr <<
"Error: For element type = " << d_elemType <<
" the map from "
23 <<
"element to reference element is not available.\n"
24 <<
"Therefore, shape function evaluation at any arbitrary point "
25 "in the element is not possible.\n";
29std::vector<std::vector<double>>
31 const std::vector<util::Point> &nodes) {
32 std::cerr <<
"Error: For element type = " << d_elemType <<
" the map from "
33 <<
"element to reference element is not available.\n"
34 <<
"Therefore, derivatives of shape function at any "
35 "arbitrary point in the element can not be computed.\n";
41 const std::vector<util::Point> &nodes) {
42 std::cerr <<
"Error: For element type = " << d_elemType <<
" the map from "
43 <<
"element to reference element is not available.\n";
49 std::cerr <<
"Error: init() of BaseElem must be implemented in inheriting "
virtual util::Point mapPointToRefElem(const util::Point &p, const std::vector< util::Point > &nodes)
Maps point p in a given element to the reference element and returns the mapped point.
BaseElem(size_t order, size_t element_type)
Constructor.
virtual std::vector< std::vector< double > > getDerShapes(const util::Point &p, const std::vector< util::Point > &nodes)
Returns the values of derivative of shape function at point p.
virtual std::vector< double > getShapes(const util::Point &p, const std::vector< util::Point > &nodes)
Returns the values of shape function at point p.
virtual void init()=0
Compute the quadrature points.
Collection of methods useful in simulation.
A structure to represent 3d vectors.