29 #ifndef NLForceBeamColumn3dBase_h 30 #define NLForceBeamColumn3dBase_h 32 #include <domain/mesh/element/truss_beam_column/BeamColumnWithSectionFDTrf3d.h> 33 #include <utility/matrix/Matrix.h> 34 #include <utility/matrix/Vector.h> 35 #include "domain/mesh/element/utils/fvectors/FVectorBeamColumn3d.h" 36 #include "domain/mesh/element/truss_beam_column/EsfBeamColumn3d.h" 37 #include "domain/mesh/element/utils/coordTransformation/CrdTransf3d.h" 48 static const size_t NDM;
52 static const double DefaultLoverGJ;
69 std::vector<Matrix>
fs;
70 std::vector<Vector>
vs;
71 std::vector<Vector>
Ssr;
81 static double workArea[];
84 void initializeSectionHistoryVariables(
void);
96 int getNumDOF(
void)
const;
98 double getRho(
void)
const 100 void setRho(
const double &r)
103 const Matrix &getTangentStiff(
void)
const;
105 const Vector &getResistingForce(
void)
const;
107 inline double getAN1(
void)
109 return Secommit.
AN1()+p0[0];
111 inline double getAN2(
void)
113 return Secommit.
AN2();
115 inline double getN1(
void)
117 return -Secommit.
AN1()-p0[0];
119 inline double getN2(
void)
121 return Secommit.
AN2();
123 inline double getN(
void)
125 return (-Secommit.
AN1()-p0[0]+Secommit.
AN2())/2.0;
127 inline double getAMz1(
void)
129 return Secommit.
Mz1();
131 inline double getAMz2(
void)
133 return Secommit.
Mz2();
135 inline double getMz1(
void)
137 return -Secommit.
Mz1();
139 inline double getMz2(
void)
141 return -Secommit.
Mz2();
143 inline double getVy(
void)
145 return Secommit.
Vy(theCoordTransf->getInitialLength());
147 inline double getAVy1(
void)
149 return Secommit.
Vy(theCoordTransf->getInitialLength())+p0[1];
151 inline double getAVy2(
void)
153 return -Secommit.
Vy(theCoordTransf->getInitialLength())+p0[2];
155 inline double getVy1(
void)
157 return -Secommit.
Vy(theCoordTransf->getInitialLength())-p0[1];
159 inline double getVy2(
void)
161 return Secommit.
Vy(theCoordTransf->getInitialLength())-p0[2];
163 inline double getVz(
void)
165 return Secommit.
Vz(theCoordTransf->getInitialLength());
167 inline double getAVz1(
void)
169 return Secommit.
Vz(theCoordTransf->getInitialLength())+p0[3];
171 inline double getAVz2(
void)
173 return -Secommit.
Vz(theCoordTransf->getInitialLength())+p0[4];
175 inline double getVz1(
void)
177 return -Secommit.
Vz(theCoordTransf->getInitialLength())-p0[3];
179 inline double getVz2(
void)
181 return Secommit.
Vz(theCoordTransf->getInitialLength())-p0[4];
183 inline double getMy1(
void)
185 return Secommit.
My1();
187 inline double getMy2(
void)
189 return Secommit.
My2();
191 inline double getT(
void)
195 inline double getT1(
void)
197 return Secommit.
T1();
199 inline double getT2(
void)
201 return Secommit.
T2();
Matrix kvcommit
commited stiffness matrix in the basic system
Definition: NLForceBeamColumn3dBase.h:66
CrdTransf provides the abstraction of a frame coordinate transformation. It is an abstract base class...
Definition: CrdTransf.h:87
FVectorBeamColumn3d p0
Reactions in the basic system due to element loads.
Definition: NLForceBeamColumn3dBase.h:75
double Vy(const double &L) const
Returns the cortante Vy.
Definition: EsfBeamColumn3d.h:77
Base class for materials.
Definition: Material.h:85
Internal forces for a beam column 3D element.
Definition: FVectorBeamColumn3d.h:40
3D beam column internal forces.
Definition: EsfBeamColumn3d.h:45
int maxIters
maximum number of local iterations
Definition: NLForceBeamColumn3dBase.h:57
int sendData(CommParameters &cp)
Send members through the channel being passed as parameter.
Definition: NLForceBeamColumn3dBase.cc:137
int recvData(const CommParameters &cp)
Receives members through the channel being passed as parameter.
Definition: NLForceBeamColumn3dBase.cc:157
std::vector< Matrix > fs
array of section flexibility matrices
Definition: NLForceBeamColumn3dBase.h:69
void resizeMatrices(const size_t &nSections)
alocate section flexibility matrices and section deformation vectors
Definition: NLForceBeamColumn3dBase.cc:44
double AN2(void) const
Return the fuerza axil que se ejerce sobre la barra en el extremo frontal.
Definition: EsfBeamColumn3d.h:62
Base clas for 3D force beam column elements with SeccionBarraPrismatica type material.
Definition: NLForceBeamColumn3dBase.h:44
const double & Mz1(void) const
Returns the momento z en el extremo dorsal.
Definition: EsfBeamColumn3d.h:65
double T2(void) const
Returns the torsor en el extremo frontal.
Definition: EsfBeamColumn3d.h:104
EsfBeamColumn3d Se
element resisting forces in the basic system
Definition: NLForceBeamColumn3dBase.h:64
const double & T(void) const
Returns the torsor.
Definition: EsfBeamColumn3d.h:95
Base class for beam-column cross sections. Constitutive equations of the section. ...
Definition: SeccionBarraPrismatica.h:50
static const size_t NEGD
number of element global dof's
Definition: NLForceBeamColumn3dBase.h:50
static const int NND
number of nodal dof's
Definition: NLForceBeamColumn3dBase.h:49
const double & My2(void) const
Returns the momento y en el extremo frontal.
Definition: EsfBeamColumn3d.h:86
3D beam colun element with SeccionBarraPrismatica material type.
Definition: BeamColumnWithSectionFDTrf3d.h:65
double Vz(const double &L) const
Returns the cortante Vy.
Definition: EsfBeamColumn3d.h:92
const double & My1(void) const
Returns the momento y en el extremo dorsal.
Definition: EsfBeamColumn3d.h:80
double AN1(void) const
Return the fuerza axil que se ejerce sobre la barra en el extremo dorsal.
Definition: EsfBeamColumn3d.h:59
std::vector< Vector > Ssr
array of section resisting force vectors
Definition: NLForceBeamColumn3dBase.h:71
double T1(void) const
Returns the torsor en el extremo dorsal.
Definition: EsfBeamColumn3d.h:101
std::vector< Vector > vs
array of section deformation vectors
Definition: NLForceBeamColumn3dBase.h:70
static const size_t NEBD
number of element dof's in the basic system
Definition: NLForceBeamColumn3dBase.h:51
Matrix kv
stiffness matrix in the basic system
Definition: NLForceBeamColumn3dBase.h:63
const double & Mz2(void) const
Returns the momento z en el extremo frontal.
Definition: EsfBeamColumn3d.h:71
double rho
mass density per unit length
Definition: NLForceBeamColumn3dBase.h:56
int initialFlag
indicates if the element has been initialized
Definition: NLForceBeamColumn3dBase.h:60
Matrix sp
Applied section forces due to element loads, 5 x nSections.
Definition: NLForceBeamColumn3dBase.h:74
double tol
tolerance for relative energy norm for local iterations
Definition: NLForceBeamColumn3dBase.h:58
Communication parameters between processes.
Definition: CommParameters.h:65
EsfBeamColumn3d Secommit
commited element end forces in the basic system
Definition: NLForceBeamColumn3dBase.h:67
================================================================================
Definition: ContinuaReprComponent.h:34
static const size_t NDM
dimension of the problem (3d)
Definition: NLForceBeamColumn3dBase.h:48
std::vector< Vector > vscommit
array of commited section deformation vectors
Definition: NLForceBeamColumn3dBase.h:72