33 #include "domain/mesh/element/Element1D.h" 34 #include "domain/mesh/element/utils/physical_properties/ElasticSection3dPhysicalProperties.h" 53 ProtoBeam3d(
int tag,
int class_tag,
int Nd1,
int Nd2);
54 ProtoBeam3d(
int tag,
int class_tag,
double A,
double E,
double G,
double Jx,
double Iy,
double Iz,
int Nd1,
int Nd2);
55 ProtoBeam3d(
int tag,
int class_tag,
double A,
double alpha_y,
double alpha_z,
double E,
double G,
double Jx,
double Iy,
double Iz,
int Nd1,
int Nd2);
68 void setRho(
const double &);
71 inline PhysProp &getPhysicalProperties(
void)
73 inline const PhysProp &getPhysicalProperties(
void)
const 75 void setPhysicalProperties(
const PhysProp &);
77 {
return physicalProperties.getMaterialNames(); }
79 int setInitialSectionDeformation(
const Vector &);
80 inline const Vector &getInitialSectionDeformation(
void)
const 81 {
return (*physicalProperties[0]).getInitialSectionDeformation(); }
84 inline const Vector &getInitialStrain(
void)
const 85 {
return (*physicalProperties[0]).getInitialSectionDeformation(); }
86 inline void setInitialStrain(
const Vector &e)
87 { (*physicalProperties[0]).setInitialSectionDeformation(e); }
104 boost::python::list
getValuesAtNodes(
const std::string &,
bool silent=
false)
const;
Vector getVDirWeakAxisLocalCoord(void) const
Returns the direction vector of element weak axis expressed in the local coordinate system...
Definition: ProtoBeam3d.cc:196
int getNumDOF(void) const
return the number of DOF associated with the element.
Definition: ProtoBeam3d.cc:113
Mechanical (E, G) and mass properties of a section (area, moments of inertia,...) in a three-dimensio...
Definition: CrossSectionProperties3d.h:42
int commitState(void)
Commit the element state.
Definition: ProtoBeam3d.cc:300
Float vector abstraction.
Definition: Vector.h:94
Base class for 3D beams.
Definition: ProtoBeam3d.h:40
Three-dimensional elastic section physical properties.
Definition: ElasticSection3dPhysicalProperties.h:41
const Vector & getPersistentInitialSectionDeformation(void) const
Returns the value of the persistent (does not get wiped out by zeroLoad) initial deformation of the e...
Definition: ProtoBeam3d.cc:118
Communication parameters between processes.
Definition: Communicator.h:66
virtual int update(void)
Update element state.
Definition: ProtoBeam3d.cc:257
int sendData(Communicator &)
Send members through the communicator argument.
Definition: ProtoBeam3d.cc:169
PhysProp physicalProperties
pointers to the material objects and physical properties.
Definition: ProtoBeam3d.h:45
Base class for materials.
Definition: Material.h:93
double getRho(void) const
Return linear density.
Definition: ProtoBeam3d.cc:157
const Vector & getSectionDeformation(void) const
Return the section generalized strain.
Definition: ProtoBeam3d.cc:235
Vector getVDirStrongAxisLocalCoord(void) const
Returns the direction vector of element strong axis expressed in the local coordinate system...
Definition: ProtoBeam3d.cc:187
void alive(void)
Reactivates the element.
Definition: ProtoBeam3d.cc:338
void zeroLoad(void)
Removes the element loads.
Definition: ProtoBeam3d.cc:349
double getStrongAxisAngle(void) const
Returns the angle between element strong axis and local XZ plane.
Definition: ProtoBeam3d.cc:205
double getWeakAxisAngle(void) const
Returns the angle between element weak axis and local XZ plane.
Definition: ProtoBeam3d.cc:213
Base class for one-dimensional elements (beam,truss,...)
Definition: Element1D.h:52
ProtoBeam3d(int tag, int class_tag, const Material *m=nullptr)
Default constructor.
Definition: ProtoBeam3d.cc:63
void setMaterial(const std::string &)
Set the element material.
Definition: ProtoBeam3d.cc:149
double getLinearRho(void) const
Return linear density.
Definition: ProtoBeam3d.cc:165
void setRho(const double &)
Sets linear density.
Definition: ProtoBeam3d.cc:161
void setSectionProperties(const CrossSectionProperties3d &)
Set section properties.
Definition: ProtoBeam3d.cc:143
virtual const Vector & computeCurrentStrain(void) const
Compute the current strain.
Definition: ProtoBeam3d.cc:220
virtual void createInertiaLoad(const Vector &)
Creates the inertia load that corresponds to the acceleration argument.
Definition: ProtoBeam3d.cc:331
int revertToStart(void)
Revert the the element to the its start state.
Definition: ProtoBeam3d.cc:322
virtual std::set< std::string > getMaterialNames(void) const
Return the names of the material(s) of the element.
Definition: ProtoBeam3d.h:76
int recvData(const Communicator &)
Receives members through the communicator argument.
Definition: ProtoBeam3d.cc:178
Open source finite element program for structural analysis.
Definition: ContinuaReprComponent.h:35
void set_material(const Material *m)
Set values to section mass properties.
Definition: ProtoBeam3d.cc:37
int revertToLastCommit(void)
Revert the element to the its last commited state.
Definition: ProtoBeam3d.cc:312
const CrossSectionProperties3d & getSectionProperties(void) const
Return section properties.
Definition: ProtoBeam3d.cc:135
boost::python::list getValuesAtNodes(const std::string &, bool silent=false) const
Return a python list with the values of the argument property at element nodes.
Definition: ProtoBeam3d.cc:364
Vector persistentInitialDeformation
Persistent initial strain at element level. Used to store the deformation during the inactive phase o...
Definition: ProtoBeam3d.h:46
void incrementPersistentInitialDeformationWithCurrentDeformation(void)
Increments the persistent (does not get wiped out by zeroLoad) initial deformation of the section...
Definition: ProtoBeam3d.cc:125