My Project
Public Member Functions | List of all members
Q4Element Class Reference

Inherits QuadraticElement.

Public Member Functions

MatrixXd getShapefunction (double zeta1, double zeta2, double zeta3)
 Calculates the Matrix containing shape functions
. More...
 
MatrixXd getNMatrix (double xsi, double eta)
 Returns a matrix of matrices with shape functions.
 
MatrixXd getNMatrix (double zeta1, double zeta2, double zeta3)
 Returns a matrix of matrices with shape functions.
 
MatrixXd getBMatrix (double xsi, double eta)
 
MatrixXd getJacobi (MatrixXd B, VectorXd xPos, VectorXd yPos)
 
void calculateConstants ()
 Calculates the constant vectors and matrices for the element; i.e. G, xCoordinates, and yCoordinates.
 
void calculateStiffnessMatrix ()
 Calculates the element stiffness matrix K.
 
void calculateElementLoadTorsion ()
 Calculates the initial load vector for torsion.
 
void calculateElementLoadShearX ()
 Calculates the initial load vector for shear along X.
 
void calculateElementLoadShearY ()
 Calculates the initial load vector for shear along Y.
 
void computeTau ()
 Calculates shear stresses at nodes using initialStrain and elementsDisplacement. More...
 
- Public Member Functions inherited from QuadraticElement
double xOfZeta (double xsi, double eta)
 Calculates and returns the the distance in the x-direction between the integration point in the element and the element area centre. More...
 
double yOfZeta (double xsi, double eta)
 Calculates and returns the the distance in the y-direction between the integration point in the element and the element area centre. More...
 
void calculateArea ()
 Calculates the area of the element. More...
 
void calculateAreaCentre ()
 Calculates the area centre of the element. More...
 
double getBendingStiffnessX (double Ay)
 Calculates the second moment of area about the x-axis for the element. More...
 
double getBendingStiffnessY (double Ax)
 Calculates the second moment of area about the y-axis for the element. More...
 
double getBendingStiffnessProduct (double Ax, double Ay)
 Calculating the product of moment of inertia. More...
 
- Public Member Functions inherited from Element
 Element ()
 Constructor.
 
MatrixXd getNxMatrix ()
 Returns the shapefunction as a function of x and y. More...
 
MatrixXd getNyMatrix ()
 Returns the second row of the B matrix, i.e. N differentiated with respect to y.
 
std::vector< int > getIEG ()
 Creates a vector with node numbers that makes up the element. More...
 
void setElementValue (MatrixXd &system, MatrixXd &local)
 Uses getIEG() to assign system values to corresponding local parameters.
 

Additional Inherited Members

- Public Attributes inherited from QuadraticElement
double xsiCoord [2][2] = { { -sqrt(1 / 3.0), sqrt(1 / 3.0) } ,{ -sqrt(1 / 3.0), sqrt(1 / 3.0) } }
 
double etaCoord [2][2] = { { sqrt(1 / 3.0), sqrt(1 / 3.0) } ,{ -sqrt(1 / 3.0), -sqrt(1 / 3.0) } }
 
double weights [2][2] = { { 1, 1 } ,{ 1, 1 } }
 
- Public Attributes inherited from Element
std::vector< int > nodes
 Vector containing the nodes of the element.
 
double area
 Elements total area.
 
Material material
 Element material with Youngs modulus, poisson's ratio and shear modulus.
 
int elementType
 Defines what type of element this element is (value '2' for T3 and value '9' for T6)
 
double Iex
 Elements second area moment about x-axis.
 
double Iey
 Elements second area moment about y-axis.
 
double Iexy
 Elements second area moment product.
 
double ecx
 Elements area centre in x-direction.
 
double ecy
 Elements area centre in y-direction.
 
double dx
 Distance in x-direction between mesh- and node area centre.
 
double dy
 Distance in y-direction between mesh- and node area centre.
 
std::vector< double > xNodePositions
 Elements nodepositions in x-direction.
 
std::vector< double > yNodePositions
 Elements nodepositions in y-direction.
 
std::vector< double > xNodePositionPrincipal
 Nodal x-coordinates in principal axes.
 
std::vector< double > yNodePositionPrincipal
 Nodal y-coordinates in principal axes.
 
MatrixXd B
 2x3 Matrix containing differentials of shapefunction with respect to x and y respectively
 
MatrixXd G
 Matrix with shearmodule used to determine initial element loads in tortional analysis.
 
MatrixXd XoverY
 6x1 matrix with x1, x2, x3, y1, y2, and y3 of the element.
 
MatrixXd xCoordinates
 1x3 matrix with x-coordinates.
 
MatrixXd yCoordinates
 1X3 matrix with y-coordinates.
 
MatrixXd elementStiffness
 Matrix used to temporarily hold element stiffnes coefficients.
 
MatrixXd elementLoad
 Matrix used to temporarily hold element load coefficients.
 
MatrixXd elementDisplacement
 Matrix used to temporarily hold element displacement values.
 
MatrixXd initialStrain
 Matrix used to temporarily hold element initial strain coefficients.
 
std::vector< MatrixXd > tau
 Vector temporarily storing shear stresses during calculation.
 

Member Function Documentation

void Q4Element::computeTau ( )
virtual

Calculates shear stresses at nodes using initialStrain and elementsDisplacement.

\( \tau = Bv + \epsilon_0 \)

Implements QuadraticElement.

MatrixXd Q4Element::getShapefunction ( double  zeta1,
double  zeta2,
double  zeta3 
)
virtual

Calculates the Matrix containing shape functions
.

Returns
MatrixXd(1,3) with shape functions

Implements QuadraticElement.


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