Esempio n. 1
0
 def __init__(self, preprocessor, sectName, sectDescr, concrete, rfSteel,
              concrDiag, rfStDiag, geomSection, width, depth):
     self.concrete = concrete
     self.rfSteel = rfSteel
     self.geomSection = geomSection
     self.sectName = sectName
     self.sectDescr = sectDescr
     self.concrete = concrete
     self.rfSteel = rfSteel
     self.concrDiag = concrDiag
     self.rfStDiag = rfStDiag
     self.width = width
     self.depth = depth
     self.JTorsion = self.scc.getJTorsion()
     self.shReinfY = sHAs.RecordShearReinforcement()
     self.shReinfY.familyName = "Vy"
     self.shReinfZ = sHAs.RecordShearReinforcement()
     self.shReinfZ.familyName = "Vz"
     self.Ec = self.concrete.Ecm()
     self.Es = self.rfSteel.Es
     self.regions = self.geomSection.getRegions
     self.tangConcr = self.concrDiag.getTangent()
     self.GB = self.geomSection.getCdgGrossSection()
     self.AB = self.geomSection.getAreaGrossSection()
     self.IyB = self.geomSection.getIyGrossSection()
     self.IzB = self.geomSection.getIzGrossSection()
     self.PyzB = self.geomSection.getPyzGrossSection()
     self.reinforcement = self.geomSection.getReinfLayers  #ListReinfLayer
     self.tangSteel = self.rfStDiag.getTangent()
     self.areaMainReinforcement = self.reinforcement.getAreaGrossSection()
     self.cover = self.reinforcement.getCover
     self.lista_fams_reinforcement = []
     for f in self.reinforcement:
         datosFam = RecordFamMainReinforcement(f)
         self.lista_fams_reinforcement.append(datosFam)
     self.GH = self.geomSection.getCdgHomogenizedSection(
         self.tangConcr)  # Center of gravity of the homogenized section
     self.AH = self.geomSection.getAreaHomogenizedSection(
         self.tangConcr)  # Area of the homogenized section
     self.IyH = self.geomSection.getIyHomogenizedSection(
         self.tangConcr)  # Inertia tensor of homogenized section.
     self.IzH = self.geomSection.getIzHomogenizedSection(self.tangConcr)
     self.PyzH = self.geomSection.getPyzHomogenizedSection(self.tangConcr)
Esempio n. 2
0
    elemSetName='murAligV2')
#D1: horizontal rebars
#D2: vertical rebars
#positiv: top face
#negativ: bottom face
# murAligV2RCSects.dir1PositvRebarRows=[rcs.rebLayer(8,200,rnom+12)]
# murAligV2RCSects.dir2PositvRebarRows=[rcs.rebLayer(16,200,rnom)]
# murAligV2RCSects.dir1NegatvRebarRows=[rcs.rebLayer(8,200,rnom+12)]
# murAligV2RCSects.dir2NegatvRebarRows=[rcs.rebLayer(16,200,rnom)]
murAligV2RCSects.dir1PositvRebarRows = [rcs.rebLayer(8, 200, rnom + 12)]
murAligV2RCSects.dir2PositvRebarRows = [rcs.rebLayer(8, 200, rnom)]
murAligV2RCSects.dir1NegatvRebarRows = [rcs.rebLayer(8, 200, rnom + 12)]
murAligV2RCSects.dir2NegatvRebarRows = [rcs.rebLayer(8, 200, rnom)]
shear2 = rcs.RecordShearReinforcement(familyName="shear2",
                                      nShReinfBranches=2.0,
                                      areaShReinfBranch=areaFi16,
                                      shReinfSpacing=0.10,
                                      angAlphaShReinf=math.pi / 2.0,
                                      angThetaConcrStruts=math.pi / 4.0)
murAligV2RCSects.dir2ShReinfY = shear2

pilasInfRCSects = rcs.RecordRCSlabBeamSection(
    name='pilasInfRCSects',
    sectionDescr='pilas, zona inferior ',
    concrType=concrete,
    reinfSteelType=reinfSteel,
    width=lRectEqPila,
    depth=lRectEqPila,
    elemSetName='pilasInf')
#comprobación a cortante
#pilasInfRCSects= rcs.RecordRCSlabBeamSection(name='pilasInfRCSects',sectionDescr='pilas ',concrType=concrete, reinfSteelType=reinfSteel,width=1.0,depth=lRectEqPila**2,elemSetName='pilasInf')
#D1: cara dorsal
Esempio n. 3
0
                                           areaRebar=areaFi10,
                                           rebarsSpacing=0.20,
                                           width=BCheight,
                                           nominalCover=coverForAll)
