5 #ifndef TRIANGULARELEMENT 6 #define TRIANGULARELEMENT 16 const double zeta[3][3] = { { 0.5, 0.5, 0.0 },{ 0.0, 0.5, 0.5 },{ 0.5, 0.0, 0.5 } };
17 double zetaNode[3][3] = { { 1., 0., 0. },{ 0., 1., 0. },{ 0., 0., 1. } };
18 const double weight[3] = { 1.0 / 3, 1.0 / 3, 1.0 / 3 };
20 virtual MatrixXd getNMatrix(
double zeta1,
double zeta2,
double zeta3) = 0;
21 virtual MatrixXd getBMatrix(
double zeta1,
double zeta2,
double zeta3) = 0;
22 virtual void calculateStiffnessMatrix() = 0;
23 virtual void calculateElementLoadTorsion() = 0;
24 virtual void calculateElementLoadShearX() = 0;
25 virtual void calculateElementLoadShearY() = 0;
26 virtual double calculateDeltaGIt() = 0;
27 virtual void computeTauTorsion(
double rateOfTwist) = 0;
28 virtual void computeTauShear(
double Cx,
double Cy) = 0;
61 MatrixXd
getN1Matrix(
double zeta1,
double zeta2,
double zeta3);
71 double xOfZeta(
double zeta1,
double zeta2);
81 double yOfZeta(
double zeta1,
double zeta2);
double getBendingStiffnessY(double Ax)
Calculates the second moment of area about the y-axis for the element.
Definition: TriangularElement.cpp:97
Contains element data and relevant functions for massive analysis.
Definition: Element.h:13
double getBendingStiffnessX(double Ay)
Calculates the second moment of area about the x-axis for the element.
Definition: TriangularElement.cpp:78
void calculateArea()
Calculates the area of the element.
Definition: TriangularElement.cpp:54
double getShearFactorContributionX()
Gets the shear deformation factor contribution from the element, in x-direction.
Definition: TriangularElement.cpp:134
double yOfZeta(double zeta1, double zeta2)
Calculates and returns the the distance in the y-direction between the integration point in the eleme...
Definition: TriangularElement.cpp:49
void computeTauComposite(double C_x, double C_y, double rateOfTwist)
Calculates the element stresses at the integration points for composite analysis. ...
Definition: TriangularElement.cpp:229
double getShearFactorContributionY()
Gets the shear deformation factor contribution from the element, in y-direction.
Definition: TriangularElement.cpp:145
const double weight[3]
Weighting of each integration point.
Definition: TriangularElement.h:18
const double zeta[3][3]
Zeta values for integration ponts, used for computing values at integration points.
Definition: TriangularElement.h:16
double zetaNode[3][3]
Zeta values for corner nodes, used for computing values at nodes.
Definition: TriangularElement.h:17
void calculateTorsionShearCenter()
Calculates the shear center for the element, based on torsional analysis.
Definition: TriangularElement.cpp:156
MatrixXd getNyMatrix()
Returns the second row of the B matrix, i.e. N differentiated with respect to y.
Definition: TriangularElement.cpp:39
void calculateInitialStrain()
Calculates the initial strain of the element.
Definition: TriangularElement.cpp:13
double xOfZeta(double zeta1, double zeta2)
Calculates and returns the the distance in the x-direction between the integration point in the eleme...
Definition: TriangularElement.cpp:44
void calculateElementLoadComposite(double C_x, double C_y, double rateOfTwist)
Calculates the element load for composite analysis.
Definition: TriangularElement.cpp:172
MatrixXd getNxMatrix()
Returns the first row of the B matrix, i.e. N differentiated with respect to x.
Definition: TriangularElement.cpp:34
void calculateAreaCentre()
Calculates the area centre of the element.
Definition: TriangularElement.cpp:71
double getBendingStiffnessProduct(double Ax, double Ay)
Calculating the product of moment of inertia.
Definition: TriangularElement.cpp:117
Class for implementation of triangular elements.
Definition: TriangularElement.h:9
MatrixXd getN1Matrix(double zeta1, double zeta2, double zeta3)
Gets the matrix.
Definition: TriangularElement.cpp:27