hp2FEM  0.1
Public Member Functions | Protected Attributes
collocationPoints Class Reference

This class is a container class that returns the collocation point coordinates according to the element shape and topological entity. More...

#include <collocationPoints.h>

Collaboration diagram for collocationPoints:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 collocationPoints ()
 Default constructor.
 collocationPoints (ElementShape_E ElementShape, QuadCollocType_E CollocationType, unsigned long Alpha, unsigned long Beta, unsigned long MaxOrder)
 Constructor with all class attributes input as individual parameters.
 collocationPoints (collocationPointsAttributes_S &CPAttrib)
 Constructor with collocationPointsAttributes_S struct as parameter.
 collocationPoints (collocationPoints &Instance)
 Copy-initializer constructor.
collocationPointsAttributes_SGetCollocationPointsAttributes ()
 returns the collocation points attributes.
double *const GetCollocationPointsCoords (ElementShape_E ElementShape, ElementShape_E EntityShape, unsigned long PolyOrder, unsigned long &NumberPoints)
 Gets the collocation points for a given element shape and polynomial order.
long GetCollocationPointsSetNumber (ElementShape_E ElemShape, ElementShape_E EntityShape, unsigned long PolyOrder)
 Returns the set number of the collocation points for the given polynomial order.
unsigned long GetMaxPolyOrder (ElementShape_E ElemShape)
 Returns the maximum polynomial order according to element shape informed.
