![]() |
Chi-Tech
|
#include <PieceWiseLinearPolyhedronMapping.h>
Data Structures | |
| struct | FEface_data |
| struct | FEnodeFaceMap |
| struct | FEnodeMap |
| struct | FEnodeSideMap |
| struct | FEside_data3d |
Public Member Functions | |
| PieceWiseLinearPolyhedronMapping (const chi_mesh::Cell &polyh_cell, const chi_mesh::MeshContinuum &ref_grid, const QuadratureTetrahedron &volume_quadrature, const QuadratureTriangle &surface_quadrature) | |
| finite_element::VolumetricQuadraturePointData | MakeVolumetricQuadraturePointData () const override |
| finite_element::SurfaceQuadraturePointData | MakeSurfaceQuadraturePointData (size_t face_index) const override |
| double | ShapeValue (int i, const chi_mesh::Vector3 &xyz) const override |
| chi_mesh::Vector3 | GradShapeValue (int i, const chi_mesh::Vector3 &xyz) const override |
| void | ShapeValues (const chi_mesh::Vector3 &xyz, std::vector< double > &shape_values) const override |
| void | GradShapeValues (const chi_mesh::Vector3 &xyz, std::vector< chi_mesh::Vector3 > &gradshape_values) const override |
Public Member Functions inherited from chi_math::cell_mapping::PieceWiseLinearBaseMapping | |
| PieceWiseLinearBaseMapping (const chi_mesh::MeshContinuum &grid, const chi_mesh::Cell &cell, size_t num_nodes, std::vector< std::vector< int > > face_node_mappings) | |
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 |
Private Member Functions | |
| double | FaceSideShape (uint32_t face_index, uint32_t side_index, uint32_t i, const chi_mesh::Vector3 &qpoint, bool on_surface=false) const |
| double | FaceSideGradShape_x (uint32_t face_index, uint32_t side_index, uint32_t i) const |
| double | FaceSideGradShape_y (uint32_t face_index, uint32_t side_index, uint32_t i) const |
| double | FaceSideGradShape_z (uint32_t face_index, uint32_t side_index, uint32_t i) const |
Static Private Member Functions | |
| static double | TetShape (uint32_t index, const chi_mesh::Vector3 &qpoint, bool on_surface=false) |
| static double | TetGradShape_x (uint32_t index) |
| static double | TetGradShape_y (uint32_t index) |
| static double | TetGradShape_z (uint32_t index) |
Private Attributes | |
| std::vector< double > | face_betaf_ |
| Face Beta-factor. More... | |
| double | alphac_ |
| Cell alpha-factor. More... | |
| std::vector< FEface_data > | face_data_ |
| Holds determinants and data tet-by-tet. More... | |
| std::vector< FEnodeMap > | node_side_maps_ |
| Maps nodes to side tets. More... | |
| const QuadratureTetrahedron & | volume_quadrature_ |
| const QuadratureTriangle & | surface_quadrature_ |
Additional Inherited Members | |
Public Types inherited from chi_math::cell_mapping::PieceWiseLinearBaseMapping | |
| typedef std::vector< double > | VecDbl |
| typedef std::vector< chi_mesh::Vector3 > | VecVec3 |
Protected Types inherited from chi_math::CellMapping | |
| typedef std::function< void(const chi_mesh::MeshContinuum &, const chi_mesh::Cell &, double &, std::vector< double > &)> | VandAFunction |
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) | |
Static Protected Member Functions inherited from chi_math::cell_mapping::PieceWiseLinearBaseMapping | |
| 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::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_ |
Object for handling piecewise linear shape functions on polyhedron shaped 3D cells.
Definition at line 15 of file PieceWiseLinearPolyhedronMapping.h.
| chi_math::cell_mapping::PieceWiseLinearPolyhedronMapping::PieceWiseLinearPolyhedronMapping | ( | const chi_mesh::Cell & | polyh_cell, |
| const chi_mesh::MeshContinuum & | ref_grid, | ||
| const QuadratureTetrahedron & | volume_quadrature, | ||
| const QuadratureTriangle & | surface_quadrature | ||
| ) |
Constructor for the Piecewise Linear Polyhedron cell finite elment view.
Definition at line 16 of file pwl_polyhedron_00_constrdestr.cc.
|
private |
Precomputes the gradx-shape function values of a face-side pair at a quadrature point
Definition at line 31 of file pwl_polyhedron_01b_sidevalues.cc.
|
private |
Precomputes the grady-shape function values of a face-side pair at a quadrature point
Definition at line 73 of file pwl_polyhedron_01b_sidevalues.cc.
|
private |
Precomputes the gradz-shape function values of a face-side pair at a quadrature point
Definition at line 115 of file pwl_polyhedron_01b_sidevalues.cc.
|
private |
Precomputes the shape function values of a face-side pair at a quadrature point
Definition at line 8 of file pwl_polyhedron_01b_sidevalues.cc.
|
overridevirtual |
Returns the evaluation of grad-shape function i at the supplied point.
Implements chi_math::CellMapping.
Definition at line 108 of file pwl_polyhedron_02_xyz_shapefuncs.cc.
|
overridevirtual |
Populates gradshape_values with the value of each shape function's gradient evaluated at the supplied point.
Implements chi_math::CellMapping.
Definition at line 171 of file pwl_polyhedron_02_xyz_shapefuncs.cc.
|
overridevirtual |
Makes the surface quadrature point data for this element, at the specified face.
Implements chi_math::CellMapping.
Definition at line 89 of file pwl_polyhedron_04_initqpdata.cc.
|
overridevirtual |
Makes the volumetric/internal quadrature point data for this element.
Implements chi_math::CellMapping.
Definition at line 9 of file pwl_polyhedron_04_initqpdata.cc.
|
overridevirtual |
Returns the evaluation of shape function i at the supplied point.
Implements chi_math::CellMapping.
Definition at line 11 of file pwl_polyhedron_02_xyz_shapefuncs.cc.
|
overridevirtual |
Populates shape_values with the value of each shape function's value evaluate at the supplied point.
Implements chi_math::CellMapping.
Definition at line 60 of file pwl_polyhedron_02_xyz_shapefuncs.cc.
|
staticprivate |
Definition at line 20 of file pwl_polyhedron_01a_reftet.cc.
|
staticprivate |
Definition at line 31 of file pwl_polyhedron_01a_reftet.cc.
|
staticprivate |
Definition at line 42 of file pwl_polyhedron_01a_reftet.cc.
|
staticprivate |
Definition at line 6 of file pwl_polyhedron_01a_reftet.cc.
|
private |
Cell alpha-factor.
Definition at line 122 of file PieceWiseLinearPolyhedronMapping.h.
|
private |
Face Beta-factor.
Definition at line 121 of file PieceWiseLinearPolyhedronMapping.h.
|
private |
Holds determinants and data tet-by-tet.
Definition at line 125 of file PieceWiseLinearPolyhedronMapping.h.
|
private |
Maps nodes to side tets.
Definition at line 126 of file PieceWiseLinearPolyhedronMapping.h.
|
private |
Definition at line 129 of file PieceWiseLinearPolyhedronMapping.h.
|
private |
Definition at line 128 of file PieceWiseLinearPolyhedronMapping.h.