hp2FEM
0.1
|
Calculates the collocation points coordinates for the tetra element. The coordinates are also calculated for the line and face elements. More...
#include <TetraCollocationPoints.h>
Public Member Functions | |
TetraCollocationPoints () | |
Default onstructor. | |
TetraCollocationPoints (TetraCollocationPoints &Instance) | |
Copy-initializer constructor. | |
~TetraCollocationPoints () | |
Class destructor. | |
TetraCollocationPoints & | operator= (TetraCollocationPoints &Instance) |
Copies the contents of instance to the object. | |
operator LineCollocationPoints & () | |
Cast operator for the reference of the class attribute "LineCP". | |
operator TriangleCollocationPoints & () | |
Cast operator for the reference of the class attribute "TriangleCP". | |
void | SetMaxPolyOrder (unsigned long MaxOrder) |
Sets the maximum polynomial order for the tetrahedron collocation points. | |
unsigned long | GetMaxPolyOrder () |
Returns the maximum polynomial order for the tetra 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 EntityShape) |
Prints the collocation coordinates in the given ascii file. | |
Protected Attributes | |
LineCollocationPoints | LineCP |
Instance of the LineNumericalCollocation class used to store the line coordinates and weights for direction L1. | |
TriangleCollocationPoints | TriangleCP |
Instance of the TriangleCollocationPoints class to calculated triangle and line coordinates. | |
OneIndexTable< double > | Coords |
Table that stores the collocation points coordinates. | |
unsigned long | Pmax |
Maximum polynomial order. |
Calculates the collocation points coordinates for the tetra element. The coordinates are also calculated for the line and face elements.
Copy-initializer constructor.
[in] | Instance | - instance of the TetraCollocationPoints class. |
double *const TetraCollocationPoints::GetCollocationPointsCoords | ( | ElementShape_E | EntityShape, |
unsigned long | PolyOrder, | ||
unsigned long & | NumberPoints | ||
) |
Returns the collocation points for the given shape and polynomial order.
[in] | EntityShape | - entity shape for which the collocation poins are requested. If LINE, returns the line collocation points; if TRIANGLE, returns the collocation points for triangle; if TETRAHEDRON, returns the collocation poins for the element |
[in] | PolyOrder | - polynomial order. |
long TetraCollocationPoints::GetCollocationPointsSetNumber | ( | unsigned long | PolyOrder | ) |
Returns the set number of the collocation points for the given polynomial order.
[in] | PolyOrder | - polynomial order |
unsigned long TetraCollocationPoints::GetMaxPolyOrder | ( | ) |
Returns the maximum polynomial order for the tetra collocation points.
unsigned long TetraCollocationPoints::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.
[in] | EntityShape | - entity shape for which the number of collocation points must be calculated. If it is TETRAHEDRON, the number of element collocationn points are calculated; if it is TRIANGLE, the number of collocation points for triangles 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. |
unsigned long TetraCollocationPoints::GetNumberCollocationPointsSets | ( | ) |
Returns the number of collocation points sets stored in the class.
unsigned long TetraCollocationPoints::GetTotalNumberCollocationPoints | ( | ) |
Returns the total number of collocation points.
TetraCollocationPoints::operator LineCollocationPoints & | ( | ) |
Cast operator for the reference of the class attribute "LineCP".
TetraCollocationPoints::operator TriangleCollocationPoints & | ( | ) |
Cast operator for the reference of the class attribute "TriangleCP".
TetraCollocationPoints & TetraCollocationPoints::operator= | ( | TetraCollocationPoints & | Instance | ) |
Copies the contents of instance to the object.
[in] | Instance | - instance of the TetraCollocationPoints class. |
void TetraCollocationPoints::Print | ( | FILE * | File, |
ElementShape_E | EntityShape | ||
) |
Prints the collocation coordinates in the given ascii file.
[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 TRIANGLE, the triangle collocation points coodinates are printed; if TETRAHEDRON, the collocation points for tetrahedron are printed |
void TetraCollocationPoints::RunCollocationPointsCoords | ( | ElementShape_E | EntityShape, |
collocationPointsAttributes_S & | CPAttributes, | ||
OneIndexTable< unsigned long > & | TensorIndices, | ||
BuiltInArray< unsigned long > & | PolyOrder | ||
) |
Calculates the collocation points coordinates.
[in] | EntityShape | - entity shape for which the coolocation points must be calculated. If LINE, onlye the line coordinates are calculated; if TRIANGLE, the line and triangle collocation points coodinates are calculated; if TETRAHEDRON, the line, triangle and tetrahedron collocation points coodinates are calculated. |
[in] | CPAttributes | - attributes for the collocation points. |
[in] | TensorIndices | - tensorization indices for the tetrahedron element. |
[in] | PolyOrder | - array with polynomial orders in ascending sequence. |
void TetraCollocationPoints::SetMaxPolyOrder | ( | unsigned long | MaxOrder | ) |
Sets the maximum polynomial order for the tetrahedron collocation points.
[in] | MaxOrder | - maximum polynomial order. |