hp2FEM
0.1
|
This class is a container class that returns the collocation point coordinates according to the element shape and topological entity. More...
#include <collocationPoints.h>
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. |
This class is a container class that returns the collocation point coordinates according to the element shape and topological entity.
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.
[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.
[in] | CPAttributes | - attributes for collocation points |
collocationPoints::collocationPoints | ( | collocationPoints & | Instance | ) |
Copy-initializer constructor.
[in] | Instance | - Reference for instance of the collocationPoints class |
returns the collocation points attributes.
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.
[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. |
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.
[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 |
unsigned long collocationPoints::GetMaxPolyOrder | ( | ElementShape_E | ElemShape | ) |
Returns the maximum polynomial order according to element shape informed.
[in] | ElemShape | - Element Shape. |
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.
[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. |
unsigned long collocationPoints::GetNumberCollocationPointsSets | ( | ElementShape_E | ElementShape | ) |
Returns the number of collocation points sets stored in the class.
[in] | ElementShape | - element shape. |
unsigned long collocationPoints::GetTotalNumberCollocationPoints | ( | ElementShape_E | ElemShape | ) |
Returns the total number of collocation points according to element shape informed.
[in] | ElemShape | - Element Shape. |
collocationPoints::operator HexaCollocationPoints & | ( | ) |
Cast operator for the reference of the class attribute "HexaCP".
collocationPoints::operator LineCollocationPoints & | ( | ) |
Cast operator for the reference of the class attribute "LineCP".
collocationPoints::operator QuadCollocType_E | ( | ) |
Cast operator for the QuadCollocType field of CPAttributes struct.
collocationPoints::operator SquareCollocationPoints & | ( | ) |
Cast operator for the reference of the class attribute "SquareCP".
collocationPoints::operator TetraCollocationPoints & | ( | ) |
Cast operator for the reference of the class attribute "TetraCP".
collocationPoints::operator TriangleCollocationPoints & | ( | ) |
Cast operator for the reference of the class attribute "TriangleCP".
collocationPoints & collocationPoints::operator= | ( | collocationPoints & | Instance | ) |
Copies the contents of instance to the object.
[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.
[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.
[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.
[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.
[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 |
void collocationPoints::SetCollocationPointsAttributes | ( | collocationPointsAttributes_S & | CPAttrib | ) |
Sets the attributes for the collocation points input as a instance of the CollocationPointsAttributes_S.
[in] | CPAttributes | - attributes for collocation points |
void collocationPoints::SetMaxPolyOrder | ( | ElementShape_E | ElemShape, |
unsigned long | MaxOrder | ||
) |
Sets the maximum polynomial according to element shape.
[in] | ElemShape | - ElementShape_E. |
[in] | MaxOrder | - maximum polynomial order. |