Class for creating a wide flange section for 2D analysis with linear elastic material for a frame elements.
More...
#include <Lin2DWideFlange.hpp>
|
double | GetArea () |
| Computes the Angle area. More...
|
|
double | GetShearArea2 () |
| Computes the Angle shear area. More...
|
|
double | GetShearArea3 () |
| Computes the Angle shear area. More...
|
|
double | GetInertiaAxis2 () |
| Computes the Angle flexural inertia. More...
|
|
double | GetInertiaAxis3 () |
| Computes the Angle flexural inertia. More...
|
|
void | ComputeSectionCenter (double &zcm, double &ycm) |
| Gets the section centroid. More...
|
|
Eigen::MatrixXd | GetLineRotationMatrix (double theta) |
| Gets Local Axis Rotation for Line Section according to provided angle. More...
|
|
Eigen::MatrixXd | GetAreaRotationMatrix (double Theta) |
| Gets Local Axis Rotation for Area Section according to provided angle. More...
|
|
Eigen::MatrixXd | GetLineTranslationMatrix (double h, double b, double zc, double yc, unsigned int ip) |
| Gets centroid translation axis for Line Section according to insertion point. More...
|
|
void | InsertionPointCoordinates (double &x3, double &x2, double h, double b, double zc, double yc, unsigned int ip) |
| Gets the coordinate according to insertion point. More...
|
|
Eigen::MatrixXd | ComputeLineLocalAxes (double h, double b, double zcm, double ycm, double angle, unsigned int ip) |
| Transforms generalised strain/stresses from Element to Section local coordinate. More...
|
|
Class for creating a wide flange section for 2D analysis with linear elastic material for a frame elements.
- See also
- Section.hpp
◆ Lin2DWideFlange()
Lin2DWideFlange::Lin2DWideFlange |
( |
double |
h, |
|
|
double |
b, |
|
|
double |
tw, |
|
|
double |
tf, |
|
|
std::unique_ptr< Material > & |
material, |
|
|
double |
theta = 0.0 , |
|
|
unsigned int |
ip = 10 |
|
) |
| |
◆ ~Lin2DWideFlange()
Lin2DWideFlange::~Lin2DWideFlange |
( |
| ) |
|
◆ CommitState()
void Lin2DWideFlange::CommitState |
( |
| ) |
|
|
virtual |
Perform converged section state update.
- Note
- This function sets the trail stress and strain as converged.
Implements Section.
◆ ComputeSectionCenter()
void Lin2DWideFlange::ComputeSectionCenter |
( |
double & |
zcm, |
|
|
double & |
ycm |
|
) |
| |
|
protected |
Gets the section centroid.
- Parameters
-
zcm | The centroid position along x3 axis. |
ycm | The centroid position along x2 axis. |
- See also
- The geometric properties can be revisited at Lin3DWideFlange.
◆ CopySection()
std::unique_ptr<Section> Lin2DWideFlange::CopySection |
( |
| ) |
|
|
virtual |
◆ GetArea()
double Lin2DWideFlange::GetArea |
( |
| ) |
|
|
protected |
Computes the Angle area.
- Returns
- A constant with the cross-section area.
- See also
- The geometric properties can be revisited at Lin3DWideFlange.
◆ GetDensity()
Eigen::MatrixXd Lin2DWideFlange::GetDensity |
( |
| ) |
|
|
virtual |
Access the section density matrix.
- Returns
- The section density matrix.
Implements Section.
◆ GetInertiaAxis2()
double Lin2DWideFlange::GetInertiaAxis2 |
( |
| ) |
|
|
protected |
Computes the Angle flexural inertia.
- Returns
- A constant with the moment of inertia about axis x2.
- See also
- The geometric properties can be revisited at Lin3DWideFlange.
◆ GetInertiaAxis3()
double Lin2DWideFlange::GetInertiaAxis3 |
( |
| ) |
|
|
protected |
Computes the Angle flexural inertia.
- Returns
- A constant with the moment of inertia about axis x3.
- See also
- The geometric properties can be revisited at Lin3DWideFlange.
◆ GetInitialTangentStiffness()
Eigen::MatrixXd Lin2DWideFlange::GetInitialTangentStiffness |
( |
| ) |
|
|
virtual |
Returns the section initial stiffness matrix.
- Returns
- Matrix with the initial section tangent stiffness matrix.
- Note
- The initial tangent stiffness matrix is computed when the generalized strain vector is zero.
Implements Section.
◆ GetShearArea2()
double Lin2DWideFlange::GetShearArea2 |
( |
| ) |
|
|
protected |
Computes the Angle shear area.
- Returns
- A constant with the shear area along axis x2.
- See also
- The geometric properties can be revisited at Lin3DWideFlange.
◆ GetShearArea3()
double Lin2DWideFlange::GetShearArea3 |
( |
| ) |
|
|
protected |
Computes the Angle shear area.
- Returns
- A constant with the shear area along axis x3.
- See also
- The geometric properties can be revisited at Lin3DWideFlange.
◆ GetStrain()
Eigen::VectorXd Lin2DWideFlange::GetStrain |
( |
| ) |
|
|
virtual |
Returns the resultant (generalised) strain vector over the section.
- Returns
- Vector with the resultant strain components.
Implements Section.
◆ GetStrainAt()
Eigen::VectorXd Lin2DWideFlange::GetStrainAt |
( |
double |
x3 = 0 , |
|
|
double |
x2 = 0 |
|
) |
| |
|
virtual |
Returns the section strain at given position.
- Parameters
-
x3 | Position on the x3-axis where the strain is evaluated. |
x2 | Position on the x2-axis where the strain is evaluated. |
- Returns
- Vector with the strain components at coordinate (x3,x2).
Implements Section.
◆ GetStress()
Eigen::VectorXd Lin2DWideFlange::GetStress |
( |
| ) |
|
|
virtual |
Returns the resultant (generalised) stress vector over the section.
- Returns
- Vector with the resultant stress components.
Implements Section.
◆ GetStressAt()
Eigen::VectorXd Lin2DWideFlange::GetStressAt |
( |
double |
x3 = 0 , |
|
|
double |
x2 = 0 |
|
) |
| |
|
virtual |
Returns the section stress at given position.
- Parameters
-
x3 | Position on the x3-axis where the stress is evaluated. |
x2 | Position on the x2-axis where the stress is evaluated. |
- Returns
- Vector with the stress components at coordinate (x3,x2).
Implements Section.
◆ GetTangentStiffness()
Eigen::MatrixXd Lin2DWideFlange::GetTangentStiffness |
( |
| ) |
|
|
virtual |
Returns the section stiffness matrix.
- Returns
- Matrix with the section consistent tangent stiffness matrix.
Implements Section.
◆ InitialState()
void Lin2DWideFlange::InitialState |
( |
| ) |
|
|
virtual |
Brings the section states to its initial state.
- Note
- This function returns the material states to the beginning.
Implements Section.
◆ ReverseState()
void Lin2DWideFlange::ReverseState |
( |
| ) |
|
|
virtual |
Reverse the section states to previous converged state.
- Note
- This function returns the material states to previous converged states.
Implements Section.
◆ UpdateState()
void Lin2DWideFlange::UpdateState |
( |
const Eigen::VectorXd |
strain, |
|
|
const unsigned int |
cond |
|
) |
| |
|
virtual |
Update the section state for this iteration.
- Parameters
-
strain | Vector with the strain components at this Gauss-point. |
cond | If the the elastic/plastic material components will be updated. |
- Note
- This function computes the strain and tanget stiffness matrix once the trial strain converged.
Implements Section.
double Lin2DWideFlange::b |
|
private |
double Lin2DWideFlange::h |
|
private |
◆ InsertPoint
unsigned int Lin2DWideFlange::InsertPoint |
|
private |
◆ Strain
Eigen::VectorXd Lin2DWideFlange::Strain |
|
private |
Generalized Strain vector.
◆ tf
double Lin2DWideFlange::tf |
|
private |
◆ theMaterial
std::unique_ptr<Material> Lin2DWideFlange::theMaterial |
|
private |
◆ Theta
double Lin2DWideFlange::Theta |
|
private |
◆ tw
double Lin2DWideFlange::tw |
|
private |