xc
|
Fiber double ended queue. More...
#include <FiberSet.h>
Public Member Functions | |
FiberSet (const size_t &num=0) | |
Constructor. | |
FiberSet (const FiberSet &) | |
Copy constructor. | |
FiberSet & | operator= (const FiberSet &) |
Assignment operator. | |
FiberSet & | operator+= (const FiberSet &) |
+= (union) operator. | |
void | extend (const FiberSet &) |
Extend this container with the pointers from the container being passed as parameter. More... | |
![]() | |
void | push_back (Fiber *f) |
Adds the fiber to the container. | |
size_t | getNumFibers (void) const |
const Fiber * | findFiber (const int &tag) const |
Search for the fiber identified by the parameter. | |
Fiber * | findFiber (const int &tag) |
Search for the fiber identified by the parameter. | |
bool | in (const Fiber *ptr) const |
Returns true if the pointer is in the container. | |
const_reference | operator[] (const size_t &i) const |
const double & | getCenterOfMassY (void) const |
const double & | getCenterOfMassZ (void) const |
Pos2d | getCenterOfMass (void) const |
Return the position of the centroid. | |
double | getRelativeY (const double &y) const |
double | getRelativeZ (const double &z) const |
GeomObj::list_Pos2d | getPositions (void) const |
Returns fibers positions. | |
bool | isSubjectedToBending (const double &tol=1e-4) const |
Returns true if the section is subject to a under bending moment. | |
double | getResultant (void) const |
Return the resultant of stresses. | |
double | getMz (const double &y0=0.0) const |
Return the moment of the fibers forces with respect to the axis parallel to "z" that passes through (y0,0). More... | |
double | getMy (const double &z0=0.0) const |
Return the moment of the fibers forces with respect to the axis parallel to "y" that passes through (0,z0). More... | |
double | getExcentricidadMz (const double &y0=0.0) const |
Return the eccentricity of Mz (see getMz). | |
double | getExcentricidadMy (const double &z0=0.0) const |
Return the eccentricity of My (see getMy). | |
Vector2d | getMomentVector (const double &y0=0.0, const double &z0=0.0) const |
Return the moment vector of the fibers forces with respect to the axis parallel to "y" and z that passes through (y0,z0). More... | |
Pos2d | getResultantPosition (const double &y0=0.0, const double &z0=0.0) const |
Return the position of the fibers forces resultant. | |
Line2d | getNeutralAxis (void) const |
Return an approximation of the neutral axis. | |
double | getCompressionResultant (void) const |
Return the resultant of the compresiones in the fibers. | |
double | getCompressedFibersMz (const double &y0=0.0) const |
Return the moment of the compressed fibers with respect to the z axis. More... | |
double | getCompressedFibersMy (const double &z0=0.0) const |
Return the moment of the compressed fibers with respect to the y axis. More... | |
const Vector & | getCompressedFibersCentroid (void) const |
Return the passing point of the stress resultant for stresses that are lower than «ref» (zero by default; compressions), if there are not such stresses it returns (0,0). More... | |
const Vector & | getCentroidFibersWithStrainSmallerThan (const double &epsRef) const |
Return the centroid of the fibers whose strain is less than the value passed as parameter. More... | |
double | getTensionResultant (void) const |
Return the resultant of the tensions in the fibers. | |
double | getTensionedFibersMz (const double &y0=0.0) const |
Return the moment of the tensioned fibers with respect to the z axis. More... | |
double | getTensionedFibersMy (const double &z0=0.0) const |
Return the moment of the tensioned fibers with respect to the y axis. More... | |
const Vector & | getTensionedFibersCentroid (void) const |
Return the centroid of the tensioned fibers, if there is no tensioned fibers returns (0,0). More... | |
const Vector & | getCentroidFibersWithStrainGreaterThan (const double &epsRef) const |
Return the centroid of the fibers whose strain is greater than the value being passed as parameter. More... | |
int | commitState (void) |
double | getStrainMin (void) const |
Return the min strain. | |
double | getStrainMax (void) const |
Return the max strain. | |
double | getStrainMed (void) const |
Return the average strain. | |
double | getStressMin (void) const |
Return the minimal stress. | |
double | getStressMax (void) const |
Return the minimal stress. | |
double | getStressMed (void) const |
Return the average stress. | |
DeformationPlane | getDeformationPlane (void) const |
Return the deformation plane (least squares adjustment). | |
const Vector & | getDeformation (void) const |
Return the generalized strain vector. | |
ClaseEsfuerzo | getClaseEsfuerzo (const double &tol=1e-4) const |
bool | isTensioned (void) const |
Returns true if all the fibers are tensioned. | |
bool | isBent (void) const |
Returns true if some fibers are tensioned and other are compressed (bending with or without axial force). | |
bool | isCompressed (void) const |
Returns true if all the fibers are compressed. | |
std::string | getStrClaseEsfuerzo (const double &tol=1e-4) const |
Return a string identifying the internal stress state. | |
double | getNeutralAxisDepth (const FiberSectionBase &) const |
Returns neutral axisr depth, i. More... | |
Vector | getLeverArmVector (void) const |
Returns a vector oriented from the tension centroid. | |
Segment2d | getLeverArmSegment (void) const |
Returns a segment from the tension centroid to the compression centroid. More... | |
double | getMechanicLeverArm (void) const |
Return the lever arm of forces in the section. | |
Line2d | getBendingPlaneTrace (void) const |
Return the intercept of the bending plane with the plane that contains the section. More... | |
Line2d | getTensionedPlaneTrace (void) const |
Return the intercept of a plane perpendicular to the bending plane through the tensions centroid with the plane that contains the section. More... | |
Line2d | getCompressedPlaneTrace (void) const |
Return the intercept of a plane perpendicular to the bending plane through the compressions centroid with the plane that contains the section. More... | |
double | computeFibersEffectiveConcreteArea (const std::list< Polygon2d > &, const double &factor=15) const |
Computes crack effective areas on the fibers that represent reinforcing bars (see article 49.2.4 from EHE-08 (hatched area in figure 49.2.4b). More... | |
const std::list< Polygon2d > & | getFiberEffectiveConcretAreaContour (const size_t &i) const |
Return the contours of the effective area of the fiber which index is being passed as parameter. More... | |
double | getFiberEffectiveConcreteArea (const size_t &i) const |
Return the effective area value of the fiber which index is being passed as parameter. More... | |
double | getFibersEffectiveConcreteArea (void) const |
Return the sum of fibers effective areas. | |
void | computeCovers (const GeomSection &) const |
Computes the cover of the fibers. | |
void | computeSpacement (void) const |
Computes the distance from each fiber to the nearest one. | |
const double & | getFiberCover (const size_t &i) const |
Return the value of the concrete cover for the i-th fiber. | |
const double & | getFiberSpacing (const size_t &i) const |
Return the spacing of the i-th fiber. | |
double | getEquivalentDiameterOfFiber (const size_t &i) const |
Return the diameter of the circle that has the same area of the fiber which index is being passed as parameter. More... | |
double | getSigmaSRAtFiber (const size_t &, const double &, const double &, const double &) const |
Return the stress on the i-th fiber when cracking occurs in its effective area. More... | |
double | getAverageDistanceBetweenFibers (void) const |
Return the average distance between fibers. | |
int | updateCenterOfMass (void) |
Updates the centroid position. | |
int | updateKRCenterOfMass (FiberSection2d &, CrossSectionKR &) |
Update the parameters center of mass, stiffness and resultant. More... | |
int | setInitialSectionDeformation (const FiberSection2d &) |
Sets initial strains values. | |
int | setTrialSectionDeformation (const FiberSection2d &, CrossSectionKR &) |
Sets trial strains values. | |
int | revertToLastCommit (FiberSection2d &, CrossSectionKR &) |
Return the fibers to its last commited state. | |
int | revertToStart (FiberSection2d &, CrossSectionKR &) |
Return the fibers to its initial state. | |
const Matrix & | getInitialTangent (const FiberSection2d &) const |
Return the initial tangent stiffness matrix. | |
const Vector & | getStressResultantSensitivity (int gradNumber, bool conditional) |
int | commitSensitivity (const XC::Vector &defSens, int gradNumber, int numGrads) |
int | updateKRCenterOfMass (FiberSection3d &, CrossSectionKR &) |
Update the parameters center of mass, stiffness matrix and resultant. | |
int | setInitialSectionDeformation (const FiberSection3d &) |
Set the initial strains. | |
int | setTrialSectionDeformation (FiberSection3d &, CrossSectionKR &) |
Set the trial strains. | |
int | revertToLastCommit (FiberSection3d &, CrossSectionKR &) |
Returns to the last commited state. | |
int | revertToStart (FiberSection3d &, CrossSectionKR &) |
Returns to the initial state. | |
const Matrix & | getInitialTangent (const FiberSection3d &) const |
Return the tangent stiffness matrix inicial. | |
int | updateKRCenterOfMass (FiberSectionGJ &, CrossSectionKR &) |
Update the parameters center of mass, stiffness and resultant. | |
int | setInitialSectionDeformation (const FiberSectionGJ &) |
Set the initial strains. | |
int | setTrialSectionDeformation (FiberSectionGJ &, CrossSectionKR &) |
Sets generalized trial strains values. | |
int | revertToLastCommit (FiberSectionGJ &, CrossSectionKR &) |
Returns to the last commited state. | |
int | revertToStart (FiberSectionGJ &, CrossSectionKR &) |
Returns to the initial state. | |
const Matrix & | getInitialTangent (const FiberSectionGJ &) const |
Return the initial tangent stiffness matrix. | |
Response * | setResponse (const std::vector< std::string > &argv, Information §Info) |
Gets one of the response parameters of the section. | |
void | SelMatTag (const int &matTag, FiberPtrDeque &, bool clear=true) |
Return the subfiber set of this one which material tag is being passed as parameter. More... | |
size_t | getFiberWithMaxCoord (const Ref3d3d &r, const size_t &iCoo) const |
Return the identifier of the fiber with maximum value for the iCoo coordinate with respect to the system being passed as parameter. More... | |
size_t | getFiberWithMinCoord (const Ref3d3d &r, const size_t &iCoo) const |
Return the identifier of the fiber with minimum value for the iCoo coordinate with respect to the system being passed as parameter. More... | |
int | setParameter (const int &, const std::vector< std::string > &, Parameter &) |
int | updateParameter (const int &, int parameterID, Information &info) |
int | activateParameter (int passedParameterID) |
double | GetYMin (void) const |
Returns minimal y coordinate value of the fibers. | |
double | GetZMin (void) const |
Returns minimal z coordinate value of the fibers. | |
double | GetYMax (void) const |
Returns maximal y coordinate value of the fibers. | |
double | GetZMax (void) const |
Returns maximal z coordinate value of the fibers. | |
Pos2d | GetPMax (void) const |
Return the upper right corner of the bounding rectangle. | |
Pos2d | GetPMin (void) const |
Return the lower left corner of the bounding rectangle. | |
BND2d | Bnd (void) const |
Return the bounding rectangle. | |
double | getArea (const double &factor=1.0) const |
Return the sum of the fibers areas multiplied by the factor. | |
double | getAreaHomogenizedSection (const double &E0) const |
Returns homogenized section area. | |
const Vector & | getCenterOfMassHomogenizedSection (const double &E0) const |
Return the coordinates of the homogenized section centroid. | |
double | getIz (const double &factor=1.0, const double &y0=0.0) const |
Return the moment of inertia with respect to an axis parallel the z axis at a distance y0 from the origin. More... | |
double | getIy (const double &factor=1.0, const double &z0=0.0) const |
Return the moment of inertia with respect to an axis parallel the y axis at a distance z0 from the origin. More... | |
double | getPyz (const double &factor=1.0, const double &y0=0.0, const double &z0=0.0) const |
Return the product of inertia with respect to the parallel axes at distances (y0,z0) from origin. More... | |
double | getI1 (const double &factor=1.0, const double &y0=0.0, const double &z0=0.0) const |
Return the major principal moment of inertia. | |
double | getI2 (const double &factor=1.0, const double &y0=0.0, const double &z0=0.0) const |
Return the moment of inertia principal menor. | |
double | getTh1 (const double &y0=0.0, const double &z0=0.0) const |
Return the angle between major principal axis and the y axis. | |
Vector | getAxis1 (const double &y0=0.0, const double &z0=0.0) const |
Return the direction of the major axis. | |
Vector | getAxis2 (const double &y0=0.0, const double &z0=0.0) const |
Return the direction of the minor axis. | |
double | getIyHomogenizedSection (const double &) const |
Returns homogenized moment of inertia of the cross-section with respect to the axis parallel to y passing through the centroid. More... | |
double | getIzHomogenizedSection (const double &) const |
Returns homogenized moment of inertia of the cross-section with respect to the axis parallel to z passing through the centroid. More... | |
double | getPyzHomogenizedSection (const double &) const |
Returns homogenized product of inertia of the cross-section with respect to the axis parallel to y and z passing through the centroid. More... | |
double | getIHomogenizedSection (const double &, const unsigned short int &, const unsigned short int &) const |
Return the i,j component of the tensor of inertia calculado with respect to the CENTER_OF_MASS. | |
Matrix & | getIHomogenizedSection (const double &) const |
Return the tensor of inertia computed with respect to the object centroid. | |
Matrix & | getIHomogenizedSection (const double &, const Pos2d &o) const |
Return the tensor of inertia with respect to the point o. | |
double | getIHomogenizedSection (const double &, const Pos2d &O, const Vector &e) const |
Return the moment of inertia of the homogenized section with respect to the axis parallel to vector e through the point O. More... | |
double | getIHomogenizedSection (const double &, const Line2d &r) const |
Return the moment of inertia with respect to the line being passed as parameter. More... | |
double | getSzPos (const double &yf, const double &y0, const double &factor=1.0) const |
Return the static moment of the cell areas that rely above yf (y_fiber-yf > 0) with respect to the axis parallel to z at the y coordinate being passed as parameter (lever arm= y_fiber-y0). More... | |
double | getSzNeg (const double &yf, const double &y0, const double &factor=1.0) const |
Return the static moment of the cell areas that rely below yf (y_fiber-yf < 0) with respect to the axis parallel to z at the y coordinate being passed as parameter (lever arm= y_fiber-y0). More... | |
double | getSyPos (const double &zf, const double &z0, const double &factor=1.0) const |
Return the static moment of the cell areas that rely above zf (z_fiber-zf > 0) with respect to the axis parallel to y at the z coordinate being passed as parameter (lever arm= z_fiber-z0). More... | |
double | getSyNeg (const double &zf, const double &z0, const double &factor=1.0) const |
Return the static moment of the cell areas that rely below zf (z_fiber-zf < 0) with respect to the axis parallel to y at the z coordinate being passed as parameter (lever arm= z_fiber-z0). More... | |
double | getSPosHomogenizedSection (const double &E0, const HalfPlane2d &sp) const |
Return the static moments of the fiber areas inside the halfplane being passed as parameter. More... | |
double | getSNegHomogenizedSection (const double &E0, const HalfPlane2d &sp) const |
Return the static moments of the fiber areas outside the halfplane being passed as parameter. More... | |
double | getIpolar (const double &factor=1.0) const |
Returns the polar moment of inertia with respect to G. | |
double | getiz (const double factor=1.0) const |
Returns the radius of gyration with respect to the axis parallel to z que passes through the centroid. More... | |
double | getiy (const double factor=1.0) const |
Returns the radius of gyration with respect to the axis parallel to y que passes through the centroid. More... | |
size_t | nearest_fiber (const double &y, const double &z) const |
Return the fiber that is closest to the given position. | |
void | Print (std::ostream &s, const int &flag) |
Additional Inherited Members | |
![]() | |
typedef std::deque< Fiber * > | fiber_ptrs_dq |
![]() | |
void | resize (const size_t &nf) |
Spacing for each fiber. | |
reference | operator[] (const size_t &i) |
FiberPtrDeque (const size_t &num=0) | |
Constructor. | |
FiberPtrDeque (const FiberPtrDeque &) | |
Copy constructor. | |
FiberPtrDeque & | operator= (const FiberPtrDeque &) |
Assignment operator. | |
![]() | |
double | yCenterOfMass |
Y coordinate of the centroid. | |
double | zCenterOfMass |
Z coordinate of the centroid. | |
std::deque< std::list< Polygon2d > > | dq_ac_effective |
(Where appropriate) effective concrete areas for each fiber. | |
std::deque< double > | recubs |
std::deque< double > | seps |
Cover for each fiber. | |
Fiber double ended queue.
void XC::FiberSet::extend | ( | const FiberSet & | other | ) |
Extend this container with the pointers from the container being passed as parameter.