Hcurl shapeset for hexahedra. More...
#include <hcurllobattohex.h>
Inherits Shapeset.
Public Member Functions | |
| HcurlShapesetLobattoHex () | |
| virtual | ~HcurlShapesetLobattoHex () |
| virtual int | get_vertex_index (int vertex) const |
| virtual int * | get_edge_indices (int edge, int ori, order1_t order) |
| virtual int * | get_face_indices (int face, int ori, order2_t order) |
| virtual int * | get_bubble_indices (order3_t order) |
| virtual int | get_num_edge_fns (order1_t order) const |
| virtual int | get_num_face_fns (order2_t order) const |
| virtual int | get_num_bubble_fns (order3_t order) const |
| virtual int | get_face_orientations (int face) const |
| Get the number of possible orientations on a face. | |
| virtual int | get_edge_orientations () const |
| Get the number of possible orientations on an edge. | |
| virtual int | get_face_fn_variant (int index) const |
| Returns the variant of a face function It is needed only in Hcurl-derived shapesets where we need to distinguish between to variants of shape functions, other shapesets are returning 0. | |
| virtual order3_t | get_order (int index) const |
| virtual order3_t | get_dcmp (int index) const |
| Get function decomposition for product shapesets. | |
| virtual int | get_shape_type (int index) const |
| virtual void | get_values (int n, int index, int np, QuadPt3D *pt, int component, double *vals) |
| Evaluate function in the set of points. | |
| virtual double | get_value (int n, int index, double x, double y, double z, int component) |
| Evaluate function 'index' in points 'pt'. | |
Protected Member Functions | |
| void | compute_edge_indices (int edge, int ori, order1_t order) |
| void | compute_face_indices (int face, int ori, order2_t order) |
| void | compute_bubble_indices (order3_t order) |
| virtual CEDComb * | calc_constrained_edge_combination (int ori, const order1_t &order, Part part) |
| virtual CEDComb * | calc_constrained_edge_face_combination (int ori, const order2_t &order, Part part, int dir, int variant=0) |
| virtual CEDComb * | calc_constrained_face_combination (int ori, const order2_t &order, Part part, int variant=0) |
Protected Attributes | |
| shape_fn_deleg_t | shape_table_deleg [VALUE_TYPES] |
| int | max_edge_order |
| int | max_face_order |
| int * | vertex_indices |
| Indices of vertex shape functions on reference element, indexing: [vertex shape fn index]. | |
| Array< int * > | edge_indices [Hex::NUM_EDGES][NUM_EDGE_ORIS] |
| Array< int * > | face_indices [Hex::NUM_FACES][NUM_FACE_ORIS] |
| Array< int * > | bubble_indices |
Static Protected Attributes | |
| static const int | NUM_EDGE_ORIS = 2 |
| static const int | NUM_FACE_ORIS = 8 |
Hcurl shapeset for hexahedra.
| HcurlShapesetLobattoHex::HcurlShapesetLobattoHex | ( | ) |
| HcurlShapesetLobattoHex::~HcurlShapesetLobattoHex | ( | ) | [virtual] |
| CEDComb * HcurlShapesetLobattoHex::calc_constrained_edge_combination | ( | int | ori, | |
| const order1_t & | order, | |||
| Part | part | |||
| ) | [protected, virtual] |
Reimplemented from Shapeset.
| CEDComb * HcurlShapesetLobattoHex::calc_constrained_edge_face_combination | ( | int | ori, | |
| const order2_t & | order, | |||
| Part | part, | |||
| int | dir, | |||
| int | variant = 0 | |||
| ) | [protected, virtual] |
Reimplemented from Shapeset.
| CEDComb * HcurlShapesetLobattoHex::calc_constrained_face_combination | ( | int | ori, | |
| const order2_t & | order, | |||
| Part | part, | |||
| int | variant = 0 | |||
| ) | [protected, virtual] |
Reimplemented from Shapeset.
| void HcurlShapesetLobattoHex::compute_bubble_indices | ( | order3_t | order | ) | [protected] |
| void HcurlShapesetLobattoHex::compute_edge_indices | ( | int | edge, | |
| int | ori, | |||
| order1_t | order | |||
| ) | [protected] |
| void HcurlShapesetLobattoHex::compute_face_indices | ( | int | face, | |
| int | ori, | |||
| order2_t | order | |||
| ) | [protected] |
| virtual int* HcurlShapesetLobattoHex::get_bubble_indices | ( | order3_t | order | ) | [inline, virtual] |
| order | - order of the bubble function |
Implements Shapeset.
| order3_t HcurlShapesetLobattoHex::get_dcmp | ( | int | index | ) | const [virtual] |
Get function decomposition for product shapesets.
Implements Shapeset.
| virtual int* HcurlShapesetLobattoHex::get_edge_indices | ( | int | edge, | |
| int | ori, | |||
| order1_t | order | |||
| ) | [inline, virtual] |
| [in] | edge | - edge number (local) |
| [in] | ori | - orientation of the edge (0 or 1) |
| [in] | order | - order on the edge |
Implements Shapeset.
| virtual int HcurlShapesetLobattoHex::get_edge_orientations | ( | ) | const [inline, virtual] |
Get the number of possible orientations on an edge.
Implements Shapeset.
| int HcurlShapesetLobattoHex::get_face_fn_variant | ( | int | index | ) | const [virtual] |
Returns the variant of a face function It is needed only in Hcurl-derived shapesets where we need to distinguish between to variants of shape functions, other shapesets are returning 0.
Reimplemented from Shapeset.
| virtual int* HcurlShapesetLobattoHex::get_face_indices | ( | int | face, | |
| int | ori, | |||
| order2_t | order | |||
| ) | [inline, virtual] |
| [in] | face | - face number (local) |
| [in] | ori | - orientation of the face |
| [in] | order | - order on the face |
Implements Shapeset.
| virtual int HcurlShapesetLobattoHex::get_face_orientations | ( | int | face | ) | const [inline, virtual] |
Get the number of possible orientations on a face.
| [in] | face | The number of the face for which the orientations are evaluated |
Implements Shapeset.
| virtual int HcurlShapesetLobattoHex::get_num_bubble_fns | ( | order3_t | order | ) | const [inline, virtual] |
Implements Shapeset.
| virtual int HcurlShapesetLobattoHex::get_num_edge_fns | ( | order1_t | order | ) | const [inline, virtual] |
Implements Shapeset.
| virtual int HcurlShapesetLobattoHex::get_num_face_fns | ( | order2_t | order | ) | const [inline, virtual] |
Implements Shapeset.
| int HcurlShapesetLobattoHex::get_shape_type | ( | int | index | ) | const [virtual] |
Implements Shapeset.
| virtual double HcurlShapesetLobattoHex::get_value | ( | int | n, | |
| int | index, | |||
| double | x, | |||
| double | y, | |||
| double | z, | |||
| int | component | |||
| ) | [inline, virtual] |
Evaluate function 'index' in points 'pt'.
Implements Shapeset.
| virtual void HcurlShapesetLobattoHex::get_values | ( | int | n, | |
| int | index, | |||
| int | np, | |||
| QuadPt3D * | pt, | |||
| int | component, | |||
| double * | vals | |||
| ) | [inline, virtual] |
Evaluate function in the set of points.
| [in] | n | |
| [in] | index | - Index of the function being evaluate |
| [in] | np | - The number of points in array 'pt' |
| [in] | pt | - Points where the function is evaluated |
| [in] | component | - The number of component of the evaluated function |
| [out] | vals | - The array of vakues (caller is responsible for freeing this memory) |
Implements Shapeset.
| virtual int HcurlShapesetLobattoHex::get_vertex_index | ( | int | vertex | ) | const [inline, virtual] |
Implements Shapeset.
Array<int *> HcurlShapesetLobattoHex::bubble_indices [protected] |
Array<int *> HcurlShapesetLobattoHex::edge_indices[Hex::NUM_EDGES][NUM_EDGE_ORIS] [protected] |
Array<int *> HcurlShapesetLobattoHex::face_indices[Hex::NUM_FACES][NUM_FACE_ORIS] [protected] |
int HcurlShapesetLobattoHex::max_edge_order [protected] |
int HcurlShapesetLobattoHex::max_face_order [protected] |
const int HcurlShapesetLobattoHex::NUM_EDGE_ORIS = 2 [static, protected] |
const int HcurlShapesetLobattoHex::NUM_FACE_ORIS = 8 [static, protected] |
shape_fn_deleg_t HcurlShapesetLobattoHex::shape_table_deleg[VALUE_TYPES] [protected] |
int* HcurlShapesetLobattoHex::vertex_indices [protected] |
Indices of vertex shape functions on reference element, indexing: [vertex shape fn index].
1.6.3