XC Open source finite element analysis program
Public Member Functions | Protected Member Functions | Friends | List of all members

Fiber section model in a three-dimensional space. Sections stiffness and internal forces are obtained by addition of the fibers contribution. More...

#include <FiberSection3d.h>

Inheritance diagram for XC::FiberSection3d:
XC::FiberSection3dBase XC::FiberSectionBase XC::SeccionBarraPrismatica XC::SectionForceDeformation XC::Material XC::TaggedObject XC::MovableObject XC::DistributedBase XC::FiberSectionShear3d

Public Member Functions

 FiberSection3d (MaterialLoader *mat_ldr=nullptr)
 Constructor for blank object that recvSelf needs to be invoked upon.
 
 FiberSection3d (int tag, MaterialLoader *mat_ldr=nullptr)
 Constructor.
 
 FiberSection3d (int tag, const contenedor_fibras &fibers, MaterialLoader *mat_ldr=nullptr)
 Constructor.
 
virtual void setupFibers (void)
 
FiberaddFiber (Fiber &theFiber)
 Adds a fiber to the section.
 
int setInitialSectionDeformation (const Vector &deforms)
 Sets values for initial generalized strains.
 
int setTrialSectionDeformation (const Vector &deforms)
 Establece los valores de las trial strains.
 
const MatrixgetInitialTangent (void) const
 Return the tangent stiffness matrix inicial.
 
int revertToLastCommit (void)
 Returns to the last commited state.
 
int revertToStart (void)
 Returns to the initial state.
 
SectionForceDeformationgetCopy (void) const
 Virtual constructor.
 
const ResponseIdgetType (void) const
 Returns the tipo.
 
int getOrder (void) const
 
int sendSelf (CommParameters &)
 
int recvSelf (const CommParameters &)
 
void Print (std::ostream &s, int flag=0)
 Imprime el objeto.
 
- Public Member Functions inherited from XC::FiberSection3dBase
 FiberSection3dBase (int classTag, int dim, MaterialLoader *mat_ldr=nullptr)
 constructor for blank object that recvSelf needs to be invoked upon
 
 FiberSection3dBase (int tag, int classTag, int dim, MaterialLoader *mat_ldr=nullptr)
 Constructor.
 
 FiberSection3dBase (int tag, int classTag, int dim, const contenedor_fibras &fibers, MaterialLoader *mat_ldr=nullptr)
 Constructor.
 
 FiberSection3dBase (const FiberSection3dBase &otro)
 Copy constructor.
 
FiberSection3dBaseoperator= (const FiberSection3dBase &otro)
 Assignment operator.
 
FiberaddFiber (int tag, const MaterialLoader &, const std::string &nmbMat, const double &, const Vector &position)
 Adds a fiber to the section.
 
virtual double getStrain (const double &y, const double &z) const
 Returns strain at position being passed as parameter.
 
int setParameter (const std::vector< std::string > &argv, Parameter &param)
 
int updateParameter (int parameterID, Information &info)
 
virtual double getCdgZ (void) const
 Returns the coordenada «z» del centro de gravedad of the cross-section.
 
- Public Member Functions inherited from XC::FiberSectionBase
 FiberSectionBase (int classTag, int dim, MaterialLoader *mat_ldr=nullptr)
 
 FiberSectionBase (int tag, int classTag, int dim, MaterialLoader *mat_ldr=nullptr)
 Constructor.
 
 FiberSectionBase (int tag, int classTag, int numFibers, int dim, MaterialLoader *mat_ldr=nullptr)
 Constructor.
 
 FiberSectionBase (const FiberSectionBase &otro)
 Copy constructor.
 
FiberSectionBaseoperator= (const FiberSectionBase &otro)
 Assignment operator.
 
 ~FiberSectionBase (void)
 Destructor:
 
size_t getNumFibers (void) const
 
StoFibrasgetFibers (void)
 
FiberaddFiber (const std::string &nmbMat, const double &area, const Vector &coo)
 Add a fiber to the section.
 
int setInitialSectionDeformation (const Vector &deforms)
 Sets generalized initial strains values.
 
int setTrialSectionDeformation (const Vector &deforms)
 Sets generalized trial strains values.
 
void zeroInitialSectionDeformation (void)
 
const VectorgetInitialSectionDeformation (void) const
 
