xc
Public Member Functions | Protected Member Functions | List of all members

2D beam with hinges in both ends. More...

#include <BeamWithHinges2d.h>

Inheritance diagram for XC::BeamWithHinges2d:
XC::BeamColumnWithSectionFDTrf2d XC::BeamColumnWithSectionFD XC::Element1D XC::ElementBase< 2 > XC::Element XC::MeshComponent XC::ContinuaReprComponent XC::DomainComponent XC::TaggedObject XC::MovableObject XC::DistributedBase

Public Member Functions

 BeamWithHinges2d (int tag, int nodeI, int nodeJ, double E, double A, double I, PrismaticBarCrossSection &sectionRefI, double hingeIlen, PrismaticBarCrossSection &sectionRefJ, double hingeJlen, CrdTransf2d &coordTrans, double massDensPerUnitLength=0.0, int max=1, double tol=1.0e-16)
 Constructor. More...
 
 BeamWithHinges2d (int tag=0)
 Default Constructor. More...
 
 BeamWithHinges2d (int tag, const Material *theSection, const CrdTransf *coordTransf)
 Constructor. More...
 
ElementgetCopy (void) const
 Virtual constructor.
 
double getRho (void) const
 
void setRho (const double &r)
 
CrossSectionProperties2d getSectionProperties (void) const
 
void setSectionProperties (const CrossSectionProperties2d &ctes)
 
int getNumDOF (void) const
 Returns 6, the number of degrees of freedom for this element.
 
void setDomain (Domain *theDomain)
 Sets the domain for the element.
 
int commitState (void)
 Invokes commitState() on each section and returns the sum of the result of these invocations. More...
 
int revertToLastCommit (void)
 Invokes revertToLastCommit() on each section and returns the sum of the result of these invocations. More...
 
int revertToStart (void)
 Invokes revertToStart() on each section and returns the sum of the result of these invocations. More...
 
int update (void)
 Updates the element state. More...
 
const MatrixgetTangentStiff (void) const
 Computes the element flexibility matrix, then returns its inverse. More...
 
const MatrixgetInitialStiff (void) const
 
const MatrixgetMass (void) const
 Return the element lumped mass matrix. More...
 
void zeroLoad (void)
 Zero the element load contributions to the residual.
 
int addLoad (ElementalLoad *theLoad, double loadFactor)
 Effect of the load over the element.
 
int addInertiaLoadToUnbalance (const Vector &accel)
 
const VectorgetResistingForce (void) const
 Returns the element resisting force vector. More...
 
const VectorgetResistingForceIncInertia (void) const
 Returns the element resisting force vector. More...
 
int sendSelf (CommParameters &)
 Sends object through the channel being passed as parameter.
 
int recvSelf (const CommParameters &)
 Receives object through the channel being passed as parameter.
 
ResponsesetResponse (const std::vector< std::string > &argv, Information &info)
 setResponse() is a method invoked to determine if the element will respond to a request for a certain of information. More...
 
int getResponse (int responseID, Information &info)
 Obtain information from an analysis. More...
 
int setParameter (const std::vector< std::string > &argv, Parameter &param)
 Sets the value param to the parameter argv.
 
int updateParameter (int parameterID, Information &info)
 Updates the parameter identified by parameterID with info.
 
void Print (std::ostream &s, int flag=0)
 Print stuff.
 
- Public Member Functions inherited from XC::BeamColumnWithSectionFDTrf2d
 BeamColumnWithSectionFDTrf2d (int tag, int classTag, int numSec)
 
 BeamColumnWithSectionFDTrf2d (int tag, int classTag, int numSec, const Material *mat, const CrdTransf *trf)
 
 BeamColumnWithSectionFDTrf2d (int tag, int classTag, int numSec, int nodeI, int nodeJ, CrdTransf2d &coordTransf)
 
 BeamColumnWithSectionFDTrf2d (const BeamColumnWithSectionFDTrf2d &)
 Copy constructor.
 
 ~BeamColumnWithSectionFDTrf2d (void)
 Destructor.
 
void initialize_trf (void)
 
