93 BaseElem(
size_t order,
size_t element_type);
120 virtual double elemSize(
const std::vector<util::Point> &nodes) = 0;
138 virtual std::vector<double>
148 virtual std::vector<std::vector<double>>
150 const std::vector<util::Point> &nodes);
169 virtual std::vector<fe::QuadData>
188 virtual std::vector<fe::QuadData>
208 virtual std::vector<std::vector<double>>
220 const std::vector<util::Point> &nodes);
232 const std::vector<util::Point> &nodes,
233 std::vector<std::vector<double>> *J) = 0;
240 virtual void init() = 0;
A base class which provides methods to map points to/from reference element and to compute quadrature...
size_t getQuadOrder()
Get order of quadrature approximation.
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.
size_t d_numQuadPts
Number of quadrature points for order d_quadOrder.
virtual std::vector< fe::QuadData > getQuadPoints(const std::vector< util::Point > &nodes)=0
Get vector of quadrature data.
virtual std::vector< double > getShapes(const util::Point &p)=0
Returns the values of shape function at point p on reference element.
size_t getElemType()
Get element type.
std::vector< fe::QuadData > d_quads
Quadrature data collection.
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< fe::QuadData > getQuadDatas(const std::vector< util::Point > &nodes)=0
Get vector of quadrature data.
size_t getNumQuadPoints()
Get number of quadrature points in the data.
virtual std::vector< double > getShapes(const util::Point &p, const std::vector< util::Point > &nodes)
Returns the values of shape function at point p.
size_t d_elemType
Element type.
virtual std::vector< std::vector< double > > getDerShapes(const util::Point &p)=0
Returns the values of derivative of shape function at point p on reference element.
virtual double elemSize(const std::vector< util::Point > &nodes)=0
Returns the size of element (length in 1-d, area in 2-d, volume in 3-d element)
virtual double getJacobian(const util::Point &p, const std::vector< util::Point > &nodes, std::vector< std::vector< double > > *J)=0
Computes Jacobian of map from reference element to given element .
size_t d_quadOrder
Order of quadrature point integration approximation.
virtual void init()=0
Compute the quadrature points.
Collection of methods and data related to finite element and mesh.
A structure to represent 3d vectors.