Chi-Tech
LagrangeWedgeMapping.h
Go to the documentation of this file.
1#ifndef CHITECH_LAGRANGEWEDGEMAPPING_H
2#define CHITECH_LAGRANGEWEDGEMAPPING_H
3
5
7{
8
9/**Lagrange element mapping for a wedge (extruded triangle).
10* \ingroup doc_CellMappings*/
12{
13public:
15 const chi_mesh::Cell& cell,
16 const Quadrature& volume_quadrature,
17 const Quadrature& surface_quadrature,
18 const Quadrature& aux_surface_quadrature);
19
20protected:
21 double RefShape(uint32_t i, const Vec3& qpoint) const override;
22 Vec3 RefGradShape(uint32_t i, const Vec3& qpoint) const override;
23
24 MatDbl RefJacobian(const Vec3& qpoint) const override;
25
26 Vec3 FaceToElementQPointConversion(size_t face_index,
27 const Vec3& qpoint_face) const override;
28
29 std::pair<double, Vec3>
31 const Vec3& qpoint_face) const override;
32
33 const Quadrature& GetSurfaceQuadrature(size_t face_index) const override;
34
35 // for use on the bottom and top triangular faces
37};
38
39} // namespace chi_math::cell_mapping
40
41#endif // CHITECH_LAGRANGEWEDGEMAPPING_H
MatDbl RefJacobian(const Vec3 &qpoint) const override
const Quadrature & GetSurfaceQuadrature(size_t face_index) const override
Vec3 RefGradShape(uint32_t i, const Vec3 &qpoint) const override
Vec3 FaceToElementQPointConversion(size_t face_index, const Vec3 &qpoint_face) const override
std::pair< double, Vec3 > RefFaceJacobianDeterminantAndNormal(size_t face_index, const Vec3 &qpoint_face) const override
double RefShape(uint32_t i, const Vec3 &qpoint) const override
LagrangeWedgeMapping(const chi_mesh::MeshContinuum &grid, const chi_mesh::Cell &cell, const Quadrature &volume_quadrature, const Quadrature &surface_quadrature, const Quadrature &aux_surface_quadrature)