unsigned long GetNumberCollocationPoints (ElementShape_E ElementShape, 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 (ElementShape_E ElementShape)
 Returns the number of collocation points sets stored in the class.
unsigned long GetTotalNumberCollocationPoints (ElementShape_E ElemShape)
 Returns the total number of collocation points according to element shape informed.
 operator HexaCollocationPoints & ()
 Cast operator for the reference of the class attribute "HexaCP".
 operator LineCollocationPoints & ()
 Cast operator for the reference of the class attribute "LineCP".
 operator QuadCollocType_E ()
 Cast operator for the QuadCollocType field of CPAttributes struct.
 operator SquareCollocationPoints & ()
 Cast operator for the reference of the class attribute "SquareCP".
 operator TetraCollocationPoints & ()
 Cast operator for the reference of the class attribute "TetraCP".
 operator TriangleCollocationPoints & ()
 Cast operator for the reference of the class attribute "TriangleCP".
collocationPointsoperator= (collocationPoints &Instance)
 Copies the contents of instance to the object.
void Print (FILE *File, ElementShape_E ElementShape, ElementShape_E EntityShape)
 : Prints the collocation points attributes and values to the given ascii file.
void Read (FILE *DefFile, unsigned long GroupNumber, ElementShape_E ElementShape, unsigned long MaxOrder)
 Reads the collocation points attributes from the .def ascii file.
void RunCollocationPointsCoords (ElementShape_E ElementShape, ElementShape_E EntityShape, BuiltInArray< unsigned long > &PolyOrder, OneIndexTable< unsigned long > &Indices)
 Generates all the collocation points according to the polynomial orders given in PolyOrder.
void SetCollocationPointsAttributes (ElementShape_E ElementShape, QuadCollocType_E CollocationType, unsigned long Alpha, unsigned long Beta, unsigned long MaxOrder)
 Sets the attributes for the collocation points in out as individual parameters.
void SetCollocationPointsAttributes (collocationPointsAttributes_S &CPAttrib)
 Sets the attributes for the collocation points input as a instance of the CollocationPointsAttributes_S.
void SetMaxPolyOrder (ElementShape_E ElemShape, unsigned long MaxOrder)
 Sets the maximum polynomial according to element shape.
 ~collocationPoints ()
 Class destructor.

Protected Attributes

collocationPointsAttributes_S CPAttributes
 This variable stores a struct with all the atributtes of the collocationPoints class (collocation type and its weights Alpha and Beta, the element shape and the maximum polynomial order)
HexaCollocationPointsHexaCP
 Pointer to the HexaCollocationPoints class.
LineCollocationPointsLineCP
 Pointer to the LineCollocationPoints class.
SquareCollocationPointsSquareCP
 Pointer to the SquareCollocationPoints class.
TetraCollocationPointsTetraCP
 Pointer to the TetraCollocationPoints class.
TriangleCollocationPointsTriangleCP
 Pointer to the TriangleCollocationPoints class.

Detailed Description

This class is a container class that returns the collocation point coordinates according to the element shape and topological entity.

Note:
For instance, it's possible to get the line collocation point coordinates using the SquareCollocationPoints class. To do this just enter ElementShape = 'SQUARE' and Shape = 'LINE', and so on to the others element types
Author:
Fabiano Fernandes Bargos/Marco Lcio Bittencourt
Date:
March/15/2011

Constructor & Destructor Documentation

collocationPoints::collocationPoints ( ElementShape_E  ElementShape,
QuadCollocType_E  CollocationType,
unsigned long  Alpha,
unsigned long  Beta,
unsigned long  MaxOrder 
)

Constructor with all class attributes input as individual parameters.

Parameters:
[in]ElementShape,:element shape
[in]CollocationType,:specifies the quadrature type for the collocation points
[in]Alpha,Beta,:specifies the weights for the calculation of the coordinates of the collocation points
[in]MaxOrder- maximum polynomial order

Constructor with collocationPointsAttributes_S struct as parameter.

Parameters:
[in]CPAttributes- attributes for collocation points

Copy-initializer constructor.

Parameters:
[in]Instance- Reference for instance of the collocationPoints class

Member Function Documentation

returns the collocation points attributes.

Returns:
a struct with attributes of collocation points.
double *const collocationPoints::GetCollocationPointsCoords ( ElementShape_E  ElementShape,
ElementShape_E  EntityShape,
unsigned long  PolyOrder,
unsigned long &  NumberPoints 
)

Gets the collocation points for a given element shape and polynomial order.

Parameters:
[in]ElementShape- element shape.
[in]EntityShape- entity shape for which the collocation points must be calculated. If it is TRIANGLE, the element collocation points are calculated; if it is LINE, only the line collocation points are calculated.
[in]PolyOrder- polynomial order
[out]NumberPoints- Number of points for the polynomial order.
Returns:
a double * const with the points of coordinates.
long collocationPoints::GetCollocationPointsSetNumber ( ElementShape_E  ElemShape,
ElementShape_E  EntityShape,
unsigned long  PolyOrder 
)

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

Parameters:
[in]EntityShape- entity shape for which the collocation points must be calculated. If it is TRIANGLE, the element collocation points are calculated; if it is LINE, only the line collocation points are calculated.
[in]PolyOrder- polynomial order
Returns:
a long type with the set number value.
unsigned long collocationPoints::GetMaxPolyOrder ( ElementShape_E  ElemShape)

Returns the maximum polynomial order according to element shape informed.

Parameters:
[in]ElemShape- Element Shape.
Returns:
Maximum polynomial order as an unsigned long.
unsigned long collocationPoints::GetNumberCollocationPoints ( ElementShape_E  ElementShape,
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]Shape- element shape.
[in]EntityShape- entity shape for which the number of collocation points must be 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:
Returns the number of collocation points.
unsigned long collocationPoints::GetNumberCollocationPointsSets ( ElementShape_E  ElementShape)

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

Parameters:
[in]ElementShape- element shape.
Returns:
Returns the number of collocation points set.
unsigned long collocationPoints::GetTotalNumberCollocationPoints ( ElementShape_E  ElemShape)

Returns the total number of collocation points according to element shape informed.

Parameters:
[in]ElemShape- Element Shape.
Returns:
an unsigned long with value the total number of collocation points.
collocationPoints::operator HexaCollocationPoints & ( )

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

Returns:
reference to the class attribute "HexaCP" of type HexaCollocationPoints
collocationPoints::operator LineCollocationPoints & ( )

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

Returns:
reference to the class attribute "LineCP" of type LineCollocationPoints.
collocationPoints::operator QuadCollocType_E ( )

Cast operator for the QuadCollocType field of CPAttributes struct.

Returns:
the value to the QuadCollocType field of CPAttributes struct.
collocationPoints::operator SquareCollocationPoints & ( )

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

Returns:
reference to the class attribute "SquareCP" of type SquareCollocationPoints
collocationPoints::operator TetraCollocationPoints & ( )

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

Returns:
reference to the class attribute "TetraCP" of type TetraCollocationPoints
collocationPoints::operator TriangleCollocationPoints & ( )

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

Returns:
reference to the class attribute "TriangleCP" of type TriangleCollocationPoints
collocationPoints & collocationPoints::operator= ( collocationPoints Instance)

Copies the contents of instance to the object.

Parameters:
[in]Instance- instance of the CollocationPoints class
void collocationPoints::Print ( FILE *  File,
ElementShape_E  ElementShape,
ElementShape_E  EntityShape 
)

: Prints the collocation points attributes and values to the given ascii file.

Parameters:
[in]File- pointer to the ascii file
[in]ElementShape- element shape.
[in]EntityShape- entity shape for which the collocation points must be calculated. If it is TRIANGLE, the element collocation points are calculated; if it is LINE, only the line collocation points are calculated.
void collocationPoints::Read ( FILE *  DefFile,
unsigned long  GroupNumber,
ElementShape_E  ElementShape,
unsigned long  MaxOrder 
)

Reads the collocation points attributes from the .def ascii file.

Parameters:
[in]DEFFile- pointer to the .def ascii file
[in]GroupNumber- group number.
[in]ElementShape- element shape
[in]MaxOrder- maximum polynomial order
void collocationPoints::RunCollocationPointsCoords ( ElementShape_E  ElementShape,
ElementShape_E  EntityShape,
BuiltInArray< unsigned long > &  PolyOrder,
OneIndexTable< unsigned long > &  Indices 
)

Generates all the collocation points according to the polynomial orders given in PolyOrder.

Parameters:
[in]ElementShape- the element shape
[in]EntityShape- entity shape for which the collocation points must be calculated. If it is TRIANGLE, the element collocation points are calculated; if it is LINE, only the line collocation points are calculated.
[in]PolyOrder- element orders for a p-nonuniform mesh in an increasing sequence. For a p-uniform, this array stores only one value
[in]Indices- table of tensorization indices for each polynomial order given in PolyOrder
void collocationPoints::SetCollocationPointsAttributes ( ElementShape_E  ElementShape,
QuadCollocType_E  CollocationType,
unsigned long  Alpha,
unsigned long  Beta,
unsigned long  MaxOrder 
)

Sets the attributes for the collocation points in out as individual parameters.

Parameters:
[in]ElementShape,:element shape
[in]CollocationType,:specifies the quadrature type for the collocation points
[in]Alpha,Beta,:specifies the weights for the calculation of the coordinates of the collocation points
[in]MaxOrder- maximum polynomial order

Sets the attributes for the collocation points input as a instance of the CollocationPointsAttributes_S.

Parameters:
[in]CPAttributes- attributes for collocation points
void collocationPoints::SetMaxPolyOrder ( ElementShape_E  ElemShape,
unsigned long  MaxOrder 
)

Sets the maximum polynomial according to element shape.

Parameters:
[in]ElemShape- ElementShape_E.
[in]MaxOrder- maximum polynomial order.

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