hp2FEM  0.1
Public Member Functions | Protected Attributes
HexaCollocationPoints Class Reference

Calculates the collocation points coordinates for the hexa element. The coordinates are also calculated for the line ans square elements. More...

#include <HexaCollocationPoints.h>

Collaboration diagram for HexaCollocationPoints:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 HexaCollocationPoints ()
 Default constructor.
 HexaCollocationPoints (HexaCollocationPoints &Instance)
 Copy-initializer constructor.
 ~HexaCollocationPoints ()
 Class destructor.
HexaCollocationPointsoperator= (HexaCollocationPoints &Instance)
 Copies the contents of instance to the object.
 operator SquareCollocationPoints & ()
 Cast operator for the reference of the class attribute "SquareCP".
 operator LineCollocationPoints & ()
 Cast operator for the reference of the class attribute "SquareCP".
void SetMaxPolyOrder (unsigned long MaxOrder)
 Sets the maximum polynomial order for the hexa collocation points.
unsigned long GetMaxPolyOrder ()
 Returns the maximum polynomial order for the hexa collocation points.
long GetCollocationPointsSetNumber (unsigned long PolyOrder)
 Returns the set number of the collocation points for the given polynomial order.
unsigned long GetTotalNumberCollocationPoints ()
 Returns the total number of collocation points.
unsigned long GetNumberCollocationPoints (ElementShape_E EntityShape, unsigned long PolyOrder, long &CollocationPointsSetNumber)
 Returns the number of collocation points for the given polynomial order and the collocation point set where they are stored.
unsigned long GetNumberCollocationPointsSets ()
 Returns the number of collocation points sets stored in the class.
double *const GetCollocationPointsCoords (ElementShape_E EntityShape, unsigned long PolyOrder, unsigned long &NumberPoints)
 Returns the collocation points for the given shape and polynomial order.
void RunCollocationPointsCoords (ElementShape_E EntityShape, collocationPointsAttributes_S &CPAttributes, OneIndexTable< unsigned long > &TensorIndices, BuiltInArray< unsigned long > &PolyOrder)
 Calculates the collocation points coordinates.
void Print (FILE *File, ElementShape_E Shape)
 Prints the collocation coordinates in the given ascii file.

Protected Attributes

LineCollocationPoints LineCP
 Instance of the LineNumericalCollocation class used to store the line coordinates for direction L1.
SquareCollocationPoints SquareCP
 Instance of the SquareCollocationPoints class to calculated 1D and square coordinates.
OneIndexTable< double > Coords
 Table that stores the collocation points coordinates.
unsigned long Pmax
 Maximum polynomial order.

Detailed Description

Calculates the collocation points coordinates for the hexa element. The coordinates are also calculated for the line ans square elements.

Author:
Fabiano Fernandes Bargos/Marco Lcio Bittencourt
Date:
March/15/2011

Constructor & Destructor Documentation

Copy-initializer constructor.

Parameters:
[in]Instance- instance of the HexaCollocationPoints class.

Member Function Documentation

double *const HexaCollocationPoints::GetCollocationPointsCoords ( ElementShape_E  EntityShape,
unsigned long  PolyOrder,
unsigned long &  NumberPoints 
)

Returns the collocation points for the given shape and polynomial order.

Parameters:
[in]EntityShape- entity shape for which the collocation poins are requested. If LINE, returns the line collocation points; if SQUARE, returns the collocation points for square; if HEXAHEDRON, returns the collocation points for the hexahedron
[in]PolyOrder- polynomial order
Returns:
pointer to the double array with the collocation coordinates for each node of the element.
long HexaCollocationPoints::GetCollocationPointsSetNumber ( unsigned long  PolyOrder)

Returns the set number of the collocation points for the given polynomial order.

Parameters:
[in]PolyOrder- polynomial order
Returns:
a long type with set number value

Returns the maximum polynomial order for the hexa collocation points.

Returns:
Maximum polynomial order as an unsigned long.
unsigned long HexaCollocationPoints::GetNumberCollocationPoints ( ElementShape_E  EntityShape,
unsigned long  PolyOrder,
long &  CollocationPointsSetNumber 
)

Returns the number of collocation points for the given polynomial order and the collocation point set where they are stored.

Parameters:
[in]EntityShape- entity shape for which the number of collocation points must be calculated. If it is HEXAHEDRON, the number of element collocation points are calculated; if it is SQUARE, the number of collocation points for squares are calculated; if it is LINE, only the number of line collocation points are calculated.
[in]PolyOrder- polynomial order for which the number of collocation points is requested.
[out]CollocationPointsSetNumber- number of the set where the collocation poins are stored.
Returns:
an unsigned long type with the number of collocation points.

Returns the number of collocation points sets stored in the class.

Returns:
an unsigned long type with the number of collocation points sets.

Returns the total number of collocation points.

Returns:
an unsigned long with value the total number of collocation points.
HexaCollocationPoints::operator LineCollocationPoints & ( )

Cast operator for the reference of the class attribute "SquareCP".

Returns:
reference to the class attribute "LineCP" of type LineCollocationPoints.
HexaCollocationPoints::operator SquareCollocationPoints & ( )

Cast operator for the reference of the class attribute "SquareCP".

Returns:
reference to the class attribute "SquareCP" of type SquareCollocationPoints.
HexaCollocationPoints & HexaCollocationPoints::operator= ( HexaCollocationPoints Instance)

Copies the contents of instance to the object.

Parameters:
[in]Instance- instance of the HexaCollocationPoints class.
void HexaCollocationPoints::Print ( FILE *  File,
ElementShape_E  Shape 
)

Prints the collocation coordinates in the given ascii file.

Parameters:
[in]File- pointer to the ascii file.
[in]EntityShape- entity shape for which the coolocation points must be printed. If LINE, onlye the line coordinates are printed; if SQUARE,, the square collocation points coodinates are printed; if HEXAHEDRON, the collocation points for hexahedron are printed.
void HexaCollocationPoints::RunCollocationPointsCoords ( ElementShape_E  EntityShape,
collocationPointsAttributes_S CPAttributes,
OneIndexTable< unsigned long > &  TensorIndices,
BuiltInArray< unsigned long > &  PolyOrder 
)

Calculates the collocation points coordinates.

Parameters:
[in]EntityShape- entity shape for which the coolocation points must be calculated. If LINE, onlye the line coordinates are calculated; if SQUARE, the line and square collocation points coodinates are calculated; if HEXAHEDRON, the collocation points for line, square and hexahedron are calculated.
[in]CPAttributes- attributes for the collocation points.
[in]TensorIndices- tensorization indices for the square element.
[in]PolyOrder- array with polynomial orders in ascending sequence.
void HexaCollocationPoints::SetMaxPolyOrder ( unsigned long  MaxOrder)

Sets the maximum polynomial order for the hexa collocation points.

Parameters:
[in]MaxOrder- maximum polynomial order.

The documentation for this class was generated from the following files:
 All Classes Files Functions Variables Typedefs Friends Defines