virtual CrdTransfgetCoordTransf (void)
 Returns (if possible) a pointer to the coordinate transformation.
 
virtual const CrdTransfgetCoordTransf (void) const
 Returns (if possible) a pointer to the coordinate transformation.
 
- Public Member Functions inherited from XC::BeamColumnWithSectionFD
 BeamColumnWithSectionFD (int tag, int classTag, const size_t &numSecc=1)
 
 BeamColumnWithSectionFD (int tag, int classTag, const size_t &numSecc, const Material *m)
 
 BeamColumnWithSectionFD (int tag, int classTag, const size_t &numSecc, const PrismaticBarCrossSection *sccModel)
 
 BeamColumnWithSectionFD (int tag, int classTag, const size_t &numSecc, const PrismaticBarCrossSection *sccModel, int Nd1, int Nd2)
 
const PrismaticBarCrossSectiongetSectionPtr (const size_t &i) const
 Returns a pointer to the i-th section of the element.
 
void setTrialSectionDeformations (const std::vector< Vector > &vs)
 
virtual void setSection (const PrismaticBarCrossSection *sccModel)
 
bool setSections (const std::vector< PrismaticBarCrossSection *> &sectionPtrs)
 
size_t getNumSections (void) const
 
PrismaticBarCrossSectionsVectorgetSections (void)
 
ResponsesetSectionResponse (PrismaticBarCrossSection *, const std::vector< std::string > &, const size_t &, Information &)
 
int setSectionParameter (PrismaticBarCrossSection *, const std::vector< std::string > &, const size_t &, Parameter &)
 
- Public Member Functions inherited from XC::Element1D
 Element1D (int tag, int classTag)
 Constructor.
 
 Element1D (int tag, int classTag, int Nd1, int Nd2)
 Constructor.
 
Matrix getLocalAxes (bool) const
 Returs a matrix with the axes of the element as matrix rows [[x1,y1,z1],[x2,y2,z2],...·].
 
virtual CrdTransfcheckCoordTransf (void)
 Returns (and checks that it exists) a const pointer to the coordinate transformation.
 
virtual const CrdTransfcheckCoordTransf (void) const
 Returns (and checks that it exists) a const pointer to the coordinate transformation.
 
virtual const MatrixgetCooPoints (const size_t &ndiv) const
 Return points distributed between the nodes as a matrix with the coordinates as rows.
 
virtual const VectorgetCooPoint (const double &xrel) const
 Return the point that correspond to the relative coordinate 0<=xrel<=1.
 
Segment3d getLineSegment (bool initialGeometry=true) const
 Return the segment defined by the element.
 
double getDist2 (const Pos2d &p, bool initialGeometry=true) const
 Return the squared distance from the element to the point que is being passed as parameter. More...
 
double getDist (const Pos2d &p, bool initialGeometry=true) const
 Return the the distance from the element to the point being passed as parameter. More...
 
double getDist2 (const Pos3d &p, bool initialGeometry=true) const
 Return the squared distance from the element to the point que is being passed as parameter. More...
 
double getDist (const Pos3d &p, bool initialGeometry=true) const
 Return the the distance from the element to the point being passed as parameter. More...
 
size_t getDimension (void) const
 Return the element dimension (0, 1, 2 or 3).
 
int getVtkCellType (void) const
 Interfaz con VTK.
 
virtual void computeTributaryLengths (bool initialGeometry=true) const
 Calcula the tributary lengths that corresponds to each node of the element.
 
double getTributaryLength (const Node *) const
 Return the tributary length corresponding to the node being passed as parameter. More...
 
void vector2dUniformLoadGlobal (const Vector &)
 
void vector2dUniformLoadLocal (const Vector &)
 
void vector2dPointByRelDistLoadGlobal (const double &, const Vector &)
 
void vector2dPointByRelDistLoadLocal (const double &, const Vector &)
 
void vector2dPointLoadGlobal (const Vector &, const Vector &)
 
void vector2dPointLoadLocal (const Vector &, const Vector &)
 
void vector3dUniformLoadGlobal (const Vector &)
 
void vector3dUniformLoadLocal (const Vector &)
 
void vector3dPointByRelDistLoadGlobal (const double &, const Vector &)
 
void vector3dPointByRelDistLoadLocal (const double &, const Vector &)
 
void vector3dPointLoadGlobal (const Vector &, const Vector &)
 
void vector3dPointLoadLocal (const Vector &, const Vector &)
 
void strainLoad (const DeformationPlane &p1, const DeformationPlane &p2)
 
- Public Member Functions inherited from XC::ElementBase< 2 >
 ElementBase (int tag, int classTag)
 Default constructor.
 
 ElementBase (const ElementBase &)
 Copy constructor.
 
ElementBaseoperator= (const ElementBase &)
 Assignment operator.
 
int getNumExternalNodes (void) const
 Return the number of external nodes.
 
NodePtrsWithIDsgetNodePtrs (void)
 Returns a pointer to the node vector.
 
const NodePtrsWithIDsgetNodePtrs (void) const
 Returns a pointer to the node vector.
 
Pos3d getCenterOfMassPosition (bool initialGeometry=true) const
 Return position of the element centroid.
 
- Public Member Functions inherited from XC::Element
 Element (int tag, int classTag)
 Constructor that takes the element's unique tag and the number of external nodes for the element. More...
 
virtual int getNumEdges (void) const
 Returns number of edges (it must be overloaded for elements that have nodes inside edges. More...
 
std::vector< int > getIdxNodes (void) const
 
virtual void setIdNodes (const std::vector< int > &inodes)
 Set the nodes.
 
virtual void setIdNodes (const ID &inodes)
 Set the nodes.
 
virtual bool isSubdomain (void)
 Returns true if the element is a subdomain.
 
virtual const MatrixgetDamp (void) const
 Returns the damping matrix. More...
 
virtual int setRayleighDampingFactors (const RayleighDampingFactors &rF) const
 Set Rayleigh damping factors.
 
const VectorgetNodeResistingComponents (const size_t &, const Vector &) const
 Returns the generalized force of the element over the iNod-th node. More...
 
const VectorgetNodeResistingForce (const size_t &iNod) const
 Returns the generalized force of the element over the iNod-th node. More...
 
const VectorgetNodeResistingForceIncInertia (const size_t &iNod) const
 Returns the generalized force (including inertia forces) of the element over the node identified by the argument. More...
 
const VectorgetNodeResistingForce (const Node *) const
 Returns the generalized force (including inertia forces) of the element over the node identified by the argument. More...
 
const VectorgetNodeResistingForceIncInertia (const Node *) const
 Returns the generalized force (including inertia forces) of the element over the node identified by the argument. More...
 
Vector getEquivalentStaticLoad (int mode, const double &) const
 Returns the equivalent static load for the mode being passed as parameter and the acceleration that corresponding that mode. More...
 
Matrix getEquivalentStaticNodalLoads (int mode, const double &) const
 Returns the equivalent static load on each node for the mode being passed as parameter and the corresponding acceleration to the mode. More...
 
ResponsesetMaterialResponse (Material *, const std::vector< std::string > &, const size_t &, Information &)
 
virtual int addInertiaLoadSensitivityToUnbalance (const Vector &accel, bool tag)
 
int setMaterialParameter (Material *, const std::vector< std::string > &, const size_t &, Parameter &)
 
virtual int activateParameter (int parameterID)
 Activates the parameter identified by parameterID.
 
virtual const VectorgetResistingForceSensitivity (int gradNumber)
 
virtual const MatrixgetInitialStiffSensitivity (int gradNumber)
 
virtual const MatrixgetDampSensitivity (int gradNumber)
 
virtual const MatrixgetMassSensitivity (int gradNumber)
 
virtual int commitSensitivity (int gradNumber, int numGrads)
 
virtual int addResistingForceToNodalReaction (bool inclInertia)
 Adds nodal reactions.
 
double MaxCooNod (int i) const
 Returns the maximum value of the i coordinate of the element nodes.
 
double MinCooNod (int i) const
 Returns the minimum value of the i coordinate of the element nodes.
 
const MatrixgetCooNodes (void) const
 Returns the coordinates of the nodes.
 
virtual Vector getBaseVector (size_t i, bool initialGeometry=true) const
 Returns a base vector in the direction of the local i-th axis from the i-th row of the matrix returned by getLocalAxes. More...
 
virtual Vector3d getBaseVector3d (size_t i, bool initialGeometry=true) const
 Returns a base vector in the direction of the local i-th axis from the i-th row of the matrix returned by getLocalAxes. More...
 
virtual Vector3d getIVector3d (bool initialGeometry=true) const
 Returns a vector in the direction of the local x axis from the first row of the matrix returned by getLocalAxes. More...
 
virtual Vector3d getJVector3d (bool initialGeometry=true) const
 Returns a vector in the direction of the local y axis from the second row of the matrix returned by getLocalAxes. More...
 
virtual Vector3d getKVector3d (bool initialGeometry=true) const
 Returns a vector in the direction of the local z axis from the third row of the matrix returned by getLocalAxes. More...
 
virtual Rect3d3dCooSys getCooSys (bool) const
 Returns the element coordinate system from the matrix returned by getLocalAxes. More...
 
Pos3d getPosNode (const size_t &i, bool initialGeometry=true) const
 Returns the position of the i-th node. More...
 
std::list< Pos3d > getPosNodes (bool initialGeometry=true) const
 Returns the coordinates of the nodes.
 
Vector getCenterOfMassCoordinates (bool initialGeometry=true) const
 Returns the coordinates del centro de gravedad of the element.
 
Pos3dArray3d getPoints (const size_t &ni, const size_t &nj, const size_t &nk, bool initialGeometry=true)
 Returns a grid of points distributed along the line.
 
bool In (const GeomObj3d &, const double &factor=1.0, const double &tol=0.0) const
 
bool Out (const GeomObj3d &, const double &factor=1.0, const double &tol=0.0) const
 
bool In (const GeomObj2d &, const double &factor=1.0, const double &tol=0.0) const
 
bool Out (const GeomObj2d &, const double &factor=1.0, const double &tol=0.0) const
 
void resetTributaries (void) const
 Resets tributary areas of connected nodes.
 
void dumpTributaries (const std::vector< double > &) const
 Adds to the tributary magnitude of each node the vector being passed as parameter. More...
 
virtual double getTributaryLengthByTag (const int &) const
 Returns the tributary length corresponding to the node which tag se pasa as parameter. More...
 
virtual void computeTributaryAreas (bool initialGeometry=true) const
 Compute tributary areas for each element node.
 
virtual double getTributaryArea (const Node *) const
 Returns the tributary area corresponding to the node.
 
virtual double getTributaryAreaByTag (const int &) const
 Returns the tributary area corresponding to the node.
 
virtual void computeTributaryVolumes (bool initialGeometry=true) const
 Computes the tributary volumes that corresponds to each node of the element.
 
virtual double getTributaryVolume (const Node *) const
 Returns the tributary volume corresponding to the node being passed as parameter. More...
 
virtual double getTributaryVolumeByTag (const int &) const
 Returns the tributary volume corresponding to the node which tag se pasa as parameter. More...
 
virtual Vector getInterpolationFactors (const ParticlePos3d &) const
 Returns interpolattion factors for a material point.
 
virtual Vector getInterpolationFactors (const Pos3d &) const
 Returns interpolattion factors for a material point.
 
virtual const GaussModelgetGaussModel (void) const
 Returns the Gauss integration model of the element.
 
virtual NodesEdge getNodesEdge (const size_t &) const
 Returns the nodes of the element edge.
 
virtual int getEdgeNodes (const Node *, const Node *) const
 Returns the edge of the element that ends in the nodes being passed as parameters. More...
 
int getEdgeNodes (const int &, const int &) const
 Returns the edge of the element that ends in the nodes with the tags being passed as parameters. More...
 
virtual ID getEdgesNode (const Node *) const
 Returns the edges of the element that ends in the node being passed as parameter. More...
 
std::set< int > getEdgesNodes (const NodePtrSet &) const
 Returns the element edges that have both ends in the node set being passed as parameter. More...
 
ID getEdgesNodeByTag (const int &) const
 Returns the edges of the element that have an en in the node with the tag being passed as parameter. More...
 
virtual ID getLocalIndexNodesEdge (const size_t &i) const
 Returns the local indexes of the element nodes that lie over the i-th edge. More...
 
virtual std::set< std::string > getMaterialNames (void) const
 Return the names of the material(s) of the element.
 
boost::python::list getMaterialNamesPy (void) const
 Return the names of the material(s) of the element in a Python list.
 
std::set< SetBase * > get_sets (void) const
 Returns the sets to which the element belongs.
 
void add_to_sets (std::set< SetBase *> &)
 Adds the element to the sets being passed as parameters.
 
- Public Member Functions inherited from XC::MeshComponent
 MeshComponent (int classTag)
 Constructor.
 
 MeshComponent (int tag, int classTag)
 Constructor.
 
- Public Member Functions inherited from XC::ContinuaReprComponent
 ContinuaReprComponent (int classTag)
 
 ContinuaReprComponent (int tag, int classTag)
 
virtual const bool isDead (void) const
 
virtual const bool isAlive (void) const
 
virtual void kill (void)
 
virtual void alive (void)
 
- Public Member Functions inherited from XC::DomainComponent
 ~DomainComponent (void)
 Destructor.
 
size_t getIdx (void) const
 Returns the index of the object (to be used in VTK arrays).
 
virtual DomaingetDomain (void) const
 Returns a pointer to the enclosing domain. More...
 
const PreprocessorgetPreprocessor (void) const
 Returns (if possible) a pointer to the preprocessor.
 
PreprocessorgetPreprocessor (void)
 Return (if possible) a pointer to the preprocessor.
 
void set_index (const size_t &i)
 Set the index for the object (see numera in Set). More...
 
- Public Member Functions inherited from XC::TaggedObject
 TaggedObject (int tag, CommandEntity *owr=nullptr)
 Constructor. More...
 
void assignTag (int newTag)
 Set tag (to be called from Python interface).
 
int getTag (void) const
 Returns the tag associated with the object.
 
- Public Member Functions inherited from XC::MovableObject
 MovableObject (int classTag, int dbTag)
 Constructor. More...
 
 MovableObject (int classTag)
 Constructor. More...
 
 MovableObject (const MovableObject &)
 Copy constructor. Doesn't copy the dbTag.
 
MovableObjectoperator= (const MovableObject &)
 Assignment operator. Doesn't copy the dbTag.
 
int getClassTag (void) const
 Return the class identifier.
 
int getDbTag (void) const
 Return the object identifier in the database.
 
int getDbTag (CommParameters &)
 Return the object identifier in the database.
 
void setDbTag (int dbTag)
 Sets the object identifier in the database.
 
void setDbTag (CommParameters &)
 Sets the object identifier in the database if not already set. More...
 
virtual int setVariable (const std::string &variable, Information &)
 Set the value of the variable idenfified by var.
 
virtual int getVariable (const std::string &variable, Information &)
 Return the value of the variable idenfified by var.
 
- Public Member Functions inherited from XC::DistributedBase
 DistributedBase (void)
 Constructor.
 
virtual DbTagDatagetDbTagData (void) const
 Returns a vector to store class dbTags.
 
const int & getDbTagDataPos (const int &i) const
 Returns the data at the i-th position.
 
void setDbTagDataPos (const int &i, const int &v)
 Sets the data at the i-th position.
 
void inicComm (const int &dataSize) const
 Initializes communication.
 

Protected Member Functions

int sendData (CommParameters &)
 Send members through the channel being passed as parameter.
 
int recvData (const CommParameters &)
 Receives members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::BeamColumnWithSectionFDTrf2d
int sendData (CommParameters &cp)
 Send members through the channel being passed as parameter.
 
int recvData (const CommParameters &cp)
 Receives members through the channel being passed as parameter.
 
void set_transf (const CrdTransf *trf)
 Asigna la coordinate transformation.
 
- Protected Member Functions inherited from XC::BeamColumnWithSectionFD
int sendData (CommParameters &cp)
 Send members through the channel being passed as parameter.
 
int recvData (const CommParameters &cp)
 Receives members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::Element1D
ElemPtrArray3d put_on_mesh (const NodePtrArray3d &, meshing_dir dm) const
 Places the element on the mesh.
 
ElemPtrArray3d cose (const SetEstruct &f1, const SetEstruct &f2) const
 
int sendCoordTransf (int posFlag, const int &, const int &, CommParameters &)
 Envía la coordinate transformation through the channel being passed as parameter.
 
CrdTransfrecvCoordTransf (int posFlag, const int &, const int &, const CommParameters &)
 Recibe la coordinate transformation through the channel being passed as parameter.
 
CrdTransf2drecvCoordTransf2d (int posFlag, const int &, const int &, const CommParameters &)
 Recibe una coordinate transformation 2d through the channel being passed as parameter.
 
CrdTransf3drecvCoordTransf3d (int posFlag, const int &, const int &, const CommParameters &)
 Recibe una coordinate transformation 3d through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::ElementBase< 2 >
TIPOMAT * cast_material (const Material *ptr_mat)
 Casts the material pointer to a suitable type.
 
int sendData (CommParameters &cp)
 Send members through the channel being passed as parameter.
 
int recvData (const CommParameters &cp)
 Receives members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::Element
const VectorgetRayleighDampingForces (void) const
 Returns element Rayleigh damping forces.
 
int sendData (CommParameters &cp)
 Sends object members through the channel being passed as parameter.
 
int recvData (const CommParameters &cp)
 Receives object members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::MeshComponent
void setup_matrices (std::deque< Matrix > &, const int &) const
 Initializes the matrix container.
 
int sendIdsEtiquetas (int posDbTag, CommParameters &)
 Send labelsthrough the channel being passed as parameter.
 
int recvIdsEtiquetas (int posDbTag, const CommParameters &)
 Receive labels through the channel being passed as parameter.
 
int sendData (CommParameters &)
 Send members through the channel being passed as parameter.
 
int recvData (const CommParameters &)
 Receives members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::ContinuaReprComponent
int sendData (CommParameters &)
 Send members through the channel being passed as parameter.
 
int recvData (const CommParameters &)
 Receives members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::DomainComponent
 DomainComponent (int tag, int classTag)
 Constructor. More...
 
int sendData (CommParameters &)
 Send object members through the channel being passed as parameter.
 
int recvData (const CommParameters &)
 Receive object members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::TaggedObject
void setTag (int newTag)
 Set tag. More...
 

Additional Inherited Members

- Public Types inherited from XC::Element
typedef std::vector< const Node * > NodesEdge
 Nodes on an element edge. More...
 
- Static Public Member Functions inherited from XC::ElementBase< 2 >
static const int numNodes (void)
 Returns the element number of nodes.
 
- Static Public Member Functions inherited from XC::Element
static void setDeadSRF (const double &d)
 Assigns Stress Reduction Factor for element deactivation.
 
static DefaultTaggetDefaultTag (void)
 Returns next element's tag value by default.
 
- Static Public Attributes inherited from XC::Element
static double dead_srf = 1e-6
 Stress reduction factor for foozen elements.
 
- Protected Attributes inherited from XC::BeamColumnWithSectionFDTrf2d
CrdTransf2dtheCoordTransf
 
- Protected Attributes inherited from XC::BeamColumnWithSectionFD
PrismaticBarCrossSectionsVector theSections
 pointers to the PrismaticBarCrossSection objects
 
SectionMatrices section_matrices
 
- Protected Attributes inherited from XC::Element1D
std::vector< double > tributaryLengths
 
- Protected Attributes inherited from XC::ElementBase< 2 >
NodePtrsWithIDs theNodes
 pointers to node.
 
- Protected Attributes inherited from XC::Element
Vector load
 vector for applying loads
 
RayleighDampingFactors rayFactors
 Rayleigh damping factors.
 
Matrix Kc
 pointer to hold last committed matrix if needed for rayleigh damping
 
- Protected Attributes inherited from XC::MeshComponent
int index
 Index for VTK arrays.
 
LabelContainer labels
 Label container.
 

Detailed Description

2D beam with hinges in both ends.

BeamWithHinges2D is a beam-column element which uses the force based formulation for its state determination. This element has material non-linear hinges at both ends and exhibits linear elastic behavior through its interior region, including linear elastic shear effects.

Constructor & Destructor Documentation

§ BeamWithHinges2d() [1/3]

XC::BeamWithHinges2d::BeamWithHinges2d ( int  tag,
int  nodeI,
int  nodeJ,
double  e,
double  a,
double  i,
PrismaticBarCrossSection sectionRefI,
double  lpi,
PrismaticBarCrossSection sectionRefJ,
double  lpj,
CrdTransf2d coordTransf,
double  r = 0.0,
int  max = 1,
double  tol = 1.0e-16 
)

Constructor.

Parameters
tagelement identifier.
nodeIidentifier of the back end node.
nodeJidentifier of the front end node.
Emodulus of elasticity of the interior beam region.
Across-section area of the interior beam region.
Isecond moment area of the interior beam region.
sectionRefIsection material for the back end hinge.
lpilength ratio of the back end hinge.
sectionRefJsection material for the front end hinge.
lpjlength ratio of the front end hinge.

§ BeamWithHinges2d() [2/3]

XC::BeamWithHinges2d::BeamWithHinges2d ( int  tag = 0)

Default Constructor.

Parameters
tagelement identifier.

§ BeamWithHinges2d() [3/3]

XC::BeamWithHinges2d::BeamWithHinges2d ( int  tag,
const Material mat,
const CrdTransf coordTransf 
)

Constructor.

Parameters
tagelement identifier.

Member Function Documentation

§ commitState()

int XC::BeamWithHinges2d::commitState ( void  )
virtual

Invokes commitState() on each section and returns the sum of the result of these invocations.

Reimplemented from XC::BeamColumnWithSectionFD.

§ getMass()

const XC::Matrix & XC::BeamWithHinges2d::getMass ( void  ) const
virtual

Return the element lumped mass matrix.

Returns the element lumped mass matrix, \(mele\). It is assumed that the mass density per unit length, \(\rho\), is constant along the entire element, including the hinge regions.

{equation} {eq:mele} mele = [ {array}{c c c c c c} { L}{2} & 0 & 0 & 0 & 0 & 0 0 & { L}{2} & 0 & 0 & 0 & 0 0 & 0 & 0 & 0 & 0 & 0 0 & 0 & 0 & { L}{2} & 0 & 0 0 & 0 & 0 & 0 & { L}{2} & 0 0 & 0 & 0 & 0 & 0 & 0 {array} ] {equation}

Reimplemented from XC::Element.

§ getResistingForce()

const XC::Vector & XC::BeamWithHinges2d::getResistingForce ( void  ) const
virtual

Returns the element resisting force vector.

Returns the element resisting force vector. The basic element force vector is obtained as the product of the basic element stiffness, \(kbas\), given by Equation eq:kele}, and the basic element deformations, \(vbas\).

{equation} = kbas vbas {equation}

The basic element force vector is then transformed from the corotating frame to the global frame of reference. The transformed force vector is then assembled into the structural system of equations.

{equation} {eq:qele} qele = {A}^T {equation}

Implements XC::Element.

§ getResistingForceIncInertia()

const XC::Vector & XC::BeamWithHinges2d::getResistingForceIncInertia ( void  ) const
virtual

Returns the element resisting force vector.

Returns the element resisting force vector, \(\tilde{qele}\) with inertia forces included,

{equation} {qele} = qele - mele { u} {equation}

where \(qele\) and \(mele\) are obtained from Equations eq:qele} and eq:mele}, respectively, and \(\ddot{\mathbf u}\) is the vector of trial nodal accelerations for the element.

Reimplemented from XC::Element.

§ getResponse()

int XC::BeamWithHinges2d::getResponse ( int  responseID,
Information eleInfo 
)
virtual

Obtain information from an analysis.

getResponse is a method invoked to obtain information from an analysis. The method is invoked with the integer argument returned and the Information object that was prepared in a successfull {setResponse()} method invocation. To return \(0\) if successfull, a negative number if not. The base class implementation will always return \(-1\).

Reimplemented from XC::Element.

§ getTangentStiff()

const XC::Matrix & XC::BeamWithHinges2d::getTangentStiff ( void  ) const
virtual

Computes the element flexibility matrix, then returns its inverse.

Computes the element flexibility matrix, then returns its inverse, the element stiffness matrix. The element flexibility is the sum of the hinge flexibilities, \(\mathbf{f}_I\) and \(\mathbf{f}_J\), and the elastic flexibility of the beam interior, \(\mathbf{f}_{mid}\).

{equation} {eq:fele} := {0}^{L}{bint^T fsec bint \: dx} = {f}_I + {f}_{mid} + {f}_J {equation}

The flexibility of the beam interior is obtained in closed form,

{equation} {f}_{mid} = {l_I}^{L-l_J}{bint^T fsec_{mid} bint \: dx} {equation}

where \(bint\) is the force interpolation matrix,

{equation} bint := [ {array}{c c c} 1 & 0 & 0 0 & {x}{L} & {x}{L} - 1 0 & {1}{L} & {1}{L} {array} ] {equation}

//! and \(fsec\) is the elastic section flexibility of the beam interior.

{equation} fsec_{mid} = [ {array}{c c c} {1}{EA} & 0 & 0 0 & {1}{EI} & 0 0 & 0 & {1}{ GA} {array} ] {equation}

The hinge flexibilities, \(\mathbf{f}_I\) and \(\mathbf{f}_J\), are obtained by the midpoint integration rule,

{equation} {{f}}_i = bint(x_i)^T fsec_i bint(x_i) * l_i, \:\: i=I,J {equation}

where \(x_i\) is the midpoint of hinge \(i\), measured along the length of the beam, and is the point at which the force interpolation matrix, \(bint\) is evaluated. The flexiblity, \(fsec_i\), is obtained from the constitutive relation for section \(i\).

The element stiffness is then obtained by inversion of the element flexibility, given by Equation eq:fele}.

{equation} {eq:kele} kbas = ^{-1} {equation}

The element then obtains the matrix, \(\mathbf{A}\), which transforms the element basic stiffness from its corotating frame to the global frame of reference. The transformed stiffness matrix, \(kele\), is then assembled into the structural system of equations.

{equation} kele = {A}^T kbas {A} {equation}

Implements XC::Element.

§ revertToLastCommit()

int XC::BeamWithHinges2d::revertToLastCommit ( void  )
virtual

Invokes revertToLastCommit() on each section and returns the sum of the result of these invocations.

Reimplemented from XC::BeamColumnWithSectionFD.

§ revertToStart()

int XC::BeamWithHinges2d::revertToStart ( void  )
virtual

Invokes revertToStart() on each section and returns the sum of the result of these invocations.

Reimplemented from XC::BeamColumnWithSectionFD.

§ setResponse()

XC::Response * XC::BeamWithHinges2d::setResponse ( const std::vector< std::string > &  argv,
Information eleInfo 
)
virtual

setResponse() is a method invoked to determine if the element will respond to a request for a certain of information.

The information requested of the element is passed in the array of char pointers argv of length {em argc}. If the element does not respond to the request a \(-1\) is returned. If it does respond, an integer value greater than or equal to \(0\) is returned. This is the responseID passed in the getResponse() method. In addition the Element object is responsible for setting the Information object eleInformation with the type of the return, i.e. {IntType, DoubleType, MatrixType, VectorType, IDType}, and for creating a Matrix, Vector or ID object for the Information object, if the information to be returned is of any of these types. The information object is responsible for invoking the destructor on these objects. The base class responds to no requests and will always return \(-1\).

Reimplemented from XC::Element.

§ update()

int XC::BeamWithHinges2d::update ( void  )
virtual

Updates the element state.

This method is invoked after the response quantities have been updated in the Domain, but not necessarily committed, e.g. during a non-linear Newton-Raphson solution algorithm. To return \(0\) if successful, a negative number if not. This base class implementation returns 0.

Reimplemented from XC::Element.


The documentation for this class was generated from the following files: