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

Class for implementation of T3 elements. More...

#include <T3Element.h>

Inherits TriangularElement.

Public Member Functions

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 calculateConstants ()
 Calculates the constant vectors and matrices for the element; i.e. G, xCoordinates, and yCoordinates.
 
MatrixXd getShapefunction (double zeta1, double zeta2, double zeta3)
 Calculates shapefunctions \( \begin{equation} \textbf{N} = \begin{bmatrix} \zeta_1&\zeta_2&\zeta_3 \end{bmatrix} \end{equation} \). More...
 
void calculateStiffnessMatrix ()
 Calculates element stiffness matrix K. More...
 
MatrixXd getNMatrix (double zeta1, double zeta2, double zeta3)
 Returns a matrix with the shape functions for the T3 element. More...
 
void calculateBMatrix ()
 Calculates the B matrix for T3 elements. More...
 
void computeTau ()
 Calculates shear stresses at nodes using initialStrain and elementsDisplacement. More...
 
- Public Member Functions inherited from TriangularElement
double xOfZeta (double zeta1, double zeta2)
 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 zeta1, double zeta2)
 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 ()
 
void calculateAreaCentre ()
 Calculates the area centre of the element. More...
 
double getBendingStiffnessX (double)
 Calculates the second moment of area about the x-axis for the element. More...
 
double getBendingStiffnessY (double)
 Calculates the second moment of area about the y-axis for the element. More...
 
double getBendingStiffnessProduct (double, double)
 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 TriangularElement
const double zeta [3][3] = { { 0.5, 0.5, 0.0 },{ 0.0, 0.5, 0.5 },{ 0.5, 0.0, 0.5 } }
 Zeta values for integration ponts.
 
const double weight [3] = { 1.0 / 3, 1.0 / 3, 1.0 / 3 }
 Weighting of each integration point.
 
double xl1
 Distance in x-direction from node to element area center.
 
double xl2
 Distance in x-direction from node to element area center.
 
double xl3
 Distance in x-direction from node to element area center.
 
double yl1
 Distance in y-direction from node to element area center.
 
double yl2
 Distance in y-direction from node to element area center.
 
double yl3
 Distance in y-direction from node to element area center.
 
- 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.
 

Detailed Description

Class for implementation of T3 elements.

Member Function Documentation

void T3Element::calculateBMatrix ( )

Calculates the B matrix for T3 elements.

\( \begin{equation} \textbf{B} = = \frac{1}{2A} \begin{bmatrix} y_{23}&y_{31}&y_{12} \\ x_{32}&x_{13}&x_{21} \end{bmatrix} \end{equation} \)

void T3Element::calculateStiffnessMatrix ( )
virtual

Calculates element stiffness matrix K.

\( \begin{equation} K = area \times B^T G B \end{equation} \)

Implements TriangularElement.

void T3Element::computeTau ( )
virtual

Calculates shear stresses at nodes using initialStrain and elementsDisplacement.

\( \tau = Bv + \epsilon_0 \)

Implements Element.

MatrixXd T3Element::getNMatrix ( double  zeta1,
double  zeta2,
double  zeta3 
)
virtual

Returns a matrix with the shape functions for the T3 element.

\( \begin{equation} \textbf{N} = \begin{bmatrix} 0 & 0 & 0 & -\zeta_1 & -\zeta_2 & -\zeta_3 \\ \zeta_1 & \zeta_2 & \zeta_3 & 0 & 0 & 0 \end{bmatrix} \end{equation} \)

Returns
MatrixXd(2,6)

Implements TriangularElement.

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

Calculates shapefunctions \( \begin{equation} \textbf{N} = \begin{bmatrix} \zeta_1&\zeta_2&\zeta_3 \end{bmatrix} \end{equation} \).

Returns
MatrixXd(1,3) with shape functions

Implements TriangularElement.


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