Arch bridge base¶
Base classes for arch bridge calculations.
based on Maria Garlock’s papers: file: L4_-_Arches_Jan_11_-_final.pdf file: L8-_Tied_Arches_Jan_10.pdf
- class rough_calculations.arch_bridge_rough_base.ArchBridgeRoughModelBase(L, d)¶
Bases:
object
Base class for arch bridge rough models
- Variables
d – rise (depth) of the arch at midspan
L – horizontal distance between supports
- getQunfHabtm(qunif)¶
Horizontal reaction at each abutment due to a uniform load.
- Parameters
qunif – uniformly distributed load applied to the arch
- getQunfVabtm(qunif)¶
Vertical reaction at each abutment due to a uniform load.
- Parameters
qunif – uniformly distributed load applied on the deck
Arch bridge simple model¶
Simple analysis model for arch bridges.
based on Maria Garlock’s papers: file: L4_-_Arches_Jan_11_-_final.pdf file: L8-_Tied_Arches_Jan_10.pdf
- class rough_calculations.arch_bridge_simple_model.ArchBridgeRoughModel(L, d)¶
Bases:
rough_calculations.arch_bridge_rough_base.ArchBridgeRoughModelBase
Arch bridge simple model
- getMmaxQconc(Qconc)¶
maximum bending moment in a parabolic three hinged arch produced by concentrated live forces placed at quarterspans The bending moment is maximum at the quarterpoints
- getQconcCompStress(Qconc, A)¶
Approximation of the compressive stress in a section of the three hinged arch with area=A, due to a two concentrated loads in quarterpoints. for simplicity, it’s considered the compressive force at the midspan (H, that, in turn, i equal to the horizontal reaction at the abutment) as an approximation for the compressive force in the arch at any location
- getQconcHabtm(Qconc)¶
Horizontal reaction at each abutment of a three hinged arch due to a two concentrated loads in quarterpoints
- getQconcVabtm(Qconc)¶
Vertical reaction at each abutment of a three hinged arch due to two concentrated loads in quarterpoints
- getQunfCompStress(qunif, A)¶
Approximation of the compressive stress in a section of the arch with area=A, due to a uniform load qunif. for simplicity, it’s considered the compressive force at the midspan (H, that, in turn, i equal to the horizontal reaction at the abutment) as an approximation for the compressive force in the arch at any location
Masonry vault¶
Based on the thesis: Capacité portante de ponts en arc en maçonnerie de pierre naturelle - Modèle d’évaluation intégrant le niveau d’endommagement. Alix Grandjean (2010). documenturl: https://infoscience.epfl.ch/record/142552/files/EPFL_TH4596.pdf
- class rough_calculations.masonry_vault.FillingCharacteristics(a=0.5235987755982988, c=0.0, mp=0.33, mc=0.01, alpha=0.726, beta=6.095, swFill=18000.0, swSupStr=20000.0, fillThick=9, eqThickRoad=0.5)¶
Bases:
object
- alpha = 0.726¶
- angPhi = 0.5235987755982988¶
- beta = 6.095¶
- cohesion = 0¶
- eqThickRoad = 0.5¶
- fillThick = 9¶
- getKc()¶
- getKp()¶
coefficient de poussée des terres
- mc = 0.01¶
- mp = 0.33¶
- printResults()¶
- swFill = 18000.0¶
- swSupStr = 20000.0¶
- class rough_calculations.masonry_vault.archGeometry(coefPolArch=[0, 0, 0, 0], XRot=[0, 0, 0, 0], arcThick=0, arcSpan=15, arcEffL=4)¶
Bases:
object
Geometric definition of the arc:
- Variables
coefPolArch=[f,j,k,r] – Coefficients of polynomial y=fx^4+jx^3+kx^2+rx+u (u=0)
XRot=[xA,xB,xC,xD] – X coordinates of the rotules A,B,C,D [m]
arcThick – arch thickness [m]
arcSpan – arch span [m]
arcEffL – effective arch width [m]
- aux1(x1, x0)¶
Aux function.
- aux2(x2)¶
Aux function.
- calcGamma(x)¶
Angle of tangent to arc at x.
- check(x_i, y_i)¶
- checkAbscissa(x)¶
- getDistxAB()¶
- getDistxAC()¶
- getDistxBD()¶
- getGammaD()¶
angle at rotule D
- getS()¶
Rise to span ratio.
- getYKeystone()¶
Y coordinate in keystone of arch (at arcSpan/2)
- getYRot()¶
YRot=[yA,yB,yC,yD]: Y coordinate of rotules A,B,C,D [m]
- plot()¶
Draws the arc and the hinges in matplotlib.
- printResults()¶
- yAxis(x)¶
Polynomial intevrpolation for arc’s axis.
- rough_calculations.masonry_vault.calcE6p27(X, qrep, L, LR, v, l, a, b, hA, hB, hC, hD, xA)¶
Grandeur E pour le changement de variable selon l’equation 6.27
- rough_calculations.masonry_vault.calcF6p28(R, LR, a, b, eta, phiS, etaW, psiT, MA, MB, MC, RzB, RzD, hA, hB, hC, hD)¶
Grandeur F pour le changement de variable selon l’equation 6.28
- rough_calculations.masonry_vault.calcG6p29(X, qrep, L, LR, v, l, a, b, hA, hB, hC, hD, xA, gammaD)¶
Grandeur G pour le changement de variable selon l’equation 6.29
- rough_calculations.masonry_vault.calcH6p30(LR, a, eta, psi, phiS, etaW, MA, MB, MC, RzB, hA, hB, hC, hD, gammaD)¶
Grandeur H pour le changement de variable selon l’equation 6.30
- rough_calculations.masonry_vault.calcHA6p19(n, X, qrep, L, LR, v, l, a, b, hA, hB, hC, hD, xA, etaW, MA, MB, MC, RzB, phiS)¶
Effort horizontal dans la rotule A selon l’equation 6.19
- Parameters
n – Multiplicateur limite des charges utiles (voir 6.32)
qrep – charge repartie
- rough_calculations.masonry_vault.calcHB6p21(n, X, qrep, L, LR, v, l, a, b, hA, hB, hC, hD, xA, etaW, MA, MB, MC, RzB, phiS, R)¶
Effort horizontal dans la rotule B selon l’equation 6.21
- Parameters
n – Multiplicateur limite des charges utiles (voir 6.32)
qrep – charge repartie
R – Resultante de la force horizontale (voir 6.12 et A 12.1)
- rough_calculations.masonry_vault.calcVA6p20(n, X, qrep, L, LR, v, l, a, b, hA, hB, hC, hD, xA, etaW, MA, MB, MC, RzB, phiS)¶
Effort vertical dans la rotule A selon l’equation 6.20
- Parameters
n – Multiplicateur limite des charges utiles (voir 6.32)
qrep – charge repartie
- rough_calculations.masonry_vault.calcVB6p22(n, X, qrep, L, LR, v, l, a, b, hA, hB, hC, hD, xA, etaW, MA, MB, MC, RzB, phiS, eta)¶
Effort vertical dans la rotule B selon l’equation 6.22
- Parameters
n – Multiplicateur limite des charges utiles (voir 6.32)
qrep – charge repartie
- rough_calculations.masonry_vault.calcn6p32(alpha, beta, d, v, E, F, G, H)¶
Multiplicateur de la charge utile.
- rough_calculations.masonry_vault.diagInteraction(N, d, v, alpha, beta)¶
Moment de flexion qui correspond au axil N au diagramme d’interaction.
- rough_calculations.masonry_vault.getAdmissibleAxialForce(S)¶
Normal axial force as in table 8.1.
- rough_calculations.masonry_vault.lQtrans(a, delta, hRcle)¶
Longueur participante pour la charge transversale (voir eqs. 6.16 et 6.17).
- class rough_calculations.masonry_vault.permLoadResult(gm, fc)¶
Bases:
object
Permanent load resultants
- fc = <rough_calculations.masonry_vault.FillingCharacteristics object>¶
- getEta()¶
Résultante des charges permanentes sur l’overture active de l’arc (fig. 6.9) [N]
- getEtaW()¶
- getPhi()¶
résultante des charges permanentes solicitant la portion d’arc comprise entre les rotules A et C (fig. 6.9) [N]
- getPhiS()¶
moment de flexion induit par la résultante phi de la charge permanente entre A et C, par rapport à la rotule C (fig. 6.9) [Nm]
- getPsi()¶
résultante des charges permanentes solicitant la portion d’arc comprise entre les rotules D et B (fig. 6.9) [N]
- getPsiT()¶
moment de flexion induit par la résultante psi de la charge permanente entre D et B, par rapport à la rotule D (fig. 6.9) [Nm]
- getR()¶
résultant de la poussée laterale entre les rotules B et D [N]
- getRzB()¶
moment de flexion induit par la résultant de la poussée laterale entre les rotules B et D, par rapport à la rotule B [Nm]
- getRzD()¶
moment de flexion induit par la résultant de la poussée laterale entre les rotules B et D, par rapport à la rotule D [Nm]
- gm = <rough_calculations.masonry_vault.archGeometry object>¶
- printResults(fillChar)¶
- class rough_calculations.masonry_vault.resistance(Nadmis, gm, fc, tl, plR, tlR)¶
Bases:
object
- getE()¶
- getF()¶
- getG()¶
- getH()¶
- getHA()¶
Effort horizontal dans la rotule A.
- getHB()¶
Effort horizontal dans la rotule B.
- getMadmis()¶
Moment de flexion admis (voir 5.17 et A 7.15) [Nm]
- getMinimFunc(x)¶
- getSafCoef()¶
Safety coefficient - Multiplicateur limite des charges utiles (voir 6.32)
- getVA()¶
Effort vertical dans la rotule A.
- getVB()¶
Effort vertical dans la rotule B.
- minimize()¶
- printResults()¶
- class rough_calculations.masonry_vault.trafficLoad(delta=0.5235987755982988, fillThickKeys=1.5, Q=160000, qrep=5000.0)¶
Bases:
object
- Q = 160000¶
- delta = 0.5235987755982988¶
- fillThickKeys = 1.5¶
- qrep = 5000.0¶
- class rough_calculations.masonry_vault.trafficLoadResult(gm, tl)¶
Bases:
object
Traffic load resultants
- getX()¶
Punctual traffic load after longitudinal and transversal difussion (see 6.18) [Pa]
- getlQt()¶
- getqtrans()¶
Uniform traffic load [N/m] after transverse diffusion (see 6-15)
- getvQt()¶
- gm = <rough_calculations.masonry_vault.archGeometry object>¶
- printResults()¶
- tl = <rough_calculations.masonry_vault.trafficLoad object>¶
- rough_calculations.masonry_vault.vQtrans(v, delta, hRcle)¶
Largeur participante pour la charge transversale (voir 6.5 et figure 6.13).
Vault¶
- class rough_calculations.vaults_rough_calc.SphericalDome(sphRadius, alpha)¶
Bases:
object
Rough calculation of a spherical dome
- Variables
sphRadius – radius of curvature (spherical radius)
alpha – angle from the top of the dome to the bottom of the dome measured along the meridian [radians]
- getHoopLinearForce(qVsurf, Phi)¶
Return the hoop force per unit length
- Parameters
qVsurf – surface load over the dome
Phi – angle along meridian (from vertical), so that at the peak of dome Phi=0 and at the dome’s edge Phi=alpha [radians]
- getHorizSupportReaction(qVsurf)¶
Return the horizontal linear reaction at the base of the dome due to a uniform surface load qVsurf over the dome
- getMeridionalSupportReaction(qVsurf)¶
Return the meridional linear reaction at the base of the dome due to a uniform surface load qVsurf over the dome
- getMeridonialLinearForce(qVsurf, Phi)¶
Return the meridonial force per unit length
- Parameters
qVsurf – surface load over the dome
Phi – angle along meridian (from vertical), so that at the peak of dome Phi=0 and at the dome’s edge Phi=alpha [radians]
- getPlanRadius()¶
Return the planar radius of the dome at the base
- getRise()¶
Return the height (or rise) of the dome
- getSpan()¶
Return the span of the dome
- getSurfArea()¶
Return the surface area of the dome
- getTensionForceRing(qVsurf)¶
Return the tension force in the base ring due to a uniform surface load qVsurf over the dome
- getVerticalSupportReaction(qVsurf)¶
Return the vertical linear reaction at the base of the dome due to a uniform surface load qVsurf over the dome
- class rough_calculations.vaults_rough_calc.hyparUmbrella(lx, ly, zMax, zSupp, thickness)¶
Bases:
object
Rough calculation of a hyperbolic paraboloid umbrella :ivar lx: size of one tympan (one-fourth of the umbrella) in X direction :ivar ly: size of one tympan (one-fourth of the umbrella) in Y direction :ivar zMax: Z coordinate of the umbrella corner :ivar zSupp: Z coordinate of the umbrella central point (on the support) :ivar thickness: thickness of the shell :ivar k: warping of the hyperbolic paraboloid
- getCmax(pz)¶
return the maximum compression force in edge of umbrella
- Parameters
pz – vertical load per unit area of ground projection
- getCompStress(pz)¶
return the maximum compressive stress in the hypar
- Parameters
pz – vertical load per unit area of ground projection
- getLedge()¶
return the maximum length of half an umbrella edge
- getLvalley()¶
return the length of the valley in the umbrella
- getNxy(pz)¶
return shearing force in the hypar shell
- Parameters
pz – vertical load per unit area of ground projection
- getTensStress(pz)¶
return the maximum tensile stress in the hypar
- Parameters
pz – vertical load per unit area of ground projection
- getTmax(pz)¶
return the maximum tension force in edge of umbrella
- Parameters
pz – vertical load per unit area of ground projection
- getZ(x, y)¶
return Z coordinate of point (x,y)
Cable stayed_bridge simple model¶
From the notes of María E. Moreyra Garlock in the context of the course ‘The Art of Structural Engineering: Bridges
- class rough_calculations.cable_stayed_bridge_simple_model.CableStayedBridgeRoughModel(l1)¶
Bases:
object
Cable stayed bridge simple model
- getHCable(q, theta)¶
Horizontal reaction at tower due to the cable.
- Parameters
q – uniform load on the bridge deck.
theta – angle of the cable with the deck.
- getNCable(q, theta)¶
Axial force in a cable
- Parameters
q – uniform load on the bridge deck.
theta – angle of the cable with the deck.
- getVCable(q)¶
Vertical reaction at tower due to the cable.
- Parameters
q – uniform load on the bridge deck.
T beam bridges¶
- rough_calculations.T_beam_bridges_rough_calc.loadDistrCourbon(P, e, distGirdAx)¶
Estimates the distribution of the live loads among the longitudinal girders according to the Courbon’s theory. In this method the effect of the variation of span is not at all considered. All the longitudinal beams are considered identical.
- Parameters
P – total live load
e – eccentricity (+ or -) from the axis of the bridge of the live load (or COG of loads in case of multiple loads)
n – number of longitudinal girders
distGirdAx – list with the distances (+ or -)of all the girders from the axis of the bridge
return list of reactions for each of the longitudinal girders
Beam deflection¶
- rough_calculations.beam_deflection.deflCantBeamMend(l, EI, M)¶
Maximum deflection in a cantilever beam with a couple moment at the free end
- rough_calculations.beam_deflection.deflCantBeamPconcentr(l, EI, P, a)¶
Maximum deflection in a cantilever beam with a concentrated load at any point
- rough_calculations.beam_deflection.deflCantBeamQunif(l, EI, q)¶
Maximum deflection in a cantilever beam with a uniformly distributed load
- rough_calculations.beam_deflection.deflSimplSupBeamMend(l, EI, M)¶
Maximum deflection in a beam simply supported at ends with a couple moment at the right end
- rough_calculations.beam_deflection.deflSimplSupBeamPconcentr(l, EI, P, b)¶
Maximum deflection in a beam simply supported at ends with a concentrated load at any point
- rough_calculations.beam_deflection.deflSimplSupBeamQunif(l, EI, q)¶
Maximum deflection in a beam simply supported at ends with a uniformly distributed load
- rough_calculations.beam_deflection.getFlechaVigaBiapQUnif(l, EI, q)¶
Beam deflection at mid-span for a simple supported beam under uniform load.
- Parameters
l – span.
EI – bending stiffness.
q – load per unit length (uniform).
Beam¶
Base for beam formulas.
- class rough_calculations.ng_beam.Beam(E: float = 1.0, I: float = 1.0, l: float = 1.0)¶
Bases:
object
Base class for beam formulas.
- Variables
E – elastic modulus.
I – moment of inertia of the beam section.
l – beam length.
- EI()¶
Return the tangent stiffness.
- computeCurvature(xi, M)¶
Compute curvature values.
- Parameters
xi – abcissae.
M – bending moment function.
- computeIncDeflection(x0, x1, M)¶
Compute increment of deflection between x0 and x1.
- Parameters
x0 – interval beginning.
x1 – interval end.
M – bending moment function.
- computeIncDeflectionValues(xi, M)¶
Compute increment of deflection between x0 and x1.
- Parameters
xi – sample points.
M – bending moment function.
EI – bending stiffness.
- computeIncTheta(x0, x1, M)¶
Compute increment of rotation between x0 and x1.
- Parameters
x0 – interval beginning.
x1 – interval end.
M – bending moment function.
- computeIncThetaValues(xi, M)¶
Compute the increment of rotation values in sample points.
- Parameters
xi – sample points.
M – bending moment function.
- computeThetaValues(xi, M)¶
Compute the increment of rotation values in sample points.
- Parameters
xi – sample points.
M – bending moment function.
- n = 20¶
- samplePoints(x0, x1)¶
Return a list of sample points.
- Parameters
x0 – interval beginning.
x1 – interval end.
n – number of divisions.
Cantilever¶
Cantilever formulas.
- class rough_calculations.ng_cantilever.Cantilever(E: float = 1.0, I: float = 1.0, l: float = 1.0)¶
Bases:
rough_calculations.ng_beam.Beam
Cantilever formulas.
- getBendingMomentUnderConcentratedLoad(P, a, x)¶
Return the bending moment under concentrated load.
- Parameters
P – value of the concentrated load.
a – position of the load.
x – position of the section.
- getBendingMomentUnderUniformLoad(q, x)¶
Return the bending moment under uniform load.
- Parameters
q – value of the uniform load.
x – position of the section.
- getDeflectionUnderConcentratedLoad(P, a, x)¶
Return the deflection under concentrated load.
- Parameters
P – value of the concentrated load.
a – position of the load.
x – position of the section.
- getDeflectionUnderUniformLoad(q, x)¶
Return the deflection under uniform load.
- Parameters
q – value of the uniform load.
x – position of the section.
- getFundamentalBendingFrequencies(numModes, linearRho)¶
Return the fundamental bending frequencies of the beam.
- Parameters
numModes – number of oscillation modes to compute.
linearRho – mass density per unit length.
- getReactionUnderConcentratedLoad(P)¶
Return the reaction under concentrated load.
- Parameters
P – value of the concentrated load.
- getReactionUnderUniformLoad(q)¶
Return the reaction under uniform load.
- Parameters
q – value of the uniform load.
- getShearUnderConcentratedLoad(P, a, x)¶
Return the shear under concentrated load.
- Parameters
P – value of the concentrated load.
a – position of the load.
x – position of the section.
- getShearUnderUniformLoad(q, x)¶
Return the shear value at x.
- Parameters
q – value of the uniform load.
x – position of the section.
Concrete slab¶
- class rough_calculations.ng_concrete_slab.ConcreteSlab(l, L, thickness)¶
Bases:
object
Concrete slab preliminary structural calculations
- class rough_calculations.ng_concrete_slab.FourSidesPinnedConcreteSlab(l, L, thickness)¶
Bases:
rough_calculations.ng_concrete_slab.ConcreteSlab
Four sides pinned concrete slab preliminary structural calculations
- getMMax(p)¶
Returns maximum bending moment under the load p
- Parameters
p – Total load over the slab.
Note
Formulas from Yvon Lescouarc’h ingénieur.
- predimThickness(p)¶
Returns thickness for a four side supported slab
- Parameters
p – Total load over the slab (N/m2).
Note
Formulas from Yvon Lescouarc’h ingénieur.
Column internal forces¶
- rough_calculations.ng_column_loads.getColumnTributaryArea(L1, L2, L3, L4)¶
Tributary area of a column from the neighbour spans see «Números gordos en el proyecto de estructuras» page 44
Prestressed concrete¶
Rough calculations related to prestressed concrete (geometry, losses of prestress, …)
- rough_calculations.ng_prestressed_concrete.loss_elastic_shortening_concr(Ac, Ic, Ec, Ep, Ap, ec_p, sigma_p_0, M_sw)¶
return a rough estimation of the loss of prestress in a section due to elastic shortening of concrete.
- Parameters
Ac – cross-section area of concrete
Ic – moment of inertia of the concrete cross-section
Ec – modulus of elasticity of concrete
Ep – modulus of elasticity of prestressing steel
Ap – area of prestressing steel
ec_p – eccentricity of tendon (with respect to COG of concrete section)
sigma_p_0 – initial stress in tendon
M_sw – bending moment in the section due to self weight
- rough_calculations.ng_prestressed_concrete.loss_friction(s, sigma_p_0, alpha_unit, mu, unint_dev)¶
return a rough estimation of the loss of prestress due to friction.
- Parameters
s – cable length from start to section considered
sigma_p_0 – initial stress in tendon
alpha_unit – mean angular deviation per unit length. E.g.: Assimilating the parabolic profile of the cable to a circular profile the angular deviation is constant in the beam length and can be expressed as: 8*eccentricity_mid_span/Lbeam**2
unint_dev – unintentional angular deviation per unit length
- class rough_calculations.ng_prestressed_concrete.prestressingWire(p0, p1, p2, x0, xL, y)¶
Bases:
object
- alpha(x)¶
- curvature(x)¶
- getForce(x, P)¶
- getIntegratedU(P)¶
- getL()¶
- getPoint(x)¶
- getU(x, P)¶
- trace = None¶
- x0 = 0.0¶
- xL = 1.0¶
- y = 0.0¶
- z(x)¶
- rough_calculations.ng_prestressed_concrete.sigma_concr_tendon_lev(Ac, Ic, Ec, Ep, Ap, ec_p, sigma_p_0, M_sw)¶
return a rough estimation of the stress in concrete at the level of the tendon.
- Parameters
Ac – cross-section area of concrete
Ic – moment of inertia of the concrete cross-section
Ec – modulus of elasticity of concrete
Ep – modulus of elasticity of prestressing steel
Ap – area of prestressing steel
ec_p – eccentricity of tendon (with respect to COG of concrete section)
sigma_p_0 – initial stress in tendon
M_sw – bending moment in the section due to self weight
Punching shear¶
- Rough design of concrete slabs under punching loads according to the
publication: “Números gordos en el proyecto de estructuras” by Juan Carlos Arroyo et al. ISBN: 97884932270-4-3. Cinter 2009.
https://books.google.es/books?id=tf5-tgAACAAJ
- rough_calculations.ng_punching_shear.concrete_resisted_punching_load(concrete, d, a, b, criticalPerimeterLength=None)¶
- Approximate design value of punching shear resistance of a slab without
punching shear reinforcement, computed at the critical perimeter defined to occur at d/2 from the column faces (HL.3 números gordos)
- Parameters
concrete – concrete material.
d – effective depth of the floor deck
a,b – dimensions of the column
criticalPerimeterLength – length of the critical perimeter.
- rough_calculations.ng_punching_shear.designPunchingLoad(qk, A)¶
- Rough estimation of the punching shear load over a column
(HL.3 números gordos).
- Parameters
qk – characteristic value of the total uniform load on the slab.
A – column tributary area.
- rough_calculations.ng_punching_shear.maximum_punching_shear_load(concrete, d, a, b)¶
Estimate of the maximum punching shear resistance along the section at the intersection of the support contour with the deck (HL.3 números gordos).
- (This is the maximum punching shear load you can transfer to the
column through the contact surface. This is the same type of limitation that the maximum shear forde that the strut can support in a )
If the shear load to resist is greater, then we need to.
increment the support dimensions (the cheaper solution)
increment the slab thickness (the better solution)
increase the concrete strength
- Parameters
concrete – concrete material (N/m2)
d – effective depth of the slab (m)
a,b – dimensions of the column (m)
Result is expressed in N
- rough_calculations.ng_punching_shear.punching_shear_reinforcement_area(concrete, steel, Vd, d, a, b, h, criticalPerimeterLength=None)¶
- Estimate the needed punching shear reinforcement area
computed at the critical perimeter defined to occur at 2d from the column faces (HL.3 números gordos)
- Parameters
concrete – concrete material.
steel – steel material.
Vd – Desing value of the punching shear (N)
d – effective depth of the floor deck (m)
h – slab depth (m).
a,b – dimensions of the column (m)
criticalPerimeterLength – length of the critical perimeter.
Reinforced concrete section¶
- class rough_calculations.ng_rc_section.RCSection(tensionRebars, concrete, b, h, memberType=None)¶
Bases:
object
Reinforced concrete section.
- Variables
b – section width.
h – section depth.
concrete – concrete material.
tensionRebars – main reinforcement.
- d()¶
Return the effective depth of the reinforcement.
- Parameters
thickness – height of the rectangular section.
- getAc()¶
Return the concrete area.
- getAs()¶
Return the tension reinforcement area.
- getCompressionReinforcementArea(dp, Nd, Md)¶
- Return the required compression reinforcement area according
to expression for U’ in section 15.5 3º of the book: Hormigón Armado Jiménez Montoya et al. ISBN: 84-252-1825-X
- Parameters
dp – effective cover of the compression reinforcement.
Nd – axial force (negative if compression).
Md – bending moment (positive if the returned area in compression).
- getDimensionlessMomentRatio(MEd)¶
Return the ratio: MEd/(fcd*b*d^2).
- getDimensionlessReinforcementRatio()¶
Return the ratio: As*fyd/(Ac*fcd).
- getMR(Nd=0.0, Md=0.0, z=None)¶
Return the resisting moment of the section.
- Parameters
Nd – axial force.
Md – bending moment.
z – inner lever arm (if None z= 0.9*d).
- getMinReinfAreaInBending()¶
- getMinReinfAreaInTension()¶
Return the minimun amount of bonded reinforcement.
- getTensionReinforcementArea(Ap, dp, Nd, Md)¶
- Return the required tension reinforcement area according
to expression for U’ in section 15.5 3º of the book: Hormigón Armado Jiménez Montoya et al. ISBN: 84-252-1825-X
- Parameters
Ap – area of the compression reinforcement.
dp – effective cover of the compression reinforcement.
Nd – axial force.
Md – bending moment (positive if the returned area in compression).
- getVR(Nd, Md)¶
Get the the shear resistance carried by the concrete.
- Parameters
Nd – design axial force.
Md – design bending moment.
- setReinforcement(tensionRebars)¶
- writeResultCompression(outputFile, Nd, AsTrsv)¶
Results for compressed rebars.
- Parameters
AsTrsv – Rebar area in transverse direction.
- writeResultFlexion(outputFile, Nd, Md, Vd)¶
- writeResultStress(outputFile, M)¶
Cheking of stresses under permanent loads (SIA 262 fig. 31)
- writeResultTraction(outputFile, Nd)¶
Retaining wall¶
Routines for basement walls design.
- class rough_calculations.ng_basement_wall.BasementWall(name='prb', concreteCover=0.04, stemBottomWidth=0.25, stemTopWidth=0.25, footingThickness=0.25, concrete=None, steel=None)¶
Bases:
rough_calculations.ng_retaining_wall.RetainingWall
Basement retaining wall (propped cantilever).
- genMesh(nodes, springMaterials)¶
Generate finite element mesh.
- getSectionIntStem()¶
Returns RC section for reinforcement at stem interior.
- writeResult(pth: str, includeGraphicsPath=None, convertToEPS=False)¶
Write reinforcement verification results in LaTeX format.
- Parameters
pth – output path.
includeGraphicsPath – path for the includegraphics LaTeX command.
convertToEPS – if true, create a postscript version of the graphic output.
Diaphragm wall¶
- class rough_calculations.predim_diaphragm_wall.DiaphragmWallRoughModel(digHeight, phreaticLevel, distAnch, firstExcavHeight, distLastAnchExc, unifLoad, distLoadWall)¶
Bases:
object
Class intended to pre-design a diaphragm wall.
- Variables
digHeight – maximum digging height [m]
phreaticLevel – phreatic level above maximum effective digging height [m]. It will be =0 or negative if phreatic level below maximum excavation level
distAnch – maximum distance between anchors [m] (= 0 or negative if no anchors)
firstExcavHeight – height of the first phase of excavation (cantilever) [m]
distLastAnchExc – distance from the last anchor to the bottom of excavation [m]
unifLoad – uniform load on the ground [kN/m2]
distLoadWall – distance from the back of the wall to the starting point where uniform load in applied [m]
- getEffectDigHeight()¶
Return the maximum effective digging height
- getFffectDistAnch()¶
Return effective distance between anchors
- getWallEmbedmentDepth()¶
Return a pre-designed embedment depth [m]
- getWallThickness()¶
Return a pre-designed diaphragm wall thickness [m]
- printResult()¶
- rough_calculations.predim_diaphragm_wall.side_line(pnt1, pnt2, pnt)¶
function to determine which side of the line from pnt1=(x1,y1) to pnt2=(x2,y2) a point pnt=(x,y) falls on.
All the points that return a value <0 lie on one side of the line and those that return a value >0 lie in the other side (if =0 -> in the line)
Basement wall¶
Routines for cantilever retaining walls design.
- class rough_calculations.ng_retaining_wall.Envelope(yValues)¶
Bases:
object
Store internal forces envelope.
- filterRepeatedValues()¶
Filter repeated values.
- getAbsMaximum()¶
Return the greatest value positive or negative
- getMaximum()¶
Return the maximum of the positive envelope
- getMinimum()¶
Return the minimum of the negative envelope
- update(values)¶
Update envelopes.
- Parameters
values – values to update the current envelope.
- class rough_calculations.ng_retaining_wall.FootingReinforcement(wallGeom, concreteCover, steel)¶
Bases:
rough_calculations.ng_retaining_wall.ReinforcementMap
Footing reinforcement.
- bottomFootingIndex = 7¶
- drawSchema(defStrings)¶
Footing scheme drawing in LaTeX format.
- getSectionFootingBottom()¶
Returns RC section for reinforcement at footing bottom.
- getSectionFootingBottomLongitudinal()¶
Returns RC section for longitudinal reinforcement at footing bottom.
- getSectionTopFooting()¶
Returns RC section for reinforcement on footing top.
- getShearForceAtFootingStemCorner()¶
Return the shear force at the vertical plane that passes through the corner formed by the footing top surface and the stem internal face.
- longBottomFootingIndex = 8¶
- longTopFootingIndex = 9¶
- skinFootingIndex = 10¶
- topFootingIndex = 3¶
- writeResult(outputFile)¶
Write reinforcement verification results in LaTeX format.
- class rough_calculations.ng_retaining_wall.InternalForces(y, ndEnvelope, mdEnvelope, vdEnvelope, NdFooting, MdFooting, VdFooting)¶
Bases:
object
Internal forces for a retaining wall.
- Variables
ndEnvelope – stem axial force design values.
mdEnvelope – stem bending moment design values.
vdEnvelope – stem shear force design values.
NdFooting – footing axial load design value.
MdFooting – footing bending moment design value.
VdFooting – footing shear force design value.
- MdMax(y)¶
Max. bending moment (envelope) at height y.
- Parameters
y – height to compute the shear force at.
- MdMaxEncastrement(footingThickness)¶
Bending moment (envelope) at stem base.
- Parameters
footingThickness – thickness of the footing.
- MdMaxMidStem(footingThickness)¶
Max. bending moment (envelope) at the middle of the stem.
- Parameters
footingThickness – thickness of the footing.
- MdMin(y)¶
Min bending moment (envelope) at height y.
- Parameters
y – height to compute the shear force at.
- MdMinMidStem(footingThickness)¶
Min. bending moment (envelope) at the middle of the stem.
- Parameters
footingThickness – thickness of the footing.
- NdMax(y)¶
Max. axial force (envelope) at height y.
- Parameters
y – height to compute the shear force at.
- NdMaxEncastrement(footingThickness)¶
Bending moment (envelope) at stem base.
- Parameters
footingThickness – thickness of the footing.
- NdMin(y)¶
Max. axial force (envelope) at height y.
- Parameters
y – height to compute the shear force at.
- NdMinEncastrement(footingThickness)¶
Bending moment (envelope) at stem base.
- Parameters
footingThickness – thickness of the footing.
- VdMax(y)¶
Max. shear (envelope) at height y.
- Parameters
y – height to compute the shear force at.
- VdMaxEncastrement(footingThickness, epaisseurEncastrement)¶
Shear force (envelope) at stem base.
- Parameters
epaisseurEncastrement – thickness of the stem bottom.
- VdMaxMidStem(footingThickness)¶
Max. shear (envelope) at the middle of the stem.
- Parameters
footingThickness – thickness of the footing.
- VdMin(y)¶
Min. shear (envelope) at height y.
- Parameters
y – height to compute the shear force at.
- VdMinMidStem(footingThickness)¶
Min. shear (envelope) at the middle of the stem.
- Parameters
footingThickness – thickness of the footing.
- clone()¶
Return a copy of this object.
- getYStem(hCoupe)¶
Return the depth corresponding to the height argument.
- Parameters
hCoupe – height with respect to the footing midplane.
- interpolate()¶
- writeGraphic(fileName)¶
- Draws a graphic of internal forces (envelopes) in
the wall stem.
- Parameters
fileName – name of the output file.
- class rough_calculations.ng_retaining_wall.ReinforcementMap(concreteCover=0.04, steel=None, rebarFamilyTemplate=None)¶
Bases:
dict
Simplified reinforcement for a cantilever retaining wall.
- Variables
concreteCover – concrete cover for rebars.
steel – reinforcement steel type.
rebarFamilyTemplate – reinforcement template.
- getBasicAnchorageLength(index, concrete)¶
Returns basic anchorage length for the reinforcement at “index”.
- Parameters
index – key of the reinforcement bar in this map.
concrete – concrete material.
- getReinforcement(index)¶
Return reinforcement at index.
- Parameters
index – index of the reinforcement to get.
- setReinforcement(index, reinforcement)¶
Set reinforcement.
- Parameters
index – index of the reinforcement to set.
reinforcement – reinforcement to set.
- class rough_calculations.ng_retaining_wall.RetainingWall(name='prb', concreteCover=0.04, stemHeight=2.5, stemBottomWidth=0.25, stemTopWidth=0.25, stemBackSlope=0.0, footingThickness=0.25, bToe=0.5, bHeel=1.0, concrete=None, steel=None, title=None, smoothPrecastFoundation=False)¶
Bases:
model.geometry.retaining_wall_geometry.CantileverRetainingWallGeometry
Cantilever retaining wall.
- Variables
b – wall lenght (defaults to 1.0).
numberOfStemSets – number of element sets along the stem height.
stemBottomWidth – (float) Stem width at his contact with the footing.
stemTopWidth – (float) Stem width at his top.
stemBackSlope – (float) Stem back slope expressed as H/V ratio.
footingThickness – (float) Thickness of the footing.
smoothPrecastFoundation – true if the wall has a precast foundation with a smooth contact with the soil.
- b = 1.0¶
- clearFEProblem()¶
- createBackfillPressures(pressureModel, Delta=0.0, beta=0)¶
Create backfill earth pressures over the wall.
- Parameters
pressureModel – (obj) earth pressure model for the backfill.
Delta – angle of the earth pressure with respect to the stem back face.
beta – slope inclination of backfill.
- createConcreteSectionDistribution()¶
Define spatial distribution of reinforced concrete sections from the properties assingned to the elements.
- createDeadLoad(heelFillDepth, toeFillDepth, rho=2000, grav=9.80665)¶
Create the loads of earth self weigth.
- Parameters
heelFillDepth – depth of the fill that rests on the wall heel.
toeFillDepth – depth of the fill that rests on the wall toe.
rho – density of the concrete material.
grav – gravitational acceleration.
- createEarthPressureLoadOnHeelEnd(pressureModel, Delta=0.0)¶
- Create the loads of the earth pressure over the vertical face
at the end of the heel.
- Parameters
pressureModel – (obj) earth pressure model.
Delta – angle of the earth pressure with respect to the stem back face.
- createEarthPressureLoadOnStem(pressureModel, vDir=<xc.Vector object>, Delta=0.0)¶
Create the loads of the earth pressure over the stem.
- Parameters
pressureModel – (obj) earth pressure model.
vDir – (xc.Vector) direction for the pressures.
Delta – angle of the earth pressure with respect to the stem back face.
- createEarthPressureLoadOnToeEnd(pressureModel)¶
Create the loads of the earth pressure over the vertical face at the end of the toe.
- Parameters
pressureModel – (obj) earth pressure model.
- createFEProblem(title)¶
Create finite element problem.
- createFrontFillPressures(pressureModel, Delta=0.0)¶
Create front fill earth pressures over the wall.
- Parameters
pressureModel – (obj) earth pressure model for the backfill.
Delta – angle of the earth pressure with respect to the stem back face.
- createLinearElasticFEModel(prbName, kS)¶
Create a linear elastic FE model.
- Parameters
prbName – name of the finite element problem.
kS – subgrade reaction modulus.
- createLoadOnTopOfStem(loadVector)¶
Create a load acting on the node at the top of the stem.
- Parameters
loadVector – (vector) vector defining the load.
- createPressuresFromLoadOnBackfill(loadOnBackfill, Delta=0.0)¶
- Create the pressures on the stem and on the heel dues to
a load acting on the backfill.
- Parameters
loadOnBackfill – (obj) load acting on the backfill.
Delta – angle of the earth pressure with respect to the stem back face.
- createSelfWeightLoads(rho=2500, grav=9.80665)¶
Create the loads of the concrete weight.
- Parameters
rho – density of the concrete material.
grav – gravitational acceleration.
- createVerticalLoadOnHeel(loadOnBackfill)¶
Create the loads over the heel dues to a load acting on the backfill.
- Parameters
loadOnBackfill – (obj) load acting on the backfill.
- drawSchema(pth)¶
Retaining wall scheme drawing in LaTeX format.
- Parameters
pth – path for the output file.
- genMesh(springMaterials)¶
Generate finite element mesh.
- Parameters
springMaterials – spring materials for foundation winkler model.
- getAdmissiblePressureSafetyFactor(R, sg_adm)¶
Return the factor of safety against bearing capacity of the soil.
- Parameters
R – force on the bearing plane.
q_adm – (float) admissible bearing pressure.
- getBearingPressure(R)¶
Return the bearing pressure.
- Parameters
R – force on the bearing plane.
- getBearingPressureSafetyFactor(R, foundationSoilModel, toeFillDepth, gammaR=1.0, q=0.0, NgammaCoef=2.0)¶
Return the factor of safety against bearing capacity of the soil.
- Parameters
R – force on the bearing plane.
foundationSoilModel – soil model for the Brinch-Hansen analysis.
toeFillDepth – (float) depht of the soil filling over the toe.
gammaR – partial factor for bearing resistance.
q – (float) overburden uniform load over the foundation plane.
NgammaCoef – Coefficient to compute Ngamma value with the Brinch-Hansen formulas (see FrictionalCohesiveSoil class).
- getEccentricity(R)¶
Return the eccenctricity of the loads acting on the retaining wall.
- Parameters
R – (SlidingVectorsSystem3d) resultant of the loads acting on the retaining wall.
- getEnvelopeInternalForces(envelopeNd, envelopeMd, envelopeVd, envelopeNdHeel, envelopeMdHeel, envelopeVdHeel)¶
- getFoundationReinforcement()¶
Return the reinforcement of the foundation in the form of LongReinfLayers objects that will be used the check the reinforcement of the finite elements.
- getFoundationRotation()¶
Returns the rotation of the foundation.
- getFoundationSections()¶
Create the XC section material for the foundation.
- getHeelEndNode()¶
Return the node at the heel end.
- getHeelEndNodePosition()¶
Return the position of the node at the heel end.
- getHeelInternalForces()¶
Return the minimum axial force and the maximum bending moment and shear force at the wall heel.
- getMononobeOkabeDryOverpressure(backfillModel, kv, kh, delta_ad=0, beta=0, Kas=None, g=9.80665)¶
Return overpressure due to seismic action according to Mononobe-Okabe
- Parameters
backfillModel – back fill terrain model
kv – seismic coefficient of vertical acceleration.
kh – seismic coefficient of horizontal acceleration.
delta_ad – angle of friction soil - structure.
beta – slope inclination of backfill.
- getOverturningSafetyFactor(R, gammaR)¶
Return the factor of safety against overturning.
- Parameters
R – (SlidingVectorsSystem3d) resultant of the loads acting on the retaining wall.
gammaR – (float) partial resistance reduction factor.
- getReactions()¶
Return the reactions on the foundation.
- getSlidingSafetyFactor(R, gammaR, foundationSoilModel, ignoreAdhesion=True)¶
Return the factor of safety against sliding.
- Parameters
R – (SlidingVectorsSystem3d) resultant of the loads acting on the retaining wall.
gammaR – partial resistance reduction factor.
foundationSoilModel – (FrictionalCohesiveSoil) soil model.
ignoreAdhesion – if true don’t consider the adhesion of the foundation to the soil.
- getStemInternalForces()¶
- getStemReinforcement()¶
Return the reinforcement of the wall stem in the form of LongReinfLayers objects that will be used the check the reinforcement of the finite elements.
- getStemSections(y)¶
Create the XC section material for the foundation.
- Parameters
y – distance from the top of the stem.
- getStemTopNode()¶
Return the node at the top of the stem.
- getStemYCoordinates()¶
- getToeEndNode()¶
Return the node at the toe end.
- getToeEndNodePosition()¶
Return the position of the node at the toe end.
- numberOfStemSets = 4¶
- performGEOVerifications(combinations, foundationSoilModel, toeFillDepth, gammaRSliding, gammaRBearing, sg_adm=None, ignoreAdhesion=True, NgammaCoef=2.0)¶
Perform stability limit state analysis.
- Parameters
combinations – load combinations to use in the analysis.
foundationSoilModel – model of the foundation soil.
toeFillDepth – depth of the fill that rests on the wall toe.
gammaRSliding – partial factor for sliding resistance.
gammaRBearing – partial factor for bearing resistance.
sg_adm – admissible stress of the terrain (optional).
ignoreAdhesion – if true don’t consider the adhesion of the foundation to the soil for sliding resistance.
- performSLSAnalysis(combinations)¶
Perform serviceability limit state analysis.
- Parameters
combinations – load combinations to use in the analysis.
- performStabilityAnalysis(combinations, foundationSoilModel, toeFillDepth, sg_adm=None, ignoreAdhesion=True, NgammaCoef=2.0)¶
Perform stability limit state analysis.
- Parameters
combinations – load combinations to use in the analysis.
foundationSoilModel – model of the foundation soil.
toeFillDepth – depth of the fill that rests on the wall toe.
sg_adm – admissible stress of the terrain (optional).
ignoreAdhesion – if true don’t consider the adhesion of the foundation to the soil for sliding resistance.
NgammaCoef – Coefficient to compute Ngamma value with the Brinch-Hansen formulas (see FrictionalCohesiveSoil class). See also D.4 in EC7 part 1.
- performULSAnalysis(combinations)¶
Perform ultimate limit state analysis.
- Parameters
combinations – load combinations to use in the analysis.
- resultComb(nmbComb)¶
Solution and result retrieval routine.
- setSLSInternalForcesEnvelope(wallInternalForces)¶
- Assigns the serviceability limit state infernal forces envelope
for the stem.
- Parameters
wallInternalForces – container for the wall internal forces.
- setULSInternalForcesEnvelope(wallInternalForces)¶
- Assigns the ultimate limit state infernal forces envelope
for the stem.
- Parameters
wallInternalForces – container for the wall internal forces.
- transferReinforcementToFEModel()¶
Transfer the reinforcement definition in foundationReinforcement and stemReinforcement to the corresponding properties of the model elements.
- writeDef(pth: str, outputFile, includeGraphicsPath: str, convertToEPS=False)¶
Write wall definition in LaTeX format.
- Parameters
pth – output path.
outputFile – LaTeX output file.
includeGraphicsPath – path for the includegraphics LaTeX command.
convertToEPS – if true, create a postscript version of the graphic output.
- writeResult(pth: str, includeGraphicsPath=None, convertToEPS=False)¶
Write reinforcement verification results in LaTeX format.
- Parameters
pth – output path.
includeGraphicsPath – path for the includegraphics LaTeX command.
convertToEPS – if true, create a postscript version of the graphic output.
- writeStrengthResults(outputFile)¶
Write reinforced concrete strength results.
- Parameters
outputFile – LaTeX output file.
- class rough_calculations.ng_retaining_wall.StemReinforcement(wallGeom, concreteCover, steel)¶
Bases:
rough_calculations.ng_retaining_wall.ReinforcementMap
Stem reinforcement.
- drawSchema(defStrings)¶
Stem data for wall scheme drawing in LaTeX format.
- extStemBottomIndex = 1¶
- extStemIndex = 2¶
- getSectionExtStemBottom()¶
Returns RC section for exterior reinforcement at stem bottom.
- getSectionIntStemBottom()¶
Returns RC section for interior reinforcement at stem bottom.
- getSectionStem(y, reinforcementIndex)¶
Returns RC section of the stem.
- Parameters
y – depth of the section.
reinforcementIndex – index of the reinforcement for the section.
- getSectionStemLongExt()¶
Returns RC section for longitudinal reinforcement in stem exterior.
- getSectionStemLongInt()¶
Returns RC section for longitudinal reinforcement in stem interior.
- getSectionStemTop()¶
Returns RC section for reinforcement at stem top.
- getStemMemberType()¶
Return the member type of the stem (‘wall’ or ‘short wall’) depending on the joint spacing.
- getYExtReinfChange()¶
Returns the depth where the exterior reinforcement of the stem chantes.
- intStemBottomIndex = 4¶
- intStemIndex = 5¶
- longExtStemIndex = 11¶
- longIntStemIndex = 12¶
- topSkinIndex = 13¶
- topStemIndex = 6¶
- writeResult(outputFile)¶
Write stem reinforcement verification results in LaTeX format.
- class rough_calculations.ng_retaining_wall.WallSLSResults(internalForces, rotation, rotationComb)¶
Bases:
rough_calculations.ng_retaining_wall.WallULSResults
Results for the serviceability limit state checking.
- writeOutput(outputFile, name)¶
Write results in LaTeX format.
- class rough_calculations.ng_retaining_wall.WallStabilityResults(wall, combinations, foundationSoilModel, toeFillDepth, sg_adm=None, gammaRSliding=1.0, gammaRBearing=1.0, ignoreAdhesion=True, NgammaCoef=2.0)¶
Bases:
object
Results of the wall stability analysis.
- getDegreeOfUtilizationForAdmissiblePressure()¶
Return the degree of utilization obtained in the verification of resistance to sliding.
- getDegreeOfUtilizationForBearingResistance()¶
Return the degree of utilization obtained in the verification of bearing resistance.
- getDegreeOfUtilizationForOverturning()¶
Return the degree of utilization obtained in the verification of resistance to overturning.
- getDegreeOfUtilizationForSliding()¶
Return the degree of utilization obtained in the verification of resistance to sliding.
- getWorstCombinationForAdmissiblePressure()¶
Return the worst case for the verification of admissible pressure.
- getWorstCombinationForBearingResistance()¶
Return the worst case for the verification of bearing resistance.
- getWorstCombinationForOverturning()¶
Return the worst case for the verification for overturning.
- getWorstCombinationForSliding()¶
Return the worst case for the verification of resistance to sliding.
- writeOutput(outputFile, name)¶
Write results in LaTeX format.
- Parameters
outputFile – output file.
name – wall name.
- class rough_calculations.ng_retaining_wall.WallULSResults(internalForces)¶
Bases:
object
Results for the ultimate limit state checking.
- rough_calculations.ng_retaining_wall.filterRepeatedValues(yList, mList, vList)¶
- Filter values that are repeated
in the list.
- Parameters
yList – list of y coordinates.
mList – list of corresponding bending moments.
vList – list of corresponding shear forces.
Simple beam¶
Simple beam formulas.
- class rough_calculations.ng_simple_beam.SimpleBeam(E: float = 1.0, I: float = 1.0, l: float = 1.0)¶
Bases:
rough_calculations.ng_beam.Beam
Beam pinned in both ends.
- computeDeflection(x, M)¶
Compute the deflection in x due to bending moment M.
- Parameters
x – abscissa.
M – bending moment function.
- computeDeflectionValues(xi, M)¶
Compute the increment of rotation values in sample points.
- Parameters
xi – sample points.
M – bending moment function.
n – number of divisions.
- getBendingMomentUnderConcentratedLoad(P, a, x)¶
Return the bending moment under concentrated load.
- Parameters
P – value of the concentrated load.
a – position of the load.
x – position of the section.
- getBendingMomentUnderUniformLoad(q, x)¶
Return the bending moment under uniform load.
- Parameters
q – value of the uniform load.
x – position of the section.
- getBendingMomentUnderUniformLoadPartiallyDistributed(q, a, b, x)¶
- Return the bending moment at x when the beam is submitted to a
uniform partially distributed load.
- Parameters
q – value of the uniform load.
a – distance from the left support to the beginning of the load.
b – length of the partial uniform load.
x – position of the section.
- getDeflectionUnderConcentratedLoad(P, a, x)¶
Return the deflection under concentrated load.
- Parameters
P – value of the concentrated load.
a – position of the load.
x – position of the section.
- getDeflectionUnderUniformLoad(q, x)¶
Return the deflection under uniform load.
- Parameters
q – value of the uniform load.
x – position of the section.
- getFundamentalBendingFrequencies(numModes, linearRho)¶
Return the fundamental bending frequencies of the beam.
- Parameters
numModes – number of oscillation modes to compute.
linearRho – mass density per unit length.
- getReaction1UnderConcentratedLoad(P, a)¶
Return the reaction at left support under concentrated load.
- Parameters
P – value of the concentrated load.
a – position of the load.
- getReaction1UnderUniformLoadPartiallyDistributed(q, a, b)¶
Return the reaction on the left support when the beam is submitted to a uniform partially distributed load.
- Parameters
q – value of the uniform load.
a – distance from the left support to the beginning of the load.
b – length of the partial uniform load.
- getReaction2UnderConcentratedLoad(P, a)¶
Return the reaction at right support under concentrated load.
- Parameters
P – value of the concentrated load.
a – position of the load.
- getReaction2UnderUniformLoadPartiallyDistributed(q, a, b)¶
Return the reaction on the right support when the beam is submitted to a uniform partially distributed load.
- Parameters
q – value of the uniform load.
a – distance from the left support to the beginning of the load.
b – length of the partial uniform load.
- getReactionUnderUniformLoad(q)¶
Return the reaction under uniform load.
- Parameters
q – value of the uniform load.
- getShearUnderConcentratedLoad(P, a, x)¶
Return the shear under concentrated load.
- Parameters
P – value of the concentrated load.
a – position of the load.
x – position of the section.
- getShearUnderUniformLoad(q, x)¶
Return the shear value at x.
- Parameters
q – value of the uniform load.
x – position of the section.
- getShearUnderUniformLoadPartiallyDistributed(q, a, b, x)¶
- Return the shear force at x when the beam is submitted to a
uniform partially distributed load.
- Parameters
q – value of the uniform load.
a – distance from the left support to the beginning of the load.
b – length of the partial uniform load.
x – position of the section.
Simple bending reinforcement¶
Simplified routines for design reinforced concrete elements.
- rough_calculations.ng_simple_bending_reinforcement.AsSimpleBending(M, fcd, fsd, b, d, c_depth=0.85)¶
- Return the required reinforcement for a rectangular section
subjected to simple bending.
- Parameters
M – bending moment to resist.
fcd – concrete design compressive strength (absolute value).
fsd – steel design yield strength.
b – section width.
d – section depth.
c_depth – depth of the concrete rectangular compression block (see figure 12 SIA 262:2013 or figure 39.5b of clause 39.5 b of EHE).
- rough_calculations.ng_simple_bending_reinforcement.Mlim(fcd, b, d)¶
- rough_calculations.ng_simple_bending_reinforcement.Mu(As, fcd, fsd, b, d, z=None, c_depth=0.85)¶
Return the ultimate bending moment of a rectangular section.
- Parameters
As – reinforcement area.
fcd – concrete design compressive strength.
fsd – steel design yield strength.
b – section width.
d – section effective depth.
z – inner lever arm (if None z= 0.9*d).
c_depth – depth of the concrete rectangular compression block (see figure 12 SIA 262:2013 or figure 39.5b or clause 39.5 b of EHE)
- rough_calculations.ng_simple_bending_reinforcement.neutralFiberDepth(M, fcd, b, d, c_depth=0.85)¶
Return the depth of the neutral fiber in a rectangular section.
- Parameters
M – bending moment.
fcd – concrete design compressive strength.
b – section width.
d – section effective depth.
c_depth –
depth of the concrete rectangular compression block (see figure 12 SIA 262:2013 or figure 39.5b or
clause 39.5 b of EHE)
Tied arch simple model¶
- class rough_calculations.tied_arch_simple_model.TiedArchBridgeRoughModel(L, d)¶
Bases:
rough_calculations.arch_bridge_rough_base.ArchBridgeRoughModelBase
Tied Arch bridge simple model
- Variables
d – rise (depth) of the arch at midspan
L – horizontal distance between supports
- getAxialForceArch(qunif)¶
Compressive axial force in the arch due to a uniform load.
- Parameters
qunif – uniformly distributed load applied on the deck
- getQunfCompStress(qunif, A)¶
Approximation of the compressive stress in a section of the arch with area=A, due to a uniform load qunif.
- getTensionDeck(qunif)¶
Tension in the deck tie due to a uniform load.
- Parameters
qunif – uniformly distributed load applied on the deck
Pile cap¶
Two pile cap design according to clause 58.4.1.2.1 of EHE-08.
- class rough_calculations.ng_pile_cap.TwoPileCap(pileDiameter, mainReinfDiameter, reinfSteel, h=None, b=None, l=None, d=None, a=0.0, corbelLength=0.25)¶
Bases:
object
Cap for a group of two piles.
- Variables
pileDiameter – Diameter of the pile.
mainReinfDiameter – diameter of the main reinforcement.
h – depth of the pile cap.
l – length of the pile cap.
b – width of the pile cap.
d – distance between piles.
a – width of the supported column.
corbelLength – length of the corbel (minimum distance from the pile contour to the pile cap contour).
- getAlpha()¶
Return the angle between the concrete compressed struts and the horizontal according to figure 58.4.1.2.1.1.a of EHE-08.
- getBottomReinforcementReqArea(Nd)¶
Return the required area for the main reinforcement.
- Parameters
Nd – design value of the axial load.
- getEffectiveDepth()¶
Return the effective depth of the pile cap.
- getHorizontalStirrupsReqArea()¶
Return the area of the required horizontal reinforcement. (ver números gordos HC.9 page 33).
- getShearReinforcementReqArea()¶
Devuelve el área de reinforcement necesaria para los cercos verticales de un encepado de DOS pilotes (ver números gordos HC.9 page 33).
- getSuitableDepth()¶
Return a suitable value for the depth of the pile cap.
- getSuitableDistanceBetweenPiles()¶
Return a suitable value for the distance between piles.
- getSuitableLength()¶
Return a suitable value for the length of the pile cap.
- getSuitableWidth()¶
Return a suitable value for the width of the pile cap.
- getTensionOnBottomReinforcement(Nd)¶
Returns the tension in the inferior reinforcement of the pile cap.
- Parameters
Nd – design value of the axial load.
- getTopReinforcementReqArea(Nd)¶
- Return the required area for the main reinforcement according
to clause 58.4.1.2.1.2 of EHE-08.
- Parameters
Nd – design value of the axial load.
Pile¶
Two pile cap design according to clause 58.4.1.2.1 of EHE-08.
- class rough_calculations.ng_pile_cap.TwoPileCap(pileDiameter, mainReinfDiameter, reinfSteel, h=None, b=None, l=None, d=None, a=0.0, corbelLength=0.25)¶
Bases:
object
Cap for a group of two piles.
- Variables
pileDiameter – Diameter of the pile.
mainReinfDiameter – diameter of the main reinforcement.
h – depth of the pile cap.
l – length of the pile cap.
b – width of the pile cap.
d – distance between piles.
a – width of the supported column.
corbelLength – length of the corbel (minimum distance from the pile contour to the pile cap contour).
- getAlpha()¶
Return the angle between the concrete compressed struts and the horizontal according to figure 58.4.1.2.1.1.a of EHE-08.
- getBottomReinforcementReqArea(Nd)¶
Return the required area for the main reinforcement.
- Parameters
Nd – design value of the axial load.
- getEffectiveDepth()¶
Return the effective depth of the pile cap.
- getHorizontalStirrupsReqArea()¶
Return the area of the required horizontal reinforcement. (ver números gordos HC.9 page 33).
- getShearReinforcementReqArea()¶
Devuelve el área de reinforcement necesaria para los cercos verticales de un encepado de DOS pilotes (ver números gordos HC.9 page 33).
- getSuitableDepth()¶
Return a suitable value for the depth of the pile cap.
- getSuitableDistanceBetweenPiles()¶
Return a suitable value for the distance between piles.
- getSuitableLength()¶
Return a suitable value for the length of the pile cap.
- getSuitableWidth()¶
Return a suitable value for the width of the pile cap.
- getTensionOnBottomReinforcement(Nd)¶
Returns the tension in the inferior reinforcement of the pile cap.
- Parameters
Nd – design value of the axial load.
- getTopReinforcementReqArea(Nd)¶
- Return the required area for the main reinforcement according
to clause 58.4.1.2.1.2 of EHE-08.
- Parameters
Nd – design value of the axial load.
Isolated footing¶
- class rough_calculations.ng_isolated_footing.IsolatedFooting(B, Nk=10000.0, Sadm=150000.0, FiArmPilar=0.012, Lpilar=0.5)¶
Bases:
object
Rough design of isolated footing.
- Variables
B – Footing side dimension (m)
Nk – Characteristic value of axial load in pillar (N).
FiArmPilar – Column main rebars diameter (m)
Lpilar – Column depth (m)
- getLaTeXHeader()¶
- getLaTeXResults()¶
- getNearSlopeReductionFactor(beta, d)¶
- Coefficient of reduction of bearing capacity for pinned supported
footing near a slope. Expression proposed by Corté and Garnier (1994)
- Parameters
beta – slope angle
d – horizontal distance between the slope and the nearest
foundation edge.
- getReport()¶
Suspension bridge simple model¶
- class rough_calculations.suspension_bridge_simple_model.SuspensionBridgeRoughModel(sag, da, Lm, Lb)¶
Bases:
object
Suspension bridge simple model
- getCableAxialForceAtMidSpan(q)¶
Returns the axial force of the cable at the tower
- getCableAxialForceAtTower(q)¶
Returns the axial force of the cable at the tower
- getCableSlopeAtTower(q)¶
Returns the slope (angle) of the cable at the tower
- getHb(q)¶
Horizontal reaction at tower due to the back span.
- getHm(q)¶
Horizontal reaction at tower due to the main span.
- getVanchor(q)¶
Vertical reaction at anchor.
- getVb(q)¶
Vertical reaction at tower due to the main span.
- getVm(q)¶
Vertical reaction at tower due to the main span.
Minimal dimension of abutment support¶
dimension of abutment support to avoid the risk of bridge deck falling during a quake. See “Évaluation parasismique des ponts-routes existants (2005)” Office féderal des routes page 48).
https://doi.org/10.3929/ethz-a-005077557
- rough_calculations.ng_min_dim_of_abutment_support.getBminPontAppuiFixe(l, a, soilClass, quakeZone, bridgeClass)¶
Returns the minimal dimension of abutment support to avoid the risk of bridge deck falling during a quake. See “Évaluation parasismique des ponts-routes existants” Office féderal des routes page 49). l: Deck length. (Distance between free and fixed abutments). a: expansion joint gap soilClass: A, B, C, D or E. quakeZone: ZI, ZII, ZIIa, ZIIIb bridgeClass: COI, COII, COIII
- rough_calculations.ng_min_dim_of_abutment_support.getBminPontFlotant(dAbutFixedPoint, soilClass, quakeZone, bridgeClass)¶
Returns the minimal dimension of abutment support to avoid the risk of bridge deck falling during a quake. See “Évaluation parasismique des ponts-routes existants” Office féderal des routes page 48).
- Parameters
dAbutFixedPoint – Distance between the abutment and the fixed point.
soilClass – A, B, C, D or E.
quakeZone – ZI, ZII, ZIIa, ZIIIb
bridgeClass – COI, COII, COIII
- rough_calculations.ng_min_dim_of_abutment_support.getLg(soilClass)¶
- Length lg for securing against falling, depending on the foundation
ground class. Accoding to table 6.2 of the OFROU document. For a length greater than de distance “lg” the soil mouvement can be considered as completely uncorrelated.
- Parameters
soilClass – A, B, C, D or E.
- rough_calculations.ng_min_dim_of_abutment_support.getUgd(soilClass, quakeZone, bridgeClass)¶
Returns the design value for soil displacement.
- Parameters
soilClass – A, B, C, D or E.
quakeZone – ZI, ZII, ZIIa, ZIIIb
bridgeClass – COI, COII, COIII
Earth pressure¶
Profile mechanical properties¶
- rough_calculations.profile_mechanical_prop.Iprofile(h, b, tw, tf, r)¶
print(mechanical properties of an I-shaped profile)
Z: strong axis
Y: weak axis
- Parameters
h – height
b – widht
tw – web thickness
tf – flange thickness
r – radius