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_S & GetCollocationPointsAttributes ()
 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".
collocationPoints & operator= (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)
HexaCollocationPoints * HexaCP
 Pointer to the HexaCollocationPoints class.
LineCollocationPoints * LineCP
 Pointer to the LineCollocationPoints class.
SquareCollocationPoints * SquareCP
 Pointer to the SquareCollocationPoints class.
TetraCollocationPoints * TetraCP
 Pointer to the TetraCollocationPoints class.
TriangleCollocationPoints * TriangleCP
 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