![]() |
Documentation 6b54b78464
|
Pyramid element with 6 Gauss Points. More...
#include <CElement.hpp>
Public Member Functions | |
| CPYRAM6 () | |
| Constructor of the class. | |
| su2double | ComputeVolume (const FrameType mode=REFERENCE) const override |
| Compute the value of the volume of the element. | |
Public Member Functions inherited from CElementWithKnownSizes< 6, 5, 3 > | |
| void | ComputeGrad_Linear (void) final |
| Set the value of the gradient of the shape functions wrt the reference configuration. | |
| void | ComputeGrad_NonLinear (void) final |
| Set the value of the gradient of the shape functions wrt the current configuration. | |
| void | ComputeGrad_SurfaceEmbedded () final |
| Overload needed for deformed 2D elements on a surface in 3D or 1D elements on a 2D curve. | |
Public Member Functions inherited from CElement | |
| CElement (void)=delete | |
| Default constructor of the class, deleted to make sure derived classes always call the allocating constructor. | |
| CElement (unsigned short ngauss, unsigned short nnodes, unsigned short ndim) | |
| Constructor of the class. | |
| virtual | ~CElement (void)=default |
| Destructor of the class. | |
| void | ClearElement (void) |
| Sets matrices to 0. | |
| unsigned short | GetnNodes (void) const |
| Retrieve the number of nodes of the element. | |
| unsigned short | GetnGaussPoints (void) const |
| Retrieve the number of nodes of the element. | |
| void | SetRef_Coord (unsigned short iNode, unsigned short iDim, const su2double &val_CoordRef) |
| Set the value of the coordinate of the nodes in the reference configuration. | |
| void | SetCurr_Coord (unsigned short iNode, unsigned short iDim, const su2double &val_CoordCurr) |
| Set the value of the coordinate of the nodes in the current configuration. | |
| void | SetTemperature (unsigned short iNode, const su2double &val_Temperature) |
| Set the value of the temperature of a node. | |
| void | SetTemperature (const su2double &val_Temperature) |
| Set the value of the temperature of all nodes. | |
| su2double | GetRef_Coord (unsigned short iNode, unsigned short iDim) const |
| Get the value of the coordinate of the nodes in the reference configuration. | |
| su2double | GetCurr_Coord (unsigned short iNode, unsigned short iDim) const |
| Get the value of the coordinate of the nodes in the current configuration. | |
| su2double | GetTemperature (unsigned short iGauss) const |
| Get the value of the temperature at a Gaussian integration point. | |
| su2double | GetWeight (unsigned short iGauss) const |
| Get the weight of the corresponding Gaussian Point. | |
| su2double | GetJ_X (unsigned short iGauss) const |
| Get the Jacobian respect to the reference configuration for the Gaussian Point iGauss. | |
| su2double | GetJ_x (unsigned short iGauss) const |
| Get the jacobian respect to the current configuration for the Gaussian Point iGauss. | |
| su2double | GetElement_Pressure (void) const |
| Retrieve the value of the pressure in the element for incompressible materials. | |
| void | Add_Mab (unsigned short nodeA, unsigned short nodeB, const su2double &val_Mab) |
| Add the value of the diagonal term for the mass matrix. | |
| template<typename Matrix > | |
| void | Add_Kab (unsigned short nodeA, unsigned short nodeB, Matrix &val_Kab) |
| Add the value of a submatrix K relating nodes a and b, for the constitutive term. | |
| template<typename Matrix > | |
| void | Add_Kab_T (unsigned short nodeA, unsigned short nodeB, Matrix &val_Kab) |
| Add the value of a submatrix K relating nodes a and b, for the constitutive term (symmetric terms need transpose) | |
| void | Add_Ks_ab (unsigned short nodeA, unsigned short nodeB, const su2double &val_Ks_ab) |
| Add the value of the diagonal term for the stress contribution to the stiffness of the system. | |
| void | Add_Kt_a (unsigned short nodeA, const su2double *val_Kt_a) |
| Add the value of the nodal stress term for the computation of the residual. | |
| void | Add_FDL_a (unsigned short nodeA, const su2double *val_FDL_a) |
| Add the value of the dead load for the computation of the residual. | |
| void | ClearStress (void) |
| Restarts the values of stress in the element. | |
| su2double | Get_Mab (unsigned short nodeA, unsigned short nodeB) const |
| Return the value of the diagonal term for the mass matrix, relating nodes a and b. | |
| const su2double * | Get_Kab (unsigned short nodeA, unsigned short nodeB) const |
| Return the value of the submatrix K relating nodes a and b. | |
| su2double | Get_Ks_ab (unsigned short nodeA, unsigned short nodeB) const |
| Return the value of the diagonal term for the stress contribution, relating nodes a and b. | |
| const su2double * | Get_Kt_a (unsigned short nodeA) const |
| Return the values of the nodal stress components of the residual for node a. | |
| const su2double * | Get_FDL_a (unsigned short nodeA) const |
| Return the values of the dead load components of the residual for node a. | |
| su2double | GetNi (unsigned short iNode, unsigned short iGauss) const |
| Retrieve the value of the shape functions. | |
| su2double | GetGradNi_X (unsigned short iNode, unsigned short iGauss, unsigned short iDim) const |
| Retrieve the value of the gradient of the shape functions respect to the reference configuration. | |
| su2double | GetGradNi_x (unsigned short iNode, unsigned short iGauss, unsigned short iDim) const |
| Retrieve the value of the gradient of the shape functions respect to the current configuration. | |
| su2double | GetNi_Extrap (unsigned short iNode, unsigned short iGauss) const |
| Retrieve the value of the gradient of the shape functions respect to the reference configuration. | |
| void | Add_NodalStress (unsigned short iNode, unsigned short iVar, const su2double &val_Stress) |
| Add a value to the nodal stress for an element. | |
| su2double | Get_NodalStress (unsigned short iNode, unsigned short iVar) const |
| Retrieve the value of the nodal stress for an element. | |
| void | Set_ElProperties (const CProperty *element_property) |
| Store the values of the identifiers for element properties. | |
| void | Set_iDe (unsigned long val_iDe) |
| Store the value of the identifier for the Dielectric Elastomers. | |
| unsigned long | Get_iDe (void) const |
| Return the value of the identifier for the Dielectric Elastomers. | |
| unsigned long | Get_iDV (void) const |
| Return the value of the identifier for the Design Variable. | |
| unsigned long | Get_iProp (void) const |
| Return the value of the identifier for the Element Property. | |
| virtual su2double | ComputeLength (const FrameType mode=REFERENCE) const |
| Compute the value of the length of the element. | |
| virtual su2double | ComputeArea (const FrameType mode=REFERENCE) const |
| Compute the value of the area of the element. | |
| su2double | ComputeCurrentArea (void) const |
| Compute the value of the area of the element in current coordinates (wrapper to ComputeArea(CURRENT)). | |
| su2double | ComputeCurrentVolume (void) const |
| Compute the value of the volume of the element in current coordinates (wrapper to ComputeVolume(CURRENT)). | |
| void | SetPreaccIn_Coords (bool nonlinear=true) |
| Register the current and reference coordinates of the element as pre-accumulation inputs the latter are needed for compatibility with shape derivatives, there is no problem registering because inactive variables are ignored. | |
| void | SetPreaccOut_Kt_a (void) |
| Register the stress residual as a pre-accumulation output. When computing the element stiffness matrix this is the only term that sees its way into the RHS of the system. | |
| void | SetPreaccOut_Mab (void) |
| Register the mass matrix as a pre-accumulation output. | |
| void | SetPreaccOut_FDL_a (void) |
| Register the dead load as a pre-accumulation output. | |
| void | Add_HiHj (su2double val, unsigned short nodeA, unsigned short nodeB) |
| Add the scalar product of the shape functions to the tangent matrix. | |
| template<class MatrixType > | |
| void | Add_DHiDHj (const MatrixType &val, unsigned short nodeA, unsigned short nodeB) |
| Add the scalar product of the gradients of shape functions to the tangent matrix. | |
| template<class MatrixType > | |
| void | Add_DHiDHj_T (const MatrixType &val, unsigned short nodeA, unsigned short nodeB) |
| Add the transposed scalar product of the gradients of shape functions to the tangent matrix. | |
| su2double | Get_HiHj (unsigned short nodeA, unsigned short nodeB) |
| Get the scalar product of the shape functions to the tangent matrix. | |
| su2activematrix & | Get_DHiDHj (unsigned short nodeA, unsigned short nodeB) |
| Get the scalar product of the gradients of shape functions to the tangent matrix. | |
Additional Inherited Members | |
Public Types inherited from CElement | |
| enum | FrameType { REFERENCE = 1 , CURRENT = 2 } |
Protected Types inherited from CElement | |
| enum | : size_t { MAXNDIM = 3 } |
Protected Member Functions inherited from CElementWithKnownSizes< 6, 5, 3 > | |
| CElementWithKnownSizes () | |
| Constructor of the class. | |
| void | ComputeGrad_impl (void) |
| Implementation of gradient computation leveraging the static sizes. | |
| void | ComputeGrad_impl_surf_embedded () |
Protected Attributes inherited from CElementWithKnownSizes< 6, 5, 3 > | |
| su2double | GaussCoord [NGAUSS][NDIM] |
| Coordinates of the integration points. | |
| su2double | dNiXj [NGAUSS][NNODE][NDIM] |
| Shape function derivatives evaluated at the Gauss points. | |
Protected Attributes inherited from CElement | |
| std::vector< CGaussVariable > | GaussPoint |
| Vector of Gaussian Points. | |
| su2activematrix | CurrentCoord |
| Coordinates in the current frame. | |
| su2activematrix | RefCoord |
| Coordinates in the reference frame. | |
| su2activevector | GaussWeight |
| Weight of the Gaussian Points for the integration. | |
| su2activematrix | NodalExtrap |
| Coordinates of the nodal points for Gaussian extrapolation. | |
| su2activematrix | NodalStress |
| Stress at the nodes. | |
| su2activevector | NodalTemperature |
| Temperature at the nodes. | |
| std::vector< su2activematrix > | Kab |
| Structure for the constitutive component of the tangent matrix. | |
| su2activematrix | Mab |
| Structure for the nodal components of the mass matrix. | |
| su2activematrix | Ks_ab |
| Structure for the stress component of the tangent matrix. | |
| su2activematrix | Kt_a |
| Matrix of nodal stress terms for residual computation. | |
| su2activematrix | FDL_a |
| Matrix of dead loads for residual computation. | |
| su2double | el_Pressure = 0.0 |
| Pressure in the element. | |
| unsigned long | iProp = 0 |
| ID of the Element Property. | |
| unsigned long | iDV = 0 |
| ID of the Design Variable (if it is element based). | |
| unsigned long | iDe = 0 |
| ID of the dielectric elastomer. | |
| unsigned short | nGaussPoints |
| Number of gaussian points. | |
| unsigned short | nNodes |
| Number of geometric points. | |
| unsigned short | nDim |
| Number of dimension of the problem. | |
| su2activematrix | HiHj = 0.0 |
| Scalar product of 2 ansatz functions. | |
| std::vector< std::vector< su2activematrix > > | DHiDHj |
| Scalar product of the gradients of 2 ansatz functions. | |
Pyramid element with 6 Gauss Points.
| CPYRAM6::CPYRAM6 | ( | ) |
Constructor of the class.
Compute the value of the volume of the element.
| [in] | mode | - Type of coordinates to consider in the computation. |
Reimplemented from CElement.