Chi-Tech
|
#include <LagrangeTriangleMapping.h>
Public Member Functions | |
LagrangeTriangleMapping (const chi_mesh::MeshContinuum &grid, const chi_mesh::Cell &cell, const Quadrature &volume_quadrature, const Quadrature &surface_quadrature) | |
Public Member Functions inherited from chi_math::cell_mapping::LagrangeBaseMapping | |
double | ShapeValue (int i, const chi_mesh::Vector3 &xyz) const override |
void | ShapeValues (const chi_mesh::Vector3 &xyz, std::vector< double > &shape_values) const override |
chi_mesh::Vector3 | GradShapeValue (int i, const chi_mesh::Vector3 &xyz) const override |
void | GradShapeValues (const chi_mesh::Vector3 &xyz, std::vector< chi_mesh::Vector3 > &gradshape_values) const override |
finite_element::VolumetricQuadraturePointData | MakeVolumetricQuadraturePointData () const override |
finite_element::SurfaceQuadraturePointData | MakeSurfaceQuadraturePointData (size_t face_index) const override |
Public Member Functions inherited from chi_math::CellMapping | |
const chi_mesh::Cell & | ReferenceCell () const |
const chi_mesh::MeshContinuum & | ReferenceGrid () const |
size_t | NumNodes () const |
size_t | NumFaceNodes (size_t face_index) const |
const std::vector< std::vector< int > > & | GetFaceNodeMappings () const |
double | CellVolume () const |
double | FaceArea (size_t face_index) const |
int | MapFaceNode (size_t face_index, size_t face_node_index) const |
virtual double | ShapeValue (int i, const chi_mesh::Vector3 &xyz) const =0 |
virtual void | ShapeValues (const chi_mesh::Vector3 &xyz, std::vector< double > &shape_values) const =0 |
virtual chi_mesh::Vector3 | GradShapeValue (int i, const chi_mesh::Vector3 &xyz) const =0 |
virtual void | GradShapeValues (const chi_mesh::Vector3 &xyz, std::vector< chi_mesh::Vector3 > &gradshape_values) const =0 |
const std::vector< chi_mesh::Vector3 > & | GetNodeLocations () const |
virtual finite_element::VolumetricQuadraturePointData | MakeVolumetricQuadraturePointData () const =0 |
virtual finite_element::SurfaceQuadraturePointData | MakeSurfaceQuadraturePointData (size_t face_index) const =0 |
virtual | ~CellMapping ()=default |
Protected Member Functions | |
double | RefShape (uint32_t i, const Vec3 &qpoint) const override |
Vec3 | RefGradShape (uint32_t i, const Vec3 &qpoint) const override |
MatDbl | RefJacobian (const Vec3 &qpoint) const override |
std::pair< double, Vec3 > | RefFaceJacobianDeterminantAndNormal (size_t face_index, const Vec3 &qpoint_face) const override |
Vec3 | FaceToElementQPointConversion (size_t face_index, const Vec3 &qpoint_face) const override |
Protected Member Functions inherited from chi_math::cell_mapping::LagrangeBaseMapping | |
LagrangeBaseMapping (const chi_mesh::MeshContinuum &grid, const chi_mesh::Cell &cell, size_t num_nodes, std::vector< std::vector< int > > face_node_mappings, const Quadrature &volume_quadrature, const Quadrature &surface_quadrature) | |
Vec3 | MapWorldXYZToNaturalXYZ (const Vec3 &world_xyz) const |
virtual double | RefShape (uint32_t i, const Vec3 &qpoint) const =0 |
virtual Vec3 | RefGradShape (uint32_t i, const Vec3 &qpoint) const =0 |
virtual MatDbl | RefJacobian (const Vec3 &qpoint) const =0 |
virtual std::pair< double, Vec3 > | RefFaceJacobianDeterminantAndNormal (size_t face_index, const Vec3 &qpoint_face) const |
virtual Vec3 | FaceToElementQPointConversion (size_t face_index, const Vec3 &qpoint_face) const =0 |
virtual const Quadrature & | GetSurfaceQuadrature (size_t face_index) const |
Protected Member Functions inherited from chi_math::CellMapping | |
CellMapping (const chi_mesh::MeshContinuum &grid, const chi_mesh::Cell &cell, size_t num_nodes, std::vector< chi_mesh::Vector3 > node_locations, std::vector< std::vector< int > > face_node_mappings, const VandAFunction &volume_area_function) | |
Additional Inherited Members | |
Protected Types inherited from chi_math::cell_mapping::LagrangeBaseMapping | |
typedef chi_mesh::Vector3 | Vec3 |
typedef std::vector< double > | VecDbl |
typedef std::vector< VecDbl > | MatDbl |
Protected Types inherited from chi_math::CellMapping | |
typedef std::function< void(const chi_mesh::MeshContinuum &, const chi_mesh::Cell &, double &, std::vector< double > &)> | VandAFunction |
Static Protected Member Functions inherited from chi_math::cell_mapping::LagrangeBaseMapping | |
static std::vector< chi_mesh::Vector3 > | GetVertexLocations (const chi_mesh::MeshContinuum &grid, const chi_mesh::Cell &cell) |
static std::vector< std::vector< int > > | MakeFaceNodeMapping (const chi_mesh::Cell &cell) |
Static Protected Member Functions inherited from chi_math::CellMapping | |
static void | ComputeCellVolumeAndAreas (const chi_mesh::MeshContinuum &grid, const chi_mesh::Cell &cell, double &volume, std::vector< double > &areas) |
Protected Attributes inherited from chi_math::cell_mapping::LagrangeBaseMapping | |
const Quadrature & | volume_quadrature_ |
const Quadrature & | surface_quadrature_ |
Protected Attributes inherited from chi_math::CellMapping | |
const chi_mesh::MeshContinuum & | ref_grid_ |
const chi_mesh::Cell & | cell_ |
const size_t | num_nodes_ |
const std::vector< chi_mesh::Vector3 > | node_locations_ |
double | volume_ = 0.0 |
std::vector< double > | areas_ |
const std::vector< std::vector< int > > | face_node_mappings_ |
Lagrange element mapping for a triangle.
Definition at line 11 of file LagrangeTriangleMapping.h.
chi_math::cell_mapping::LagrangeTriangleMapping::LagrangeTriangleMapping | ( | const chi_mesh::MeshContinuum & | grid, |
const chi_mesh::Cell & | cell, | ||
const Quadrature & | volume_quadrature, | ||
const Quadrature & | surface_quadrature | ||
) |
Definition at line 10 of file LagrangeTriangleMapping.cc.
|
overrideprotectedvirtual |
Converts a face quadrature point to a reference element position allowing the reuse of the reference element shape functions. Meant to be overridden by a specific element mapping.
Implements chi_math::cell_mapping::LagrangeBaseMapping.
Definition at line 91 of file LagrangeTriangleMapping.cc.
|
overrideprotectedvirtual |
Computes the determinant of the surface Jacobian and the surface normal at the face quadrature point.
Reimplemented from chi_math::cell_mapping::LagrangeBaseMapping.
Definition at line 72 of file LagrangeTriangleMapping.cc.
|
overrideprotectedvirtual |
Reference element shape function gradient evaluation. Meant to be overridden by a specific element mapping.
Implements chi_math::cell_mapping::LagrangeBaseMapping.
Definition at line 36 of file LagrangeTriangleMapping.cc.
|
overrideprotectedvirtual |
Reference element Jacobian evaluation. Meant to be overridden by a specific element mapping.
Implements chi_math::cell_mapping::LagrangeBaseMapping.
Definition at line 50 of file LagrangeTriangleMapping.cc.
|
overrideprotectedvirtual |
Reference element shape function evaluation. Meant to be overridden by a specific element mapping.
Implements chi_math::cell_mapping::LagrangeBaseMapping.
Definition at line 24 of file LagrangeTriangleMapping.cc.