const VectorgetSectionDeformation (void) const
 Returns material's trial generalized strain.
 
FiberSectionReprgetFiberSectionRepr (void)
 Returns fiber section representation.
 
GeomSectiongetGeomSection (void)
 Returns a pointer to section geometry.
 
const GeomSectiongetGeomSection (void) const
 Returns a const pointer to section geometry.
 
Poligono2d getRegionsContour (void) const
 Returns cross section contour.
 
double getCantoMecanicoZonaComprimida (const Recta2d &) const
 Returns section depth from the line being passed as parameter to the most compressed fiber.
 
double getCantoMecanicoZonaComprimida (void) const
 Returns section depth from the neutral axis to the most compressed fiber.
 
double getCantoMecanicoZonaTraccionada (const Recta2d &) const
 Returns section depth from the line being passed as parameter to the most tensioned fiber.
 
double getCantoMecanicoZonaTraccionada (void) const
 Returns section depth from the neutral axis to the most tensioned fiber.
 
double getCantoMecanico (void) const
 Returns current section lever arm from the position of neutral axis.
 
double getNeutralAxisDepth (void) const
 Returns neutral axis depth.
 
double getDistFibraNeutra (const double &y, const double &z) const
 Returns the distance from the neutral axis to the point whose coordinates are being passed as parameters.
 
Vector getVectorBrazoMecanico (void) const
 Returns a vector from the centroid of tensions to the centroid of compressions.
 
Vector getVectorCantoUtil (void) const
 Returns a vector oriented from the centroid of the area in tension to the most compressed fiber.
 
Segmento2d getSegmentoBrazoMecanico (void) const
 Returns a segment from the centroid of the tensioned area to the centroid of the compressed area.
 
Segmento2d getSegmentoCantoUtil (void) const
 Returns the segment defined by the current effective depth of the section. The segment is oriented from the centroid of the tensioned fibers to the most compressed fiber.
 
double getBrazoMecanico (void) const
 Returns the lever arm of the section.
 
double getCantoUtil (void) const
 Returns the effective depth of the section.
 
Recta2d getTrazaPlanoFlexion (void) const
 Returns the intercept of the bending plane with the plane that contains the cross section.
 
Recta2d getTrazaPlanoTraccion (void) const
 Returns the intercept of a plane perpendicular to the bending plane through the centroid of the tensioned fibers with the plane that contains the cross section.
 
Recta2d getTrazaPlanoCompresion (void) const
 Returns the intercept of a plane perpendicular to the bending plane through the centroid of the compressed fibers with the plane that contains the cross section.
 
double getAnchoMecanico (void) const
 Returns the width of the section for shear checking see (figure 44.2.1.a in article 44 of EHE-08).
 
double getAnchoBielaComprimida (void) const
 Returns the ancho de la biela comprimida (en cortante).
 
double getRecubrimiento (const Pos2d &) const
 Returns the concrete cover for the position being passed as parameter.
 
Recta2d getRectaLimiteAcEficaz (const double &) const
 Returns the line that limits the concrete efficient area $A_{c,ef}$ as in article 49.2.4 from EHE-08 (hatched area in figure 49.2.4b). See also figures 47.5 y 47.6 from volume II of the book: "Proyecto y cálculo de estructuras de hormigón" author: J. Calavera.
 
double getAcEficazBruta (const double &) const
 
double getAcEficazNeta (const double &, const std::string &, const double &factor=15) const
 Returns the sum of the efficient areas of rebars in tension.
 
double calcAcEficazFibras (const double &hEfMax, const std::string &, const double &factor=15) const
 Computes crack effcient areas around the fibers.
 
std::list< Poligono2d > getContourAcEficazBruta (const double &) const
 Returns the contours of the concrete efficient area $A_{c,ef}$ as in article 49.2.4 from EHE-08 (hatched area in figure 49.2.4b). See also figures 47.5 y 47.6 from volume II of the book: "Proyecto y cálculo de estructuras de hormigón" author: J. Calavera.
 
void calcRecubrimientos (const std::string &) const
 Computes concrete cover of the fibers.
 
void calcSeparaciones (const std::string &) const
 Computes spacing of the fibers.
 
int updateCDG (void)
 
double getHomogenizedI (const double &E0) const
 Moment of inertia relative to bending axis.
 
double getSPosHomogeneizada (const double &E0) const
 Static moment relative to bending axis of area that rests over this axis.
 
const VectorgetStressResultant (void) const
 Returns the resultant of section stresses.
 
double getStressResultant (const int &) const
 Returns i-th component of the stress resultant.
 
const MatrixgetSectionTangent (void) const
 Returns the tangent stiffness matrix.
 
int commitState (void)
 Commits state.
 
int revertToLastCommit (void)
 Returns to the last commited state.
 
int revertToStart (void)
 Returns to the initial state.
 
std::string getStrClaseEsfuerzo (const double &tol=1e-4) const
 
FiberSetsgetFiberSets (void)
 
fiber_set_iterator sel_mat_tag (const std::string &nmb_set, const int &matTag)
 Creates a fiber set which material has the tag being passed as parameter.
 
fiber_set_iterator resel_mat_tag (const std::string &nmb_set, const std::string &nmb_set_org, const int &matTag)
 Creates a fiber set with those that belongs to the set with the name nmb_set_org, and have the material indetified with the tag being passed as parameter. More...
 
virtual double getCdgY (void) const
 Returns the coordenada «y» del centro de gravedad of the cross-section.
 
double getArea (void) const
 Returns the section area.
 
InteractionDiagram GetInteractionDiagram (const InteractionDiagramData &)
 Returns the interaction diagram.
 
InteractionDiagram2d GetInteractionDiagramForPlane (const InteractionDiagramData &, const double &)
 Returns the interaction diagram.
 
InteractionDiagram2d GetNMyInteractionDiagram (const InteractionDiagramData &)
 Returns the interaction diagram on plane N-My.
 
InteractionDiagram2d GetNMzInteractionDiagram (const InteractionDiagramData &)
 Returns the interaction diagram on plane N-Mz.
 
- Public Member Functions inherited from XC::SeccionBarraPrismatica
 SeccionBarraPrismatica (int tag, int classTag, MaterialLoader *mat_ldr=nullptr)
 Constructor.
 
 SeccionBarraPrismatica (const SeccionBarraPrismatica &otro)
 Copy constructor.
 
SeccionBarraPrismaticaoperator= (const SeccionBarraPrismatica &otro)
 Assignment operator.
 
int setTrialDeformationPlane (const DeformationPlane &)
 Sets the deformation plane of the section.
 
int setInitialDeformationPlane (const DeformationPlane &)
 Sets the plano de initial strains of the section.
 
virtual const VectorgetGeneralizedStrainVector (const DeformationPlane &) const
 Returns the generalized strains vector que corresponde al deformation plane being passed as parameter.
 
DeformationPlane getDeformationPlane (void) const
 Returns the generalized strains vector of the cross-section.
 
DeformationPlane getInitialDeformationPlane (void) const
 Returns initial strain plane.
 
double getN (void) const
 Returns internal axial force.
 
double getMy (void) const
 Returns internal bending moment around y axis.
 
double getMz (void) const
 Returns internal bending moment around z axis.
 
Pos2d getCdg (void) const
 Returns the position of the cross-section centroid.
 
Recta2d getFibraNeutra (void) const
 Returns the neutral axis.
 
Recta2d getEjeEsfuerzos (void) const
 Returns the axis that is aligned with the cross-section internal forces.
 
Pos2d getPuntoSemiplanoTracciones (void) const
 Returns (if possible) a point in the tensioned region.
 
Pos2d getPuntoSemiplanoCompresiones (void) const
 Returns (if possible) a point in the compressed region.
 
Semiplano2d getSemiplanoTracciones (void) const
 Returns the tensioned half-plane.
 
Semiplano2d getSemiplanoTracciones (const Recta2d &) const
 Returns the tensioned half-plane defined by the edge being passed as parameter.
 
Semiplano2d getSemiplanoCompresiones (void) const
 Returns the compressed half-plane.
 
Semiplano2d getSemiplanoCompresiones (const Recta2d &) const
 Returns the compressed half-plane defined by the edge being passed as parameter.
 
const double & EA (void) const
 Returns the section axial stiffness.
 
const double & EIz (void) const
 Returns the bending stiffness of the cross-section en torno al eje z.
 
const double & EIy (void) const
 Returns the bending stiffness of the cross-section en torno al eje y.
 
const double & EIyz (void) const
 Returns the producto de inercia multiplicado por el Young's modulus.
 
double getTheta (void) const
 Returns the ángulo que define un eje principal de inercia.
 
double getEI1 (void) const
 Returns the bending stiffness en torno al eje de inercia principal mayor.
 
double getEI2 (void) const
 Returns the bending stiffness en torno al eje de inercia principal menor.
 
PrincipalAxesOfInertia2D getEjesInercia (void) const
 Returns the ejes principales de inercia of the cross-section.
 
Vector2d getVDirEje1 (void) const
 Returns the vector del eje principal I.
 
Vector2d getVDirStrongAxis (void) const
 Returns the vector del eje principal I.
 
Vector2d getVDirEje2 (void) const
 Returns the vector del eje principal II.
 
Vector2d getVDirWeakAxis (void) const
 Returns the vector del eje principal II.
 
bool hayAxil (const double &tol=1e-4) const
 Returns true if the section is subjected to an axial force.
 
bool hayCortante (const double &tol=1e-4) const
 Returns true if the section is subjected to a shearing force.
 
bool hayMomento (const double &tol=1e-4) const
 Returns true if the section is subjected to a bending moment.
 
bool hayTorsor (const double &tol=1e-4) const
 Returns true if the section is subjected to a torsional force.
 
- Public Member Functions inherited from XC::SectionForceDeformation
 SectionForceDeformation (int tag, int classTag, MaterialLoader *mat_ldr=nullptr)
 Constructor.
 
 SectionForceDeformation (const SectionForceDeformation &otro)
 Copy constructor.
 
SectionForceDeformationoperator= (const SectionForceDeformation &otro)
 Assignment operator.
 
MaterialLoadergetMaterialLoader (void)
 
virtual int addInitialSectionDeformation (const Vector &)
 Adds to the generalized strains vector inicial el being passed as parameter.
 
void setInitialGeneralizedStrain (const Vector &iS)
 
const VectorgetInitialGeneralizedStrain (void) const
 
double getSectionDeformation (const int &) const
 Returns 'defID' component of the generalized strain vector.
 
double getSectionDeformationByName (const std::string &) const
 Returns section's trial deformation component by its name.
 
double getStressResultant (const int &) const
 Returns 'defID' component of the generalized stress vector.
 
double getStressResultantByName (const std::string &) const
 Returns the esfuerzos de la placa.
 
virtual const MatrixgetSectionFlexibility (void) const
 Returns the tangent flexibility matrix of the section.
 
virtual const MatrixgetInitialFlexibility (void) const
 Returns the initial flexibility matrix of the section.
 
const VectorgetGeneralizedStress (void) const
 
virtual const VectorgetGeneralizedStrain (void) const
 
virtual double getRho (void) const
 Returns the densidad (masa por unidad de longitud/area/volumen) of the section.
 
std::string getTypeString (void) const
 Comma separated internal forces names to with the section contributes with stiffness.
 
virtual ResponsesetResponse (const std::vector< std::string > &argv, Information &info)
 Returns the respuesta of the section.
 
virtual int getResponse (int responseID, Information &info)
 Returns section response.
 
virtual int activateParameter (int parameterID)
 
virtual const VectorgetStressResultantSensitivity (int gradNumber, bool conditional)
 
virtual const VectorgetSectionDeformationSensitivity (int gradNumber)
 
virtual const MatrixgetSectionTangentSensitivity (int gradNumber)
 
virtual double getRhoSensitivity (int gradNumber)
 
virtual int commitSensitivity (const Vector &sectionDeformationGradient, int gradNumber, int numGrads)
 
- Public Member Functions inherited from XC::Material
 Material (int tag, int classTag)
 Constructor.
 
const MaterialLoaderGetMaterialLoader (void) const
 Returns (if possible) a pointer to the material handler (owner).
 
MaterialLoaderGetMaterialLoader (void)
 Returs a pointer to the material handler (if possible).
 
std::string getName (void) const
 Returns the name of the material.
 
virtual int setVariable (const std::string &argv)
 
virtual int getVariable (int variableID, double &info)
 
virtual void update (void)
 Update state variables for the material according to the new values of the parameters.
 
virtual void addInitialGeneralizedStrain (const Vector &)
 Increments generalized strain. More...
 
virtual void zeroInitialGeneralizedStrain (void)
 zeroes initial generalized strain
 
- Public Member Functions inherited from XC::TaggedObject
 TaggedObject (int tag, EntCmd *owr=nullptr)
 Constructor.
 
void assignTag (int newTag)
 Establece el valor del tag.
 
int getTag (void) const
 
- Public Member Functions inherited from XC::MovableObject
 MovableObject (int classTag, int dbTag)
 Constructor.
 
 MovableObject (int classTag)
 Constructor.
 
 MovableObject (const MovableObject &otro)
 Copy constructor.
 
MovableObjectoperator= (const MovableObject &otro)
 Operacdor asignación.
 
int getClassTag (void) const
 Returns the tag de la clase.
 
int getDbTag (void) const
 Returns the tag para la database.
 
int getDbTag (CommParameters &)
 Returns the tag para la database.
 
void setDbTag (int dbTag)
 Asigna el tag para la database.
 
void setDbTag (CommParameters &)
 Asigna, sólo si es preciso, el tag para la database.
 
virtual int setVariable (const std::string &variable, Information &)
 Returns the identificador de la variable cuyo nombre being passed as parameter.
 
virtual int getVariable (const std::string &variable, Information &)
 
- 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

 FiberSection3d (int tag, int classTag, MaterialLoader *mat_ldr=nullptr)
 Constructor (se usa en FiberSectionShear3d).
 
- Protected Member Functions inherited from XC::FiberSection3dBase
double get_strain (const double &y, const double &z) const
 
- Protected Member Functions inherited from XC::FiberSectionBase
void setup_repres (void)
 Section representation. More...
 
void alloc_fibers (int numFibras, const Fiber *muestra=nullptr)
 
void create_fiber_set (const std::string &nombre)
 Creare a new fiber set.
 
fiber_set_iterator get_fiber_set (const std::string &nmb_set)
 Creates a fiber set which name is being passed as parameter.
 
virtual double get_dist_to_neutral_axis (const double &, const double &) const
 Returns the signed distance from the neutral axis to the point whose coordinates are being passed as parameters.
 
Pos3d Esf2Pos3d (void) const
 Returns the point (N,My,Mz) that corresponds to the resultant of normal stresses in the section.
 
Pos3d getNMyMz (const DeformationPlane &)
 Returns the section normal stresses resultant for the deformation plane being passed as parameter.
 
void getInteractionDiagramPointsForTheta (NMyMzPointCloud &lista_esfuerzos, const InteractionDiagramData &, const DqFibras &, const DqFibras &, const double &)
 Returns the points that define the interaction diagram of the section for an angle $$ with respect to the z axis.
 
const NMyMzPointCloudgetInteractionDiagramPoints (const InteractionDiagramData &)
 Returns the points that define the interaction diagram of the section.
 
const NMPointCloudgetInteractionDiagramPointsForPlane (const InteractionDiagramData &, const double &)
 Returns the points that define the interaction diagram on the plane defined by the $$ angle being passed as parameter.
 
- Protected Member Functions inherited from XC::SectionForceDeformation
int sendData (CommParameters &cp)
 Send object members through the channel defined in cp.
 
int recvData (const CommParameters &cp)
 Receives object members through the channel defined in cp.
 
- Protected Member Functions inherited from XC::TaggedObject
void setTag (int newTag)
 Establece el valor del tag.
 

Friends

class StoFibras
 

Additional Inherited Members

- Public Types inherited from XC::FiberSectionBase
typedef FiberSets::iterator fiber_set_iterator
 
typedef FiberSets::const_iterator fiber_set_const_iterator
 
- Protected Attributes inherited from XC::FiberSectionBase
KRSeccion kr
 Stiffness and internal forces resultant on the section.
 
StoFibras fibras
 Pointers to fibers container.
 
int tag_fibra
 Tag for next fiber.
 
FiberSets sets_fibras
 Fibers sets.
 
FiberSectionReprsection_repres
 
- Protected Attributes inherited from XC::SectionForceDeformation
MatrixfDefault
 Default flexibility matrix.
 
MaterialLoadermaterial_loader
 Material definition handler (search,...).
 

Detailed Description

Fiber section model in a three-dimensional space. Sections stiffness and internal forces are obtained by addition of the fibers contribution.


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