FEBio  1.5.0
Public Member Functions | Protected Member Functions
FEUDGHexDomain Class Reference

domain class for uniform-deformation-gradient hex elements (UDG) More...

#include <FEElasticSolidDomain.h>

Inheritance diagram for FEUDGHexDomain:
FEElasticSolidDomain FESolidDomain FEDomain

Public Member Functions

 FEUDGHexDomain (FEMesh *pm, FEMaterial *pmat)
 constructor
FEDomainClone ()
 create a clone of this class
void Residual (FESolidSolver *psolver, vector< double > &R)
 calculates the residual
void StiffnessMatrix (FESolidSolver *psolver)
 calculates the global stiffness matrix for this domain
void UpdateStresses (FEModel &fem)

Protected Member Functions

void UDGInternalForces (FEM &fem, FESolidElement &el, vector< double > &fe)
 Calculates the internal stress vector for enhanced strain hex elements.
void UDGHourglassForces (FEM &fem, FESolidElement &el, vector< double > &fe)
 calculates hourglass forces for the UDG element
void UDGElementStiffness (FEM &fem, FESolidElement &el, matrix &ke)
 calculate element stiffness
void UDGHourglassStiffness (FEM &fem, FESolidElement &el, matrix &ke)
 hourglass stiffness for UDG hex elements
void UDGGeometricalStiffness (FEM &fem, FESolidElement &el, matrix &ke)
 geometrical stiffness for UDG hex elements
void UDGMaterialStiffness (FEM &fem, FESolidElement &el, matrix &ke)
 material stiffness for UDG hex elements
void AvgCartDerivs (FESolidElement &el, double GX[8], double GY[8], double GZ[8], int state=0)
 Calculates the average Cartesian derivatives.
void AvgDefGrad (FESolidElement &el, mat3d &F, double GX[8], double GY[8], double GZ[8])
double HexVolume (FESolidElement &el, int state=0)
 Calculates the exact volume of a hexahedral element.

Detailed Description

domain class for uniform-deformation-gradient hex elements (UDG)


Member Function Documentation

void FEUDGHexDomain::AvgDefGrad ( FESolidElement el,
mat3d F,
double  GX[8],
double  GY[8],
double  GZ[8] 
) [protected]

Calculates the average Cartesian derivatives Note that we assume that the GX, GY and GX contain the averaged Cartesian derivatives

void FEUDGHexDomain::Residual ( FESolidSolver psolver,
vector< double > &  R 
) [virtual]

calculates the residual

this element should be a UDG-hex

Reimplemented from FEElasticSolidDomain.

void FEUDGHexDomain::UDGElementStiffness ( FEM fem,
FESolidElement el,
matrix ke 
) [protected]

calculate element stiffness

This function calculates the element stiffness matrix. It calls the material stiffness function, the geometrical stiffness function and, if necessary, the dilatational stiffness function. Note that these three functions only calculate the upper diagonal matrix due to the symmetry of the element stiffness matrix The last section of this function fills the rest of the element stiffness matrix.

void FEUDGHexDomain::UDGHourglassForces ( FEM fem,
FESolidElement el,
vector< double > &  fe 
) [protected]

calculates hourglass forces for the UDG element

calculates the hourglass forces

void FEUDGHexDomain::UDGHourglassStiffness ( FEM fem,
FESolidElement el,
matrix ke 
) [protected]

hourglass stiffness for UDG hex elements

calculates the hourglass stiffness for UDG hex elements

void FEUDGHexDomain::UDGInternalForces ( FEM fem,
FESolidElement el,
vector< double > &  fe 
) [protected]

Calculates the internal stress vector for enhanced strain hex elements.

calculates the internal equivalent nodal forces for enhanced strain solid elements.


The documentation for this class was generated from the following files: