XC Open source finite element analysis program
DqFibras.h
1 //----------------------------------------------------------------------------
2 // XC program; finite element analysis code
3 // for structural analysis and design.
4 //
5 // Copyright (C) Luis Claudio Pérez Tato
6 //
7 // This program derives from OpenSees <http://opensees.berkeley.edu>
8 // developed by the «Pacific earthquake engineering research center».
9 //
10 // Except for the restrictions that may arise from the copyright
11 // of the original program (see copyright_opensees.txt)
12 // XC is free software: you can redistribute it and/or modify
13 // it under the terms of the GNU General Public License as published by
14 // the Free Software Foundation, either version 3 of the License, or
15 // (at your option) any later version.
16 //
17 // This software is distributed in the hope that it will be useful, but
18 // WITHOUT ANY WARRANTY; without even the implied warranty of
19 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 // GNU General Public License for more details.
21 //
22 //
23 // You should have received a copy of the GNU General Public License
24 // along with this program.
25 // If not, see <http://www.gnu.org/licenses/>.
26 //----------------------------------------------------------------------------
27 //DqFibras.h
28 
29 #ifndef DqFibras_h
30 #define DqFibras_h
31 
32 #include "xc_utils/src/nucleo/EntCmd.h"
33 #include "xc_utils/src/geom/GeomObj.h"
34 #include <deque>
35 
36 class Ref3d3d;
37 class Pos2d;
38 class Recta2d;
39 class Segmento2d;
40 class Poligono2d;
41 class BND2d;
42 class Semiplano2d;
43 
44 namespace XC {
45 class Fiber;
46 class Vector;
47 class FiberSection2d;
48 class FiberSectionBase;
49 class FiberSection3dBase;
50 class FiberSection3d;
51 class FiberSectionGJ;
52 class Matrix;
53 class Response;
54 class Parameter;
55 class Information;
56 class KRSeccion;
57 class GeomSection;
58 class DeformationPlane;
59 
60 enum ClaseEsfuerzo {TRACCION_SIMPLE,TRACCION_COMPUESTA,FLEXION_SIMPLE,FLEXION_COMPUESTA,COMPRESION_SIMPLE,COMPRESION_COMPUESTA,ERROR};
61 
62 
64 //
66 class DqFibras : public EntCmd, public std::deque<Fiber *>
67  {
68  public:
69  typedef std::deque<Fiber *> dq_ptr_fibras;
70  protected:
71 
72  double yCDG;
73  double zCDG;
74 
75  mutable std::deque<std::list<Poligono2d> > dq_ac_eficaz;
76  mutable std::deque<double> recubs;
77  mutable std::deque<double> seps;
78 
79  Fiber *inserta(const Fiber &f);
80  inline void resize(const size_t &nf)
81  { dq_ptr_fibras::resize(nf,nullptr); }
82 
83 
84 
85  private:
86  friend class FiberSectionBase;
87 
88  public:
89  DqFibras(const size_t &num= 0);
90  DqFibras(const DqFibras &otro);
91  DqFibras &operator=(const DqFibras &otro);
92 
93  void push_back(Fiber *f);
94  inline size_t getNumFibers(void) const
95  { return size(); }
96 
97  const Fiber *buscaFibra(const int &tag) const;
98  Fiber *buscaFibra(const int &tag);
99 
100  inline const double &getYCdg(void) const
101  { return yCDG; }
102  inline const double &getZCdg(void) const
103  { return zCDG; }
104  Pos2d getCdg(void) const;
105  inline double getYRelativa(const double &y) const
106  { return y-yCDG; }
107  inline double getZRelativa(const double &z) const
108  { return z-zCDG; }
109 
110  GeomObj::list_Pos2d getPosiciones(void) const;
111 
112  bool hayMomento(const double &tol=1e-4) const;
113  double Resultante(void) const;
114  double getMz(const double &y0= 0.0) const;
115  double getMy(const double &z0= 0.0) const;
116  double getExcentricidadMz(const double &y0= 0.0) const;
117  double getExcentricidadMy(const double &z0= 0.0) const;
118  Vector2d getVectorMomento(const double &y0=0.0,const double &z0=0.0) const;
119  Pos2d getPosResultante(const double &y0=0.0,const double &z0=0.0) const;
120  Recta2d getFibraNeutra(void) const;
121 
122  double ResultanteComp(void) const;
123  double getMzComp(const double &y0= 0.0) const;
124  double getMyComp(const double &z0= 0.0) const;
125  const Vector &baricentroCompresiones(void) const;
126  const Vector &baricentroDefMenores(const double &epsRef) const;
127 
128  double ResultanteTracc(void) const;
129  double getMzTracc(const double &y0= 0.0) const;
130  double getMyTracc(const double &z0= 0.0) const;
131  const Vector &baricentroTracciones(void) const;
132  const Vector &baricentroDefMayores(const double &epsRef) const;
133 
134  int commitState(void);
135 
136  double getStrainMin(void) const;
137  double getStrainMax(void) const;
138  double getStrainMed(void) const;
139  double getStressMin(void) const;
140  double getStressMax(void) const;
141  double getStressMed(void) const;
143  const Vector &getDeformation(void) const;
144  ClaseEsfuerzo getClaseEsfuerzo(const double &tol= 1e-4) const;
145  bool enTraccion(void) const;
146  bool enFlexion(void) const;
147  bool enCompresion(void) const;
148  std::string getStrClaseEsfuerzo(const double &tol= 1e-4) const;
149  double getNeutralAxisDepth(const FiberSectionBase &) const;
150  Vector getVectorBrazoMecanico(void) const;
151  Segmento2d getSegmentoBrazoMecanico(void) const;
152  double getBrazoMecanico(void) const;
153  Recta2d getTrazaPlanoFlexion(void) const;
154  Recta2d getTrazaPlanoTraccion(void) const;
155  Recta2d getTrazaPlanoCompresion(void) const;
156  double calcAcEficazFibras(const std::list<Poligono2d> &,const double &factor= 15) const;
157  const std::list<Poligono2d> &getContourAcEficazFibra(const size_t &i) const;
158  double getAcEficazFibra(const size_t &i) const;
159  double getAcEficazFibras(void) const;
160  void calcRecubrimientos(const GeomSection &) const;
161  void calcSeparaciones(void) const;
162  const double &getRecubrimientoFibra(const size_t &i) const;
163  const double &getSeparacionFibra(const size_t &i) const;
164  double getDiamEqFibra(const size_t &i) const;
165  double getSigmaSRFibra(const size_t &,const double &,const double &,const double &) const;
166  double getDistMediaFibras(void) const;
167  int updateCDG(void);
168 
175  const Matrix &getInitialTangent(const FiberSection2d &) const;
176  const Vector &getStressResultantSensitivity(int gradNumber, bool conditional);
177  int commitSensitivity(const XC::Vector& defSens, int gradNumber, int numGrads);
178 
185  const Matrix &getInitialTangent(const FiberSection3d &) const;
186 
193  const Matrix &getInitialTangent(const FiberSectionGJ &) const;
194 
195  Response *setResponse(const std::vector<std::string> &argv, Information &sectInfo);
196 
197  //void Cumplen(const std::string &cond,DqFibras &,bool clear= true);
198  void SelMatTag(const int &matTag,DqFibras &,bool clear= true);
199 
200  //size_t IMaxProp(const std::string &nmb_prop) const;
201  //size_t IMinProp(const std::string &nmb_prop) const;
202  size_t getFibraCooMax(const Ref3d3d &r,const size_t &iCoo) const;
203  size_t getFibraCooMin(const Ref3d3d &r,const size_t &iCoo) const;
204 
205  int setParameter(const int &,const std::vector<std::string> &, Parameter &);
206  int updateParameter(const int &,int parameterID, Information &info);
207  int activateParameter(int passedParameterID);
208 
209  double GetYMin(void) const;
210  double GetZMin(void) const;
211  double GetYMax(void) const;
212  double GetZMax(void) const;
213  Pos2d GetPMax(void) const;
214  Pos2d GetPMin(void) const;
215  BND2d Bnd(void) const;
216  double getSumaAreas(const double &factor= 1.0) const;
217  double getAreaHomogenizedSection(const double &E0) const;
218  const Vector &getCdgHomogenizedSection(const double &E0) const;
219  //Momento de inercia.
220  double getIz(const double &factor= 1.0,const double &y0= 0.0) const;
221  double getIy(const double &factor= 1.0,const double &z0= 0.0) const;
222  double getPyz(const double &factor= 1.0,const double &y0= 0.0,const double &z0= 0.0) const;
223  double getI1(const double &factor= 1.0,const double &y0= 0.0,const double &z0= 0.0) const;
224  double getI2(const double &factor= 1.0,const double &y0= 0.0,const double &z0= 0.0) const;
225  double getTh1(const double &y0= 0.0,const double &z0= 0.0) const;
226  Vector getEje1(const double &y0= 0.0,const double &z0= 0.0) const;
227  Vector getEje2(const double &y0= 0.0,const double &z0= 0.0) const;
228  double getIyHomogenizedSection(const double &) const;
229  double getIzHomogenizedSection(const double &) const;
230  double getPyzHomogenizedSection(const double &) const;
231  double getIHomogenizedSection(const double &,const unsigned short int &,const unsigned short int &) const;
232  Matrix &getIHomogenizedSection(const double &E0) const;
233  Matrix &getIHomogenizedSection(const double &E0,const Pos2d &o) const;
234  double getIHomogenizedSection(const double &E0,const Pos2d &O,const Vector &e) const;
235  double getIHomogenizedSection(const double &E0,const Recta2d &r) const;
236  //Static moments.
237  double getSzPos(const double &yf,const double &y0,const double &factor= 1.0) const;
238  double getSzNeg(const double &yf,const double &y0,const double &factor= 1.0) const;
239  double getSyPos(const double &zf,const double &z0,const double &factor= 1.0) const;
240  double getSyNeg(const double &zf,const double &z0,const double &factor= 1.0) const;
241  double getSPosHomogenizedSection(const double &E0,const Semiplano2d &sp) const;
242  double getSNegHomogenizedSection(const double &E0,const Semiplano2d &sp) const;
243 
245  inline double getIpolar(const double &factor= 1.0) const
246  { return getIz(factor,yCDG)+getIy(factor,zCDG); }
248  inline double getiz(const double factor= 1.0) const
249  { return getIz(factor,yCDG)/getSumaAreas(factor); }
251  inline double getiy(const double factor= 1.0) const
252  { return getIy(factor,zCDG)/getSumaAreas(factor); }
253  size_t nearest_fiber(const double &y,const double &z) const;
254 
255  void Print(std::ostream &s,const int &flag);
256  };
257 } // end of XC namespace
258 
259 #endif
double getMyComp(const double &z0=0.0) const
Returns the moment of the compressed fibers with respect to the y axis.
Definition: DqFibras.cc:814
Pos2d GetPMin(void) const
Returns the lower left corner of the bounding rectangle.
Definition: DqFibras.cc:213
double getSPosHomogenizedSection(const double &E0, const Semiplano2d &sp) const
Returns the static moments of the fiber areas inside the halfplane being passed as parameter...
Definition: DqFibras.cc:539
double getStressMed(void) const
Returns the average stress.
Definition: DqFibras.cc:1088
double getMy(const double &z0=0.0) const
Returns the momento de la fuerza ejercida por las fibras respecto al eje al eje paralelo al «y» que p...
Definition: DqFibras.cc:678
double getIyHomogenizedSection(const double &) const
Returns homogenized moment of inertia of the cross-section with respecto to the axis parallel to y pa...
Definition: DqFibras.cc:326
bool enFlexion(void) const
Returns true if some fibers are tensioned and other are compressed (bending with or without axial for...
Definition: DqFibras.cc:1141
double calcAcEficazFibras(const std::list< Poligono2d > &, const double &factor=15) const
Computes crack effective areas on the fibers that represent reinforcing bars (see article 49...
Definition: DqFibras.cc:1305
double ResultanteComp(void) const
Returns the resultante de las compresiones en las fibras.
Definition: DqFibras.cc:735
const Vector & baricentroCompresiones(void) const
Returns the punto de paso de la resultante de tensiones menores que «ref» (por defecto cero) compresi...
Definition: DqFibras.cc:764
double getiy(const double factor=1.0) const
Returns the radio de giro respecto al eje paralelo al y que pasa por el CDG.
Definition: DqFibras.h:251
double getIy(const double &factor=1.0, const double &z0=0.0) const
Returns the moment of inertia respecto al eje paralelo al y a una distancia z0 del origen...
Definition: DqFibras.cc:247
DqFibras & operator=(const DqFibras &otro)
Assignment operator.
Definition: DqFibras.cc:67
Recta2d getFibraNeutra(void) const
Returns the neutral axis.
Definition: DqFibras.cc:713
std::deque< double > seps
Cover for each fiber.
Definition: DqFibras.h:77
bool enTraccion(void) const
Returns true if all the fibers are tensioned.
Definition: DqFibras.cc:1137
double getiz(const double factor=1.0) const
Returns the radio de giro respecto al eje paralelo al z que pasa por el CDG.
Definition: DqFibras.h:248
double getStressMin(void) const
Returns the minimal stress.
Definition: DqFibras.cc:1058
double getSzNeg(const double &yf, const double &y0, const double &factor=1.0) const
Returns the static moment of the cell areas that rely below yf (y_fibra-yf < 0) with respect to the a...
Definition: DqFibras.cc:477
Definition: Vector.h:82
double Resultante(void) const
Returns the resultante de tensiones.
Definition: DqFibras.cc:656
Pos2d getPosResultante(const double &y0=0.0, const double &z0=0.0) const
Returns the vector momento de las excentricidades fuerza ejercida por las fibras respecto a los ejes ...
Definition: DqFibras.cc:706
Recta2d getTrazaPlanoTraccion(void) const
Returns the intercept of a plane perpendicular to the bending plane through the tensions centroid wit...
Definition: DqFibras.cc:1251
Fiber section model in a bi-dimensional space. Sections stiffness and internal forces are obtained by...
Definition: FiberSection2d.h:74
std::deque< std::list< Poligono2d > > dq_ac_eficaz
(Where appropriate) effective areas for each fiber.
Definition: DqFibras.h:75
Segmento2d getSegmentoBrazoMecanico(void) const
Returns a segmento orientado desde el centro de tracciones al de compresiones.
Definition: DqFibras.cc:1220
const Fiber * buscaFibra(const int &tag) const
Busca la fibra cuyo tag is being passed as parameter.
Definition: DqFibras.cc:90
Fiber * addFiber(FiberSection2d &, Fiber &, KRSeccion &)
Adds a fiber XXX Enhance parameter updating.
Definition: DqFibras.cc:1510
double getPyz(const double &factor=1.0, const double &y0=0.0, const double &z0=0.0) const
Returns the producto de inercia respecto a los ejes paralelos aa una distancias (y0,z0) del origen.
Definition: DqFibras.cc:262
double getStrainMin(void) const
Returns the min strain.
Definition: DqFibras.cc:987
int setInitialSectionDeformation(const FiberSection2d &)
Establece los valores de las initial strains.
Definition: DqFibras.cc:1527
int setTrialSectionDeformation(const FiberSection2d &, KRSeccion &)
Establece los valores de las trial strains.
Definition: DqFibras.cc:1544
DeformationPlane getDeformationPlane(void) const
Returns the deformation plane (least squares adjustment).
Definition: DqFibras.cc:1034
void calcRecubrimientos(const GeomSection &) const
Calcula los recubrimientos de las fibras.
Definition: DqFibras.cc:1393
int revertToLastCommit(FiberSection2d &, KRSeccion &)
Returns the estado de las fibras al del último commit.
Definition: DqFibras.cc:1575
double getIzHomogenizedSection(const double &) const
Returns homogenized moment of inertia of the cross-section with respecto to the axis parallel to z pa...
Definition: DqFibras.cc:349
Information about an element.
Definition: Information.h:80
const double & getSeparacionFibra(const size_t &i) const
Returns the spacing of the i-th fiber.
Definition: DqFibras.cc:1419
double getIz(const double &factor=1.0, const double &y0=0.0) const
Returns the moment of inertia respecto al paralelo al z a una distancia y0 del origen.
Definition: DqFibras.cc:232
const Matrix & getInitialTangent(const FiberSection2d &) const
Returns the initial tangent stiffness matrix.
Definition: DqFibras.cc:1599
double getDiamEqFibra(const size_t &i) const
Returns the diameter of the circle that has the same area of the fiber which index is being passed as...
Definition: DqFibras.cc:1429
double getExcentricidadMy(const double &z0=0.0) const
Returns the excentricidad correspondiente al momento de la fuerza ejercida por las fibras respecto al...
Definition: DqFibras.cc:696
Vector getEje2(const double &y0=0.0, const double &z0=0.0) const
Returns the direction of the minor axis.
Definition: DqFibras.cc:646
double yCDG
Y coordinate of the centroid.
Definition: DqFibras.h:72
const Vector & getCdgHomogenizedSection(const double &E0) const
Returns the coordinates of the homogenized section centroid.
Definition: DqFibras.cc:294
double ResultanteTracc(void) const
Returns the resultante de las tracciones en las fibras.
Definition: DqFibras.cc:824
int revertToStart(FiberSection2d &, KRSeccion &)
Returns the fibras a su estado inicial.
Definition: DqFibras.cc:1587
const Vector & baricentroDefMenores(const double &epsRef) const
Returns the centroid of the fibers whose strain is less than the value passed as parameter.
Definition: DqFibras.cc:789
Fiber section with torsional stiffness.
Definition: FiberSectionGJ.h:72
Response * setResponse(const std::vector< std::string > &argv, Information &sectInfo)
Gets one of the response parameters of the section.
Definition: DqFibras.cc:1991
double getMzTracc(const double &y0=0.0) const
Returns the moment of the tensioned fibers with respect to the z axis.
Definition: DqFibras.cc:842
void calcSeparaciones(void) const
Computes the distance from each fiber to the nearest one.
Definition: DqFibras.cc:1406
int updateKRCDG(FiberSection2d &, KRSeccion &)
Update the parameters CDG, stiffness and resultant.
Definition: DqFibras.cc:1474
double GetZMax(void) const
Returns maximal z coordinate value of the fibers.
Definition: DqFibras.cc:175
double getStrainMed(void) const
Returns the average strain.
Definition: DqFibras.cc:1017
double getMyTracc(const double &z0=0.0) const
Returns the moment of the tensioned fibers with respect to the y axis.
Definition: DqFibras.cc:853
void push_back(Fiber *f)
Adds to the contenedor the pointer a fibra being passed as parameter.
Definition: DqFibras.cc:85
Recta2d getTrazaPlanoFlexion(void) const
Returns the intercept of the bending plane with the plane that contains the section.
Definition: DqFibras.cc:1245
const Vector & baricentroDefMayores(const double &epsRef) const
Returns the centroid of the fibers whose strain is greater than the value being passed as parameter...
Definition: DqFibras.cc:889
size_t getFibraCooMax(const Ref3d3d &r, const size_t &iCoo) const
Returns the identifier of the fiber with maximum value for the iCoo coordinate with respect to the sy...
Definition: DqFibras.cc:2180
Pos2d getCdg(void) const
Returns the position of the centroid.
Definition: DqFibras.cc:1180
double getSyPos(const double &zf, const double &z0, const double &factor=1.0) const
Returns the static moment of the cell areas that rely above zf (z_fibra-zf > 0) with respect to the a...
Definition: DqFibras.cc:500
double GetYMax(void) const
Returns maximal y coordinate value of the fibers.
Definition: DqFibras.cc:156
Fiber * inserta(const Fiber &f)
Spacing for each fiber.
Definition: DqFibras.cc:77
double getSNegHomogenizedSection(const double &E0, const Semiplano2d &sp) const
Returns the static moments of the fiber areas outside the halfplane being passed as parameter...
Definition: DqFibras.cc:563
bool hayMomento(const double &tol=1e-4) const
Returns true if the section is subject to a under bending moment.
Definition: DqFibras.cc:724
double getStrainMax(void) const
Returns the min strain.
Definition: DqFibras.cc:1002
BND2d Bnd(void) const
Returns the bounding rectangle.
Definition: DqFibras.cc:217
Vector2d getVectorMomento(const double &y0=0.0, const double &z0=0.0) const
Returns the vector momento de la fuerza ejercida por las fibras respecto a los ejes que pasan por (y0...
Definition: DqFibras.cc:701
double getPyzHomogenizedSection(const double &) const
Returns homogenized product of inertia of the cross-section with respecto to the axis parallel to y a...
Definition: DqFibras.cc:372
double getSigmaSRFibra(const size_t &, const double &, const double &, const double &) const
Returns the stress on the i-th fiber when cracking occurs in its effective area.
Definition: DqFibras.cc:1436
void SelMatTag(const int &matTag, DqFibras &, bool clear=true)
Definition: DqFibras.cc:967
Vector getEje1(const double &y0=0.0, const double &z0=0.0) const
Returns the direction of the major axis.
Definition: DqFibras.cc:636
Contenedor de fibras.
Definition: DqFibras.h:66
Deformation plane for a cross-section.
Definition: DeformationPlane.h:53
int updateCDG(void)
Actualiza el CDG.
Definition: DqFibras.cc:1451
Definition: Matrix.h:82
double getAcEficazFibras(void) const
Returns the sum of fibers effective areas.
Definition: DqFibras.cc:1379
Fiber section model in a three-dimensional space. Sections stiffness and internal forces are obtained...
Definition: FiberSection3d.h:72
bool enCompresion(void) const
Returns true if all the fibers are compressed.
Definition: DqFibras.cc:1145
double getNeutralAxisDepth(const FiberSectionBase &) const
Returns neutral axisr depth, i. e. distance from neutral axis to the most compressed one...
Definition: DqFibras.cc:1187
DqFibras(const size_t &num=0)
Constructor.
Definition: DqFibras.cc:57
double getIHomogenizedSection(const double &, const unsigned short int &, const unsigned short int &) const
Returns the i,j component of the tensor of inertia calculado respecto al CDG.
Definition: DqFibras.cc:394
const Vector & getDeformation(void) const
Returns the generalized strain vector.
Definition: DqFibras.cc:1051
double getTh1(const double &y0=0.0, const double &z0=0.0) const
Returns the angle between major principal axis and the y axis.
Definition: DqFibras.cc:614
Vector getVectorBrazoMecanico(void) const
Returns a vector orientado desde el centro de tracciones al de compresiones.
Definition: DqFibras.cc:1213
double getIpolar(const double &factor=1.0) const
Returns the momento de inercia polar respecto a G.
Definition: DqFibras.h:245
Section fiber.
Definition: Fiber.h:89
double getExcentricidadMz(const double &y0=0.0) const
Returns the excentricidad correspondiente al momento de la fuerza ejercida por las fibras respecto al...
Definition: DqFibras.cc:690
Definition: Parameter.h:65
Base class for fiber sections.
Definition: FiberSectionBase.h:57
double getI2(const double &factor=1.0, const double &y0=0.0, const double &z0=0.0) const
Returns the moment of inertia principal menor.
Definition: DqFibras.cc:600
const Vector & baricentroTracciones(void) const
Returns the punto de paso de la resultante de tracciones, si no hay tracciones returns (0...
Definition: DqFibras.cc:864
double getSyNeg(const double &zf, const double &z0, const double &factor=1.0) const
Returns the static moment of the cell areas that rely below zf (z_fibra-zf < 0) with respect to the a...
Definition: DqFibras.cc:520
double getDistMediaFibras(void) const
Returns the distancia media entre fibras.
Definition: DqFibras.cc:1285
GeomObj::list_Pos2d getPosiciones(void) const
Returns fibers positions.
Definition: DqFibras.cc:194
double getI1(const double &factor=1.0, const double &y0=0.0, const double &z0=0.0) const
Returns the moment of inertia principal mayor.
Definition: DqFibras.cc:589
double getStressMax(void) const
Returns the minimal stress.
Definition: DqFibras.cc:1073
double getSumaAreas(const double &factor=1.0) const
Returns the sum of the fibers areas.
Definition: DqFibras.cc:221
double getBrazoMecanico(void) const
Returns the lever arm of forces in the section.
Definition: DqFibras.cc:1281
double getMz(const double &y0=0.0) const
Returns the momento de la fuerza ejercida por las fibras respecto al eje paralelo al «z» que pasa por...
Definition: DqFibras.cc:667
double zCDG
Z coordinate of the centroid.
Definition: DqFibras.h:73
================================================================================
Definition: ContinuaReprComponent.h:34
double GetYMin(void) const
Returns minimal y coordinate value of the fibers.
Definition: DqFibras.cc:118
double getAreaHomogenizedSection(const double &E0) const
Returns homogenized section area.
Definition: DqFibras.cc:276
double getMzComp(const double &y0=0.0) const
Returns the moment of the compressed fibers with respect to the z axis.
Definition: DqFibras.cc:753
double GetZMin(void) const
Returns minimal z coordinate value of the fibers.
Definition: DqFibras.cc:137
Stiffness matrix and resultant vector for a section.
Definition: KRSeccion.h:40
double getSzPos(const double &yf, const double &y0, const double &factor=1.0) const
Returns the static moment of the cell areas that rely above yf (y_fibra-yf > 0) with respect to the a...
Definition: DqFibras.cc:454
Cross section geometry.
Definition: GeomSection.h:62
Definition: Response.h:71
Recta2d getTrazaPlanoCompresion(void) const
Returns the intercept of a plane perpendicular to the bending plane through the compressions centroid...
Definition: DqFibras.cc:1267
size_t nearest_fiber(const double &y, const double &z) const
Returns the fiber that is closest to the given position.
Definition: DqFibras.cc:913
double getAcEficazFibra(const size_t &i) const
Returns the effective area value of the fiber which index is being passed as parameter.
Definition: DqFibras.cc:1369
size_t getFibraCooMin(const Ref3d3d &r, const size_t &iCoo) const
Returns the identifier of the fiber with minimum value for the iCoo coordinate with respect to the sy...
Definition: DqFibras.cc:2210
const double & getRecubrimientoFibra(const size_t &i) const
Returns the value of concrete cover for the i-th fiber.
Definition: DqFibras.cc:1410
const std::list< Poligono2d > & getContourAcEficazFibra(const size_t &i) const
Returns the contours of the effective area of the fiber which index is being passed as parameter...
Definition: DqFibras.cc:1364
Pos2d GetPMax(void) const
Returns the upper right corner of the bounding rectangle.
Definition: DqFibras.cc:209