|
| | CFEMStandardElement (unsigned short val_VTK_Type, unsigned short val_nPoly, bool val_constJac, CConfig *config, unsigned short val_orderExact=0, const vector< su2double > *rLocSolDOFs=nullptr, const vector< su2double > *sLocSolDOFs=nullptr, const vector< su2double > *tLocSolDOFs=nullptr) |
| | Alternative constructor.
|
| |
| | CFEMStandardElement (const CFEMStandardElement &other) |
| | Copy constructor.
|
| |
| CFEMStandardElement & | operator= (const CFEMStandardElement &other) |
| | Assignment operator.
|
| |
| void | BasisFunctionsInPoint (const su2double *parCoor, vector< su2double > &lagBasis) |
| | Function, which computes the Lagrangian basis functions for the given parametric coordinates.
|
| |
| void | BasisFunctionsAndDerivativesInPoint (const su2double *parCoor, vector< su2double > &lagBasis, vector< vector< su2double > > &dLagBasis) |
| | Function, which computes the Lagrangian basis functions and its derivatives for the given parametric coordinates.
|
| |
| su2double * | GetBasisFunctionsIntegration (void) |
| | Function, which makes available the values of the basis functions in the integration points.
|
| |
| const su2double * | GetBasisFunctionsIntegrationTrans (void) const |
| | Function, which makes available the transpose of the basis functions in the integration points.
|
| |
| const su2double * | GetBasisFunctionsSolDOFs (void) const |
| | Function, which makes available the values of the basis functions in the solution DOFs.
|
| |
| su2double * | GetDrBasisFunctionsIntegration (void) |
| | Function, which makes available the r-derivatives of the basis functions in the integration points.
|
| |
| su2double * | GetDsBasisFunctionsIntegration (void) |
| | Function, which makes available the s-derivatives of the basis functions in the integration points.
|
| |
| su2double * | GetDtBasisFunctionsIntegration (void) |
| | Function, which makes available the t-derivatives of the basis functions in the integration points.
|
| |
| const su2double * | GetMatVandermondeInv (void) const |
| | Function, which makes available the matrix storage of the inverse of Vandermonde matrix of solution DOFs.
|
| |
| const su2double * | GetMatBasisFunctionsIntegration (void) const |
| | Function, which makes available the matrix storage of the basis functions in the integration points.
|
| |
| const su2double * | GetDerMatBasisFunctionsIntTrans (void) const |
| | Function, which makes available the transpose matrix of the derivative of the basis functions in the integration points.
|
| |
| const su2double * | GetMatDerBasisFunctionsOwnDOFs (void) const |
| | Function, which makes available the matrix storage of the derivative of the basis functions in the own DOFs.
|
| |
| const su2double * | GetMatDerBasisFunctionsSolDOFs (void) const |
| | Function, which makes available the matrix storage of the derivative of the basis functions in the solution DOFs.
|
| |
| const su2double * | GetMat2ndDerBasisFunctionsInt (void) const |
| | Function, which makes available the matrix storage of the second derivativex of the basis functions in the integration points.
|
| |
| unsigned short * | GetConnFace0 (void) |
| | Function, which makes available the connectivity of face 0.
|
| |
| unsigned short * | GetConnFace1 (void) |
| | Function, which makes available the connectivity of face 1.
|
| |
| unsigned short * | GetConnFace2 (void) |
| | Function, which makes available the connectivity of face 2.
|
| |
| unsigned short * | GetConnFace3 (void) |
| | Function, which makes available the connectivity of face 3.
|
| |
| unsigned short * | GetConnFace4 (void) |
| | Function, which makes available the connectivity of face 4.
|
| |
| unsigned short * | GetConnFace5 (void) |
| | Function, which makes available the connectivity of face 5.
|
| |
| unsigned short | GetNDOFs (void) const |
| | Function, which makes available the number of DOFs for this standard element.
|
| |
| unsigned short | GetNPoly (void) const |
| | Function, which makes available the polynomial degree for this standard element.
|
| |
| unsigned short | GetVTK_Type1 (void) const |
| | Function, which makes available the type of the element in subConn1ForPlotting.
|
| |
| unsigned short | GetNSubElemsType1 (void) const |
| | Function, which makes available the number of sub-elements of type 1 for plotting.
|
| |
| const unsigned short * | GetSubConnType1 (void) const |
| | Function, which makes available the the connectivity of the linear elements of type 1 as a const pointer.
|
| |
| unsigned short | GetVTK_Type2 (void) const |
| | Function, which makes available the type of the element in subConn2ForPlotting.
|
| |
| unsigned short | GetNSubElemsType2 (void) const |
| | Function, which makes available the number of sub-elements of type 2 for plotting.
|
| |
| const unsigned short * | GetSubConnType2 (void) const |
| | Function, which makes available the the connectivity of the linear elements of type 2 as a const pointer.
|
| |
| unsigned short | GetNDOFsPerSubElem (unsigned short val_VTK_Type) const |
| | Function, which makes available the number of DOFs of a linear element, used for plotting.
|
| |
| const vector< su2double > * | GetRDOFs (void) const |
| | Function, which makes available the r-location of the DOFs as a const pointer to the vector.
|
| |
| const vector< su2double > * | GetSDOFs (void) const |
| | Function, which makes available the s-location of the DOFs as a const pointer to the vector.
|
| |
| const vector< su2double > * | GetTDOFs (void) const |
| | Function, which makes available the t-location of the DOFs as a const pointer to the vector.
|
| |
| bool | SameStandardElement (unsigned short val_VTK_Type, unsigned short val_nPoly, bool val_constJac) |
| | Function, which checks if the function arguments correspond to this standard element.
|
| |
| passivedouble | WorkEstimateMetis (CConfig *config) |
| | Function, which estimates the amount of work for an element of this type. This information is used to determine a well balanced partition.
|
| |
Public Member Functions inherited from CFEMStandardElementBase |
| | CFEMStandardElementBase ()=default |
| | Constructor. Nothing to be done.
|
| |
| virtual | ~CFEMStandardElementBase ()=default |
| | Destructor. Nothing to be done, because the vectors are deleted automatically.
|
| |
| unsigned short | GetVTK_Type (void) const |
| | Function, which makes available the type of the element.
|
| |
| const su2double * | GetWeightsIntegration (void) const |
| | Function, which makes available the weights in the integration points.
|
| |
| unsigned short | GetNIntegration (void) const |
| | Function, which makes available the number of integration points for this standard element.
|
| |
| unsigned short | GetOrderExact (void) const |
| | Function, which makes available the polynomial order that must be integrated exactly.
|
| |
| void | GradVandermonde1D (unsigned short nDOFs, const vector< su2double > &r, vector< su2double > &VDr) |
| | Function, which computes the gradient of the Vandermonde matrix for a standard 1D edge.
|
| |
| void | Vandermonde1D (unsigned short nDOFs, const vector< su2double > &r, vector< su2double > &V) |
| | Function, which computes the Vandermonde matrix for a standard 1D edge.
|
| |
|
Static Public Member Functions inherited from CFEMStandardElementBase |
| static unsigned short | GetNDOFsStatic (unsigned short VTK_Type, unsigned short nPoly, unsigned long typeErrorMessage=0) |
| | Static function, which makes available the number of DOFs for an element corresponding to the arguments.
|
| |
| static void | InverseMatrix (unsigned short n, vector< su2double > &A) |
| | Static function, which computes the inverse of the given square matrix.
|
| |
Protected Member Functions inherited from CFEMStandardElementBase |
| | CFEMStandardElementBase (unsigned short val_VTK_Type, unsigned short val_nPoly, bool val_constJac, CConfig *config, unsigned short val_orderExact) |
| | Alternative constructor.
|
| |
| void | CheckSumDerivativesLagrangianBasisFunctions (const unsigned short nPoints, const unsigned short nDOFs, const vector< su2double > &dLagBasisPoints) |
| | Function, which checks if the sum of the given derivatives of the Lagrangian interpolation functions is 0 in the points.
|
| |
| void | CheckSumLagrangianBasisFunctions (const unsigned short nPoints, const unsigned short nDOFs, vector< su2double > &lagBasisPoints) |
| | Function, which checks if the sum of the given Lagrangian interpolation functions is 1 in the points.
|
| |
| void | Copy (const CFEMStandardElementBase &other) |
| | Function, which copies the data of the given object into the current object.
|
| |
| void | DerivativesBasisFunctionsAdjacentElement (unsigned short VTK_TypeElem, unsigned short nPolyElem, const bool swapFaceInElement, unsigned short &nDOFsElem, vector< su2double > &drLagBasisIntegration, vector< su2double > &dsLagBasisIntegration, vector< su2double > &dtLagBasisIntegration) |
| | Function, which computes the values of the derivatives of the basis functions of the adjacent elements in the integration points of the face.
|
| |
| void | GradVandermonde2D_Triangle (unsigned short nPoly, unsigned short nDOFs, const vector< su2double > &r, const vector< su2double > &s, vector< su2double > &VDr, vector< su2double > &VDs) |
| | Function, which computes the gradients of the Vandermonde matrix for a standard triangle.
|
| |
| void | GradVandermonde2D_Quadrilateral (unsigned short nPoly, unsigned short nDOFs, const vector< su2double > &r, const vector< su2double > &s, vector< su2double > &VDr, vector< su2double > &VDs) |
| | Function, which computes the gradients of the Vandermonde matrix for a standard quadrilateral.
|
| |
| void | GradVandermonde3D_Tetrahedron (unsigned short nPoly, unsigned short nDOFs, const vector< su2double > &r, const vector< su2double > &s, const vector< su2double > &t, vector< su2double > &VDr, vector< su2double > &VDs, vector< su2double > &VDt) |
| | Function, which computes the gradients of the Vandermonde matrix for a standard tetrahedron.
|
| |
| void | GradVandermonde3D_Pyramid (unsigned short nPoly, unsigned short nDOFs, const vector< su2double > &r, const vector< su2double > &s, const vector< su2double > &t, vector< su2double > &VDr, vector< su2double > &VDs, vector< su2double > &VDt) |
| | Function, which computes the gradients of the Vandermonde matrix for a standard pyramid.
|
| |
| void | GradVandermonde3D_Prism (unsigned short nPoly, unsigned short nDOFs, const vector< su2double > &r, const vector< su2double > &s, const vector< su2double > &t, vector< su2double > &VDr, vector< su2double > &VDs, vector< su2double > &VDt) |
| | Function, which computes the gradients of the Vandermonde matrix for a standard prism.
|
| |
| void | GradVandermonde3D_Hexahedron (unsigned short nPoly, unsigned short nDOFs, const vector< su2double > &r, const vector< su2double > &s, const vector< su2double > &t, vector< su2double > &VDr, vector< su2double > &VDs, vector< su2double > &VDt) |
| | Function, which computes the gradients of the Vandermonde matrix for a standard hexahedron.
|
| |
| void | LagrangianBasisFunctionAndDerivativesLine (const unsigned short nPoly, const vector< su2double > &rPoints, unsigned short &nDOFs, vector< su2double > &rDOFs, vector< su2double > &matVandermondeInv, vector< su2double > &lagBasisPoints, vector< su2double > &drLagBasisPoints) |
| | Function, which determines the values of the Lagrangian interpolation functions and its derivatives in the given set of points for a line.
|
| |
| void | LagrangianBasisFunctionAndDerivativesTriangle (const unsigned short nPoly, const vector< su2double > &rPoints, const vector< su2double > &sPoints, unsigned short &nDOFs, vector< su2double > &rDOFs, vector< su2double > &sDOFs, vector< su2double > &matVandermondeInv, vector< su2double > &lagBasisPoints, vector< su2double > &drLagBasisPoints, vector< su2double > &dsLagBasisPoints) |
| | Function, which determines the values of the Lagrangian interpolation functions and its derivatives in the given set of points for a triangle.
|
| |
| void | LagrangianBasisFunctionAndDerivativesQuadrilateral (const unsigned short nPoly, const vector< su2double > &rPoints, const vector< su2double > &sPoints, unsigned short &nDOFs, vector< su2double > &rDOFs, vector< su2double > &sDOFs, vector< su2double > &matVandermondeInv, vector< su2double > &lagBasisPoints, vector< su2double > &drLagBasisPoints, vector< su2double > &dsLagBasisPoints) |
| | Function, which determines the values of the Lagrangian interpolation functions and its derivatives in the given set of points for a quadrilateral.
|
| |
| void | LagrangianBasisFunctionAndDerivativesTetrahedron (const unsigned short nPoly, const vector< su2double > &rPoints, const vector< su2double > &sPoints, const vector< su2double > &tPoints, unsigned short &nDOFs, vector< su2double > &rDOFs, vector< su2double > &sDOFs, vector< su2double > &tDOFs, vector< su2double > &matVandermondeInv, vector< su2double > &lagBasisPoints, vector< su2double > &drLagBasisPoints, vector< su2double > &dsLagBasisPoints, vector< su2double > &dtLagBasisPoints) |
| | Function, which determines the values of the Lagrangian interpolation functions and its derivatives in the given set of points for a tetrahedron.
|
| |
| void | LagrangianBasisFunctionAndDerivativesPyramid (const unsigned short nPoly, const vector< su2double > &rPoints, const vector< su2double > &sPoints, const vector< su2double > &tPoints, unsigned short &nDOFs, vector< su2double > &rDOFs, vector< su2double > &sDOFs, vector< su2double > &tDOFs, vector< su2double > &matVandermondeInv, vector< su2double > &lagBasisPoints, vector< su2double > &drLagBasisPoints, vector< su2double > &dsLagBasisPoints, vector< su2double > &dtLagBasisPoints) |
| | Function, which determines the values of the Lagrangian interpolation functions and its derivatives in the given set of points for a pyramid.
|
| |
| void | LagrangianBasisFunctionAndDerivativesPrism (const unsigned short nPoly, const vector< su2double > &rPoints, const vector< su2double > &sPoints, const vector< su2double > &tPoints, unsigned short &nDOFs, vector< su2double > &rDOFs, vector< su2double > &sDOFs, vector< su2double > &tDOFs, vector< su2double > &matVandermondeInv, vector< su2double > &lagBasisPoints, vector< su2double > &drLagBasisPoints, vector< su2double > &dsLagBasisPoints, vector< su2double > &dtLagBasisPoints) |
| | Function, which determines the values of the Lagrangian interpolation functions and its derivatives in the given set of points for a prism.
|
| |
| void | LagrangianBasisFunctionAndDerivativesHexahedron (const unsigned short nPoly, const vector< su2double > &rPoints, const vector< su2double > &sPoints, const vector< su2double > &tPoints, unsigned short &nDOFs, vector< su2double > &rDOFs, vector< su2double > &sDOFs, vector< su2double > &tDOFs, vector< su2double > &matVandermondeInv, vector< su2double > &lagBasisPoints, vector< su2double > &drLagBasisPoints, vector< su2double > &dsLagBasisPoints, vector< su2double > &dtLagBasisPoints) |
| | Function, which determines the values of the Lagrangian interpolation functions and its derivatives in the given set of points for a hexahedron.
|
| |
| void | MatMulRowMajor (const unsigned short nDOFs, const unsigned short nPoints, const vector< su2double > &A, const vector< su2double > &B, vector< su2double > &C) |
| | Function, which carries out a matrix matrix multiplication to obtain data in points and stores the result row major order.
|
| |
| void | SubConnForPlottingLine (const unsigned short nPoly, vector< unsigned short > &subConn) |
| | Function, which computes the local connectivity of linear subelements of a line, which can be used for plotting.
|
| |
| void | SubConnForPlottingQuadrilateral (const unsigned short nPoly, vector< unsigned short > &subConn) |
| | Function, which computes the local connectivity of linear subelements of a quadrilateral, which can be used for plotting.
|
| |
| void | SubConnForPlottingTriangle (const unsigned short nPoly, vector< unsigned short > &subConn) |
| | Function, which computes the local connectivity of linear subelements of a triangle, which can be used for plotting.
|
| |
| void | Vandermonde2D_Triangle (unsigned short nPoly, unsigned short nDOFs, const vector< su2double > &r, const vector< su2double > &s, vector< su2double > &V) |
| | Function, which computes the Vandermonde matrix for a standard triangle.
|
| |
| void | Vandermonde2D_Quadrilateral (unsigned short nPoly, unsigned short nDOFs, const vector< su2double > &r, const vector< su2double > &s, vector< su2double > &V) |
| | Function, which computes the Vandermonde matrix for a standard quadrilateral.
|
| |
| void | Vandermonde3D_Tetrahedron (unsigned short nPoly, unsigned short nDOFs, const vector< su2double > &r, const vector< su2double > &s, const vector< su2double > &t, vector< su2double > &V) |
| | Function, which computes the Vandermonde matrix for a standard tetrahedron.
|
| |
| void | Vandermonde3D_Pyramid (unsigned short nPoly, unsigned short nDOFs, const vector< su2double > &r, const vector< su2double > &s, const vector< su2double > &t, vector< su2double > &V) |
| | Function, which computes the Vandermonde matrix for a standard pyramid.
|
| |
| void | Vandermonde3D_Prism (unsigned short nPoly, unsigned short nDOFs, const vector< su2double > &r, const vector< su2double > &s, const vector< su2double > &t, vector< su2double > &V) |
| | Function, which computes the Vandermonde matrix for a standard prism.
|
| |
| void | Vandermonde3D_Hexahedron (unsigned short nPoly, unsigned short nDOFs, const vector< su2double > &r, const vector< su2double > &s, const vector< su2double > &t, vector< su2double > &V) |
| | Function, which computes the Vandermonde matrix for a standard hexahedron.
|
| |
| su2double | ViscousPenaltyParameter (const unsigned short VTK_TypeElem, const unsigned short nPolyElem) const |
| | Function, which computes the constant in the penalty terms for a a viscous discretization.
|
| |
Protected Attributes inherited from CFEMStandardElementBase |
| unsigned short | VTK_Type |
| | Element type using the VTK convention.
|
| |
| unsigned short | orderExact |
| | Polynomial order that must be integrated exactly by the integration rule.
|
| |
| unsigned short | nIntegration |
| | Number of points used in the numerical integration.
|
| |
| bool | constJacobian |
| | Whether or not the element has a constant Jacobian.
|
| |
| vector< su2double > | rIntegration |
| | r-location of the integration points for this standard element.
|
| |
| vector< su2double > | sIntegration |
| | s-location of the integration points for this standard element, if needed.
|
| |
| vector< su2double > | tIntegration |
| | t-location of the integration points for this standard element, if needed.
|
| |
| vector< su2double > | wIntegration |
| | The weights of the integration points for this standard element.
|
| |