33 #include "domain/mesh/element/truss_beam_column/BeamColumn.h" 34 #include "domain/mesh/element/utils/physical_properties/ElasticSection2dPhysicalProperties.h" 61 ProtoBeam2d(
int tag,
int class_tag,
double A,
double E,
double I,
int Nd1,
int Nd2);
62 ProtoBeam2d(
int tag,
int class_tag,
double A,
double alpha,
double E,
double G,
double I,
int Nd1,
int Nd2);
77 void setRho(
const double &r);
80 inline PhysProp &getPhysicalProperties(
void)
82 inline const PhysProp &getPhysicalProperties(
void)
const 84 void setPhysicalProperties(
const PhysProp &);
86 {
return physicalProperties.getMaterialNames(); }
90 inline const Vector &getInitialSectionDeformation(
void)
const 91 {
return (*physicalProperties[0]).getInitialSectionDeformation(); }
94 inline const Vector &getInitialStrain(
void)
const 95 {
return (*physicalProperties[0]).getInitialSectionDeformation(); }
96 inline void setInitialStrain(
const Vector &e)
113 virtual const Matrix &getExtrapolationMatrix(
void)
const 116 boost::python::list
getValuesAtNodes(
const std::string &,
bool silent=
false)
const;
PhysProp physicalProperties
pointers to the material objects and physical properties.
Definition: ProtoBeam2d.h:53
Float vector abstraction.
Definition: Vector.h:94
static Matrix extrapolation_matrix
Extrapolation matrix.
Definition: ProtoBeam2d.h:51
ProtoBeam2d(int tag, int class_tag, const Material *m=nullptr)
Default constructor.
Definition: ProtoBeam2d.cc:69
Communication parameters between processes.
Definition: Communicator.h:66
void zeroLoad(void)
Removes the element loads.
Definition: ProtoBeam2d.cc:331
Base class for Beam-column elements with PrismaticBarCrossSection material.
Definition: BeamColumn.h:45
double getWeakAxisAngle(void) const
Returns the angle between element weak axis and local XZ plane.
Definition: ProtoBeam2d.cc:313
const Vector & getSectionDeformation(void) const
Return the section generalized strain.
Definition: ProtoBeam2d.cc:223
const Vector & getPersistentInitialSectionDeformation(void) const
Returns the value of the persistent (does not get wiped out by zeroLoad) initial deformation of the s...
Definition: ProtoBeam2d.cc:105
Base class for beam-column cross sections.
Definition: PrismaticBarCrossSection.h:53
virtual ElementalLoad * createInertiaLoad(const Vector &)
Creates the inertia load that corresponds to the acceleration argument.
Definition: ProtoBeam2d.cc:339
void set_material(const Material *m)
Set values to section mass properties.
Definition: ProtoBeam2d.cc:42
Vector persistentInitialDeformation
Persistent initial strain at element level. Used to store the deformation during the inactive phase o...
Definition: ProtoBeam2d.h:54
Base class for materials.
Definition: Material.h:93
virtual const Vector & computeCurrentStrain(void) const
Compute the current strain.
Definition: ProtoBeam2d.cc:206
const PrismaticBarCrossSection * getSectionPtr(const size_t &) const
Returns a pointer to the i-th section of the element.
Definition: ProtoBeam2d.cc:136
const CrossSectionProperties2d & getSectionProperties(void) const
Return section properties.
Definition: ProtoBeam2d.cc:122
int sendData(Communicator &)
Send members through the communicator argument.
Definition: ProtoBeam2d.cc:171
int getNumDOF(void) const
Return the number of degrees of freedom of the element.
Definition: ProtoBeam2d.cc:100
Vector getVDirWeakAxisLocalCoord(void) const
Returns the direction vector of element weak axis expressed in the local coordinate system...
Definition: ProtoBeam2d.cc:198
void setRho(const double &r)
Sets linear density.
Definition: ProtoBeam2d.cc:163
double getRho(void) const
Return linear density.
Definition: ProtoBeam2d.cc:159
int revertToLastCommit(void)
Revert the element to the its last commited state.
Definition: ProtoBeam2d.cc:286
virtual std::set< std::string > getMaterialNames(void) const
Return the names of the material(s) of the element.
Definition: ProtoBeam2d.h:85
double getStrongAxisAngle(void) const
Returns the angle between element strong axis and local XZ plane.
Definition: ProtoBeam2d.cc:305
Mechanical (E, G) and mass properties of a section (area, moments of inertia,...) for a bi-dimensiona...
Definition: CrossSectionProperties2d.h:55
Vector getVDirStrongAxisLocalCoord(void) const
Returns the direction vector of element strong axis expressed in the local coordinate system...
Definition: ProtoBeam2d.cc:189
void alive(void)
Reactivates the element.
Definition: ProtoBeam2d.cc:320
Base class for 2D beam elements.
Definition: ProtoBeam2d.h:46
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: ProtoBeam2d.cc:358
Three-dimensional elastic section physical properties.
Definition: ElasticSection2dPhysicalProperties.h:41
double getLinearRho(void) const
Return linear density.
Definition: ProtoBeam2d.cc:167
void setSectionProperties(const CrossSectionProperties2d &)
Set section properties.
Definition: ProtoBeam2d.cc:130
int setInitialSectionDeformation(const Vector &)
Set the element initial strain.
Definition: ProtoBeam2d.cc:216
virtual int update(void)
Update element state.
Definition: ProtoBeam2d.cc:240
Open source finite element program for structural analysis.
Definition: ContinuaReprComponent.h:35
void setMaterial(const Material &)
Set the element material.
Definition: ProtoBeam2d.cc:145
Matrix of floats.
Definition: Matrix.h:111
Base class for loads over elements.
Definition: ElementalLoad.h:79
int commitState(void)
Commit the element state.
Definition: ProtoBeam2d.cc:274
int recvData(const Communicator &)
Receives members through the communicator argument.
Definition: ProtoBeam2d.cc:180
int revertToStart(void)
Revert the the element to the its initial state.
Definition: ProtoBeam2d.cc:296
void incrementPersistentInitialDeformationWithCurrentDeformation(void)
Increments the persistent (does not get wiped out by zeroLoad) initial deformation of the section...
Definition: ProtoBeam2d.cc:112