HcurlShapesetLobattoHex Class Reference

Hcurl shapeset for hexahedra. More...

#include <hcurllobattohex.h>

Inherits Shapeset.

List of all members.

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 CEDCombcalc_constrained_edge_combination (int ori, const order1_t &order, Part part)
virtual CEDCombcalc_constrained_edge_face_combination (int ori, const order2_t &order, Part part, int dir, int variant=0)
virtual CEDCombcalc_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

Detailed Description

Hcurl shapeset for hexahedra.


Constructor & Destructor Documentation

HcurlShapesetLobattoHex::HcurlShapesetLobattoHex (  ) 
HcurlShapesetLobattoHex::~HcurlShapesetLobattoHex (  )  [virtual]

Member Function Documentation

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]
Returns:
indices of bubble functions
Parameters:
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]
Returns:
indices of edge shape functions
Parameters:
[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.

Returns:
The number of possbile 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]
Returns:
indices of face shape functions
Parameters:
[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.

Returns:
The number of possbile orientations on a face
Parameters:
[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.

order3_t HcurlShapesetLobattoHex::get_order ( int  index  )  const [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.

Parameters:
[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.


Member Data Documentation

Array<int *> HcurlShapesetLobattoHex::bubble_indices [protected]
const int HcurlShapesetLobattoHex::NUM_EDGE_ORIS = 2 [static, protected]
const int HcurlShapesetLobattoHex::NUM_FACE_ORIS = 8 [static, protected]

Indices of vertex shape functions on reference element, indexing: [vertex shape fn index].


The documentation for this class was generated from the following files:
Generated on Fri Sep 3 09:22:20 2010 for Hermes3D Library: Real Version by  doxygen 1.6.3