layer4.nRebars = 5
layer5 = defSimpleRCSection.MainReinfLayer(rebarsDiam=10e-3,
                                           areaRebar=areaFi10,
                                           rebarsSpacing=0.20,
                                           width=BCheight,
                                           nominalCover=coverForAll + 0.15)
layer5.nRebars = 6

shear1 = defSimpleRCSection.RecordShearReinforcement(
    familyName="sh1",
    nShReinfBranches=2.0,
    areaShReinfBranch=areaFi8,
    shReinfSpacing=0.15,
    angAlphaShReinf=math.pi / 2.0,
    angThetaConcrStruts=math.pi / 4.0)

#end auxiliar data
botColRCSects.dir1PositvRebarRows = [layer1, layer2, layer3, layer4, layer5]
botColRCSects.dir1NegatvRebarRows = [layer1, layer2, layer4, layer5]
botColRCSects.dir2PositvRebarRows = [layer1, layer2, layer3, layer4, layer5]
botColRCSects.dir2NegatvRebarRows = [layer1, layer2, layer4, layer5]
botColRCSects.dir1ShReinfY = shear1
botColRCSects.dir1ShReinfZ = shear1
botColRCSects.dir2ShReinfY = shear1
botColRCSects.dir2ShReinfZ = shear1

botColRCSects.creaTwoSections()
Esempio n. 4
0
from materials.sections.fiber_section import defSimpleRCSection as rcs


#instances of rcs.RecordRCSlabBeamSection that define the
#variables that make up THE TWO reinforced concrete sections in the two
#reinforcement directions of a slab or the front and back ending sections
#of a beam element

deckRCSects= rcs.RecordRCSlabBeamSection(name='deckRCSects',sectionDescr='slab of shell elements',concrType=concrete, reinfSteelType=reinfSteel,depth=deckTh,elemSetName=decks.name)  
deckRCSects.dir1PositvRebarRows=[rcs.rebLayer(12,150,35)]
deckRCSects.dir1NegatvRebarRows=[rcs.rebLayer(12,200,35)]
deckRCSects.dir2PositvRebarRows=[rcs.rebLayer(16,250,35)]
deckRCSects.dir2NegatvRebarRows=[rcs.rebLayer(16,100,35)]
import math
areaFi8=math.pi*0.008**2/4.
shear1=rcs.RecordShearReinforcement(familyName= "shear1",nShReinfBranches= 1.0,areaShReinfBranch= areaFi8,shReinfSpacing= 0.20,angAlphaShReinf= math.pi/2.0,angThetaConcrStruts= math.radians(30))
shear2=rcs.RecordShearReinforcement(familyName= "shear2",nShReinfBranches= 1.0,areaShReinfBranch= areaFi8,shReinfSpacing= 0.15,angAlphaShReinf= math.pi/2.0,angThetaConcrStruts= math.radians(30))
deckRCSects.dir1ShReinfY=shear1
deckRCSects.dir2ShReinfY=shear2


footRCSects= rcs.RecordRCSlabBeamSection(name='footRCSects',sectionDescr='footation',concrType=concrete, reinfSteelType=reinfSteel,depth=footTh,elemSetName=foot.name)
#D1: transversal rebars
#D2: longitudinal rebars
footRCSects.dir1PositvRebarRows=[rcs.rebLayer(12,150,35)]
footRCSects.dir1NegatvRebarRows=[rcs.rebLayer(12,150,35)]
footRCSects.dir2PositvRebarRows=[rcs.rebLayer(16,150,35)]
footRCSects.dir2NegatvRebarRows=[rcs.rebLayer(16,150,35)]

wallRCSects= rcs.RecordRCSlabBeamSection(name='wallRCSects',sectionDescr='wall of shell elements',concrType=concrete, reinfSteelType=reinfSteel,depth=wallTh,elemSetName=wall.name)  
wallRCSects.dir1PositvRebarRows=[rcs.rebLayer(20,200,35)]
Esempio n. 5
0
reinfSteel = ACI_materials.A615G60
reinfSteel.gammaS = 1.0 / 0.75

lSqrtFck = concrete.getLambdaSqrtFck()
lSqrtFckRef = 63.246 * ACI_materials.toPascal
ratio1 = abs(lSqrtFck - lSqrtFckRef) / lSqrtFckRef

bw = 12 * 0.0254  # 12 in
d = 15 * 0.0254  # 15 in
section = defSimpleRCSection.RecordRCSimpleSection(name='test',
                                                   concrType=concrete,
                                                   reinfSteelType=reinfSteel,
                                                   width=bw,
                                                   depth=d / 0.9)
section.shReinfY = defSimpleRCSection.RecordShearReinforcement(
    nShReinfBranches=1.0,
    areaShReinfBranch=0.592 * 0.0254**2,
    shReinfSpacing=1.0 * 0.3048)
shearController = lsc.ShearController(lsd.shearResistance.label)
shearController.setSection(section)

Vc = shearController.getVcNoShearRebars(Nd=0.0)
VcRef = 17.076 * 4.4482216e3 / 0.75  # kip->N
ratio2 = abs(Vc - VcRef) / VcRef

Vmax = shearController.getV_max(Nd=0.0)
VmaxRef = 85.381 * 4.4482216e3
ratio3 = abs(Vmax - VmaxRef) / VmaxRef

ratio4 = abs(0.0004774184 - section.shReinfY.getAs() *
             shearController.effectiveDepth) / 0.0004774184
Esempio n. 6
0
#of a beam element

dintExtRCSects = defSimpleRCSection.RecordRCSlabBeamSection(
    name='dintExtRCSects',
    sectionDescr='dintel, zona extremos',
    concrType=concrete,
    reinfSteelType=reinfSteel,
    depth=deckTh)
dintExtRCSects.dir1PositvRebarRows = [fi12s150r80]  #long. sup.
dintExtRCSects.dir1NegatvRebarRows = [fi16s150r85]  #long. inf.
dintExtRCSects.dir2PositvRebarRows = [fi20s200r60]  #transv.sup
dintExtRCSects.dir2NegatvRebarRows = [fi25s200r60]  #transv.inf
sh1 = defSimpleRCSection.RecordShearReinforcement(
    familyName="sh1",
    nShReinfBranches=4.0,
    areaShReinfBranch=areaFi8,
    shReinfSpacing=0.25,
    angAlphaShReinf=math.radians(90),
    angThetaConcrStruts=math.radians(30))
dintExtRCSects.dir2ShReinfY = sh1

dintExtRCSects.creaTwoSections()
sections.append(dintExtRCSects)

dintCentRCSects = defSimpleRCSection.RecordRCSlabBeamSection(
    name='dintCentRCSects',
    sectionDescr='dintel, zona central',
    concrType=concrete,
    reinfSteelType=reinfSteel,
    depth=deckTh)
dintCentRCSects.dir1PositvRebarRows = [fi12s150r76]  #long. sup.
Esempio n. 7
0
                                           sectionDescr='pilas',
                                           concrType=concrete,
                                           reinfSteelType=reinfSteel,
                                           width=lRectEqPila,
                                           depth=lRectEqPila,
                                           elemSetName='pilas')

pilasRCSects.dir1PositvRebarRows = [rcs.rebLayer_mm(lnPil[0], lnPil[1], rnom)]
pilasRCSects.dir1NegatvRebarRows = [rcs.rebLayer_mm(lnPil[0], lnPil[1], rnom)]
pilasRCSects.dir2PositvRebarRows = [rcs.rebLayer_mm(lnPil[0], lnPil[1], rnom)]
pilasRCSects.dir2NegatvRebarRows = [rcs.rebLayer_mm(lnPil[0], lnPil[1], rnom)]

pilasRCSects.dir1ShReinfZ = rcs.RecordShearReinforcement(
    familyName="sh",
    nShReinfBranches=cercosPil[1],
    areaShReinfBranch=math.pi * (cercosPil[0] * 1e-3)**2 / 4.,
    shReinfSpacing=cercosPil[2] * 1e-3,
    angAlphaShReinf=math.pi / 2.0,
    angThetaConcrStruts=math.pi / 4.0)
pilasRCSects.dir2ShReinfZ = rcs.RecordShearReinforcement(
    familyName="sh",
    nShReinfBranches=cercosPil[1],
    areaShReinfBranch=math.pi * (cercosPil[0] * 1e-3)**2 / 4.,
    shReinfSpacing=cercosPil[2] * 1e-3,
    angAlphaShReinf=math.pi / 2.0,
    angThetaConcrStruts=math.pi / 4.0)

pilasRCSects.dir1ShReinfY = rcs.RecordShearReinforcement(
    familyName="sh",
    nShReinfBranches=cercosPil[1],
    areaShReinfBranch=math.pi * (cercosPil[0] * 1e-3)**2 / 4.,