width=1.0, nominalCover=0.050) fi26s250r30 = defSimpleRCSection.MainReinfLayer(rebarsDiam=26e-3, areaRebar=areaFi26, rebarsSpacing=0.250, width=1.0, nominalCover=0.030) fi26s250r50 = defSimpleRCSection.MainReinfLayer(rebarsDiam=26e-3, areaRebar=areaFi26, rebarsSpacing=0.250, width=1.0, nominalCover=0.050) FoundExtSlabRCSect = defSimpleRCSection.RecordRCSlabBeamSection( name='foundExtSlabRCSect', sectionDescr="underpass.", concrType=concrete, reinfSteelType=reinfSteel, depth=0.60) #[0]: transversal rebars #[1]: longitudinal rebars FoundExtSlabRCSect.dir1PositvRebarRows = [fi14s250r30] FoundExtSlabRCSect.dir1NegatvRebarRows = [fi14s125r30, fi18s125r44] FoundExtSlabRCSect.dir2PositvRebarRows = [fi10s200r44] FoundExtSlabRCSect.dir2NegatvRebarRows = [fi10s200r44] FoundExtSlabRCSect.creaTwoSections() sections.append(FoundExtSlabRCSect) FoundIntSlabRCSect = defSimpleRCSection.RecordRCSlabBeamSection( 'foundIntSlabRCSect', "underpass.", concrete, reinfSteel, 0.60) #[0]: transversal rebars
concrete = SIA262_materials.c25_30 reinfSteel = SIA262_materials.B500A coverForAll = 0.025 reinfConcreteSectionDistribution = RC_material_distribution.RCMaterialDistribution( ) sections = reinfConcreteSectionDistribution.sectionDefinition #execfile('../generic_layers_aux.py') execfile('../generic_fis.py') botColRCSects = defSimpleRCSection.RecordRCSlabBeamSection( name='botColRCSects', sectionDescr='fut fondation', concrType=concrete, reinfSteelType=reinfSteel, width=BCside - 0.25, depth=BCside) #auxiliar data layer1 = defSimpleRCSection.MainReinfLayer(rebarsDiam=14e-3, areaRebar=areaFi14, rebarsSpacing=coverForAll + 14e-3, width=BCside, nominalCover=coverForAll) layer1.nRebars = 8 layer2 = defSimpleRCSection.MainReinfLayer(rebarsDiam=10e-3, areaRebar=areaFi10, rebarsSpacing=coverForAll + 14e-3, width=BCside, nominalCover=coverForAll + 0.12)
concrete = SIA262_materials.c25_30 reinfSteel = SIA262_materials.B500A coverForAll = 0.025 reinfConcreteSectionDistribution = RC_material_distribution.RCMaterialDistribution( ) sections = reinfConcreteSectionDistribution.sectionDefinition #execfile('../generic_layers_aux.py') execfile('../generic_fis.py') botColRCSects = defSimpleRCSection.RecordRCSlabBeamSection( name='botColRCSects', sectionDescr='fut fondation prefabriqué', concrType=concrete, reinfSteelType=reinfSteel, width=BCheight, depth=BCwidth) #auxiliar data layer1 = defSimpleRCSection.MainReinfLayer(rebarsDiam=22e-3, areaRebar=areaFi22, rebarsSpacing=coverForAll + 22e-3, width=BCheight, nominalCover=coverForAll) layer1.nRebars = 2 layer2 = defSimpleRCSection.MainReinfLayer(rebarsDiam=22e-3, areaRebar=areaFi22, rebarsSpacing=coverForAll + 22e-3, width=BCheight, nominalCover=coverForAll + 0.1)
reinfSteel = SIA262_materials.B500A reinfConcreteSectionDistribution = RC_material_distribution.RCMaterialDistribution( ) sections = reinfConcreteSectionDistribution.sectionDefinition execfile('generic_layers_aux.py') #instances of defSimpleRCSection.RecordRCSlabBeamSection that defines 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 = defSimpleRCSection.RecordRCSlabBeamSection( name='deckRCSects', sectionDescr='slab of shell elements', concrType=concrete, reinfSteelType=reinfSteel, depth=deckThickness) deckLong = defSimpleRCSection.MainReinfLayer(rebarsDiam=16e-3, areaRebar=areaFi16, rebarsSpacing=0.150, width=1.0, nominalCover=0.040) deckRCSects.dir1PositvRebarRows = [deckLong] #long. sup. deckRCSects.dir1NegatvRebarRows = [deckLong] #long. inf. deckTransv = defSimpleRCSection.MainReinfLayer( rebarsDiam=13e-3, areaRebar=(areaFi12 + areaFi14) / 2.0, rebarsSpacing=0.150, width=1.0, nominalCover=0.040)
# -*- coding: utf-8 -*- #import os import xc_base import geom import xc 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)]
#Thickness of the elements deckTh = 0.25 concrete = SIA262_materials.c50_60 reinfSteel = SIA262_materials.B500A reinfConcreteSectionDistribution = RC_material_distribution.RCMaterialDistribution( ) sections = reinfConcreteSectionDistribution.sectionDefinition execfile('../generic_layers_aux.py') #instances of defSimpleRCSection.RecordRCSlabBeamSection that defines 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 = defSimpleRCSection.RecordRCSlabBeamSection( name='deckRCSects', sectionDescr='slab of shell elements', concrType=concrete, reinfSteelType=reinfSteel, depth=deckTh) deckRCSects.dir1PositvRebarRows = [fi20s150r35] #transv. sup. deckRCSects.dir1NegatvRebarRows = [fi14s150r35] #transv. inf. deckRCSects.dir2PositvRebarRows = [fi12s150r35] #long. sup. deckRCSects.dir2NegatvRebarRows = [fi12s150r35] #long. inf. deckRCSects.creaTwoSections() sections.append(deckRCSects)
#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 Twofi20r50 = defSimpleRCSection.MainReinfLayer(rebarsDiam=20e-3, areaRebar=areaFi20, width=1.0, nominalCover=0.050) Twofi20r50.nRebars = 2 Twofi20r50.coverLat = 0.05 Twofi10r50 = defSimpleRCSection.MainReinfLayer(rebarsDiam=10e-3, areaRebar=areaFi10, width=1.0, nominalCover=0.050) Twofi10r50.nRebars = 2 Twofi10r50.coverLat = 0.05 cantlvRCSects = defSimpleRCSection.RecordRCSlabBeamSection( name='cantlvRCSects', sectionDescr='cantilever of shell elements', concrType=concrete, reinfSteelType=reinfSteel, depth=cantlvTh) cantlvRCSects.dir1PositvRebarRows = [Twofi20r50] cantlvRCSects.dir1NegatvRebarRows = [Twofi10r50] cantlvRCSects.dir2PositvRebarRows = [Twofi20r50] cantlvRCSects.dir2NegatvRebarRows = [Twofi20r50] cantlvRCSects.creaTwoSections() sections.append(cantlvRCSects)
areaRebar=areaFi26, rebarsSpacing=0.250, width=1.0, nominalCover=0.030) fi26s250r50 = defSimpleRCSection.MainReinfLayer(rebarsDiam=26e-3, areaRebar=areaFi26, rebarsSpacing=0.250, width=1.0, nominalCover=0.050) fi26s150r35 = defSimpleRCSection.MainReinfLayer(rebarsDiam=26e-3, areaRebar=areaFi26, rebarsSpacing=0.150, width=1.0, nominalCover=0.035) UpDeckExtSlabRCSect = defSimpleRCSection.RecordRCSlabBeamSection( 'upDeckExtSlabRCSect', "underpass.", concrete, reinfSteel, upDeckTh) #[0]: transversal rebars #[1]: longitudinal rebars UpDeckExtSlabRCSect.dir1PositvRebarRows = [fi20s150r35, fi20s150r35] UpDeckExtSlabRCSect.dir1NegatvRebarRows = [fi22s150r35] UpDeckExtSlabRCSect.dir2PositvRebarRows = [fi16s150r35] UpDeckExtSlabRCSect.dir2NegatvRebarRows = [fi16s150r35] UpDeckExtSlabRCSect.creaTwoSections() sections.append(UpDeckExtSlabRCSect) UpDeckIntSlabRCSect = defSimpleRCSection.RecordRCSlabBeamSection( 'upDeckIntSlabRCSect', "underpass.", concrete, reinfSteel, upDeckTh) #[0]: transversal rebars #[1]: longitudinal rebars UpDeckIntSlabRCSect.dir1PositvRebarRows = [fi16s150r35]
reinfSteel = EHE_materials.B500S areaFi8 = 0.50e-4 #XXX Rebar area expressed in square meters. areaFi10 = 0.785e-4 areaFi12 = 1.13e-4 areaFi16 = 2.01e-4 areaFi20 = 3.14e-4 areaFi25 = 4.608e-4 basicCover = 0.06 numReinfBarsT = 5 sepT = 1.0 / numReinfBarsT numReinfBarsL = 7 sepL = 1.0 / numReinfBarsL sections = reinfConcreteSections.sectionDefinition deckSections = defSimpleRCSection.RecordRCSlabBeamSection( "deck", "RC deck.", concrete, reinfSteel, 0.3) deckSections.dir2PositvRebarRows = [ defSimpleRCSection.MainReinfLayer(rebarsDiam=12e-3, areaRebar=areaFi12, rebarsSpacing=sepT, nominalCover=basicCover) ] deckSections.dir2NegatvRebarRows = [ defSimpleRCSection.MainReinfLayer(rebarsDiam=12e-3, areaRebar=areaFi12, rebarsSpacing=sepT, nominalCover=basicCover) ] deckSections.dir1PositvRebarRows = [ defSimpleRCSection.MainReinfLayer(rebarsDiam=20e-3, areaRebar=areaFi20,
execfile('../basic_data.py') def rebars(fi,s,c): '''fi: bar diameter [mm], s: spacing [mm], c: cover [mm] ''' return defSimpleRCSection.MainReinfLayer(rebarsDiam=fi*1e-3,areaRebar= math.pi*(fi*1e-3)**2/4.0,rebarsSpacing=s*1e-3,width=1.0,nominalCover=c*1e-3) rnom=35 #recubrimiento nominal #instances of defSimpleRCSection.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 losSupV2RCSects= defSimpleRCSection.RecordRCSlabBeamSection(name='losSupV2RCSects',sectionDescr='losa aligerada, cara superior.',concrType=concrete, reinfSteelType=reinfSteel,depth=espLosAlig,elemSetName='losSupV2') #D1: transversal rebars #D2: longitudinal rebars #positiv: top face #negativ: bottom face losSupV2RCSects.dir1PositvRebarRows=[rebars(16,200,rnom)] losSupV2RCSects.dir1NegatvRebarRows=[rebars(12,200,rnom)] losSupV2RCSects.dir2PositvRebarRows=[rebars(16,200,rnom+20)] losSupV2RCSects.dir2NegatvRebarRows=[rebars(12,200,rnom+20)] losInfV2RCSects= defSimpleRCSection.RecordRCSlabBeamSection(name='losInfV2RCSects',sectionDescr='losa aligerada, cara superior',concrType=concrete, reinfSteelType=reinfSteel,depth=espLosAlig,elemSetName='losInfV2') #D1: transversal rebars #D2: longitudinal rebars #positiv: top face #negativ: bottom face
#Thickness of the elements concrete = EHE_materials.HA30 reinfSteel = EHE_materials.B500S reinfConcreteSectionDistribution = RC_material_distribution.RCMaterialDistribution( ) sections = reinfConcreteSectionDistribution.sectionDefinition execfile('../generic_layers_aux.py') #instances of defSimpleRCSection.RecordRCSlabBeamSection that defines 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 dintelRCSects = defSimpleRCSection.RecordRCSlabBeamSection( name='dintel', sectionDescr='dintel', concrType=concrete, reinfSteelType=reinfSteel, depth=deckTh) dintelRCSects.dir1PositvRebarRows = [fi16s150r60] #long. sup. dintelRCSects.dir1NegatvRebarRows = [fi20s200r60] #long. inf. dintelRCSects.dir2PositvRebarRows = [fi16s200r60] #transv.sup dintelRCSects.dir2NegatvRebarRows = [fi20s150r60, fi20s150r60] #transv.inf dintelRCSects.creaTwoSections() sections.append(dintelRCSects)
nominalCover=0.050) fi26s150r40 = defSimpleRCSection.MainReinfLayer(rebarsDiam=26e-3, areaRebar=areaFi26, rebarsSpacing=0.150, width=1.0, nominalCover=0.040) fi26s150r50 = defSimpleRCSection.MainReinfLayer(rebarsDiam=26e-3, areaRebar=areaFi26, rebarsSpacing=0.150, width=1.0, nominalCover=0.050) deckSlabRCSect = defSimpleRCSection.RecordRCSlabBeamSection( name='deckSlabRCSect', sectionDescr="estacade.", concrType=concrete, reinfSteelType=reinfSteel, depth=0.20) #[0]: longitudinal rebars #[1]: transversal rebars deckSlabRCSect.dir1PositvRebarRows = [fi14s150r50] #Ok deckSlabRCSect.dir1NegatvRebarRows = [fi16s150r50] #Ok deckSlabRCSect.dir2PositvRebarRows = [fi8s150r40] #Ok deckSlabRCSect.dir2NegatvRebarRows = [fi8s150r40] #Ok deckSlabRCSect.creaTwoSections() sections.append(deckSlabRCSect) dockRCSect = defSimpleRCSection.RecordRCSlabBeamSection( name='dockRCSect', sectionDescr="estacade.",
concrete = EHE_materials.HA30 reinfSteel = EHE_materials.B500S rnom = 35 #recubrimiento nominal # ***Armadura pilas*** #Armadura longitudinal en cada cara de la pila lnPil = [16, 50] #armadura longitudinal en cada cara de la pila # Cercos nramas_m = 3 #nº de ramas en cada dirección diam_cercos = 12 sep_long = 250 cercosPil = [diam_cercos, nramas_m, sep_long] pilasRCSects = rcs.RecordRCSlabBeamSection(name='pilasRCSects', 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,
reinfSteel = SIA262_materials.B500A reinfConcreteSectionDistribution = RC_material_distribution.RCMaterialDistribution( ) sections = reinfConcreteSectionDistribution.sectionDefinition execfile('../generic_layers_aux.py') #instances of defSimpleRCSection.RecordRCSlabBeamSection that defines 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 = defSimpleRCSection.RecordRCSlabBeamSection( name='deckRCSects', sectionDescr='slab of shell elements', concrType=concrete, reinfSteelType=reinfSteel, depth=deckTh) deckRCSects.dir1PositvRebarRows = [fi20s150r35] deckRCSects.dir1NegatvRebarRows = [fi22s150r35] deckRCSects.dir2PositvRebarRows = [fi16s150r35] deckRCSects.dir2NegatvRebarRows = [fi16s150r35] deckRCSects.creaTwoSections() sections.append(deckRCSects) foundRCSects = defSimpleRCSection.RecordRCSlabBeamSection( name='foundRCSects', sectionDescr='foundation', concrType=concrete, reinfSteelType=reinfSteel,
reinfSteel = EHE_materials.B500S reinfConcreteSectionDistribution = RC_material_distribution.RCMaterialDistribution( ) sections = reinfConcreteSectionDistribution.sectionDefinition execfile('../generic_layers_aux.py') #instances of defSimpleRCSection.RecordRCSlabBeamSection that defines 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 M1dintExtRCSects = defSimpleRCSection.RecordRCSlabBeamSection( name='M1dintExtRCSects', sectionDescr='Módulo 1- dintel, zona extremos', concrType=concrete, reinfSteelType=reinfSteel, depth=deckTh) M1dintExtRCSects.dir1PositvRebarRows = [fi16s200r60] #long. sup M1dintExtRCSects.dir1NegatvRebarRows = [fi16s200r60] #long. inf. M1dintExtRCSects.dir2PositvRebarRows = [fi20s200r60] #transv. sup. M1dintExtRCSects.dir2NegatvRebarRows = [fi25s200r60] #transv. inf. M1dintExtRCSects.creaTwoSections() sections.append(M1dintExtRCSects) M1dintCentRCSects = defSimpleRCSection.RecordRCSlabBeamSection( name='M1dintCentRCSects', sectionDescr='Módulo 1- dintel, zona central', concrType=concrete, reinfSteelType=reinfSteel,
# from postprocess import element_section_map reinfConcreteSectionDistribution = RC_material_distribution.RCMaterialDistribution( ) sections = reinfConcreteSectionDistribution.sectionDefinition execfile('../generic_layers_aux.py') #instances of defSimpleRCSection.RecordRCSlabBeamSection that defines 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 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
width=0.25, nominalCover=0.030) fi16s75r30 = defSimpleRCSection.MainReinfLayer(rebarsDiam=16e-3, areaRebar=areaFi16, rebarsSpacing=0.075, width=0.25, nominalCover=0.030) #instances of defSimpleRCSection.RecordRCSlabBeamSection that defines 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 beamRCsect = defSimpleRCSection.RecordRCSlabBeamSection( name='beamRCsect', sectionDescr='beam section', concrType=concrete, reinfSteelType=reinfSteel, width=wbeam, depth=hbeam) beamRCsect.dir1PositvRebarRows = [fi10s75r30] beamRCsect.dir1NegatvRebarRows = [fi16s75r30] beamRCsect.dir2PositvRebarRows = [fi10s75r30] beamRCsect.dir2NegatvRebarRows = [fi16s75r30] beamRCsect.creaTwoSections() sections.append(beamRCsect) feProblem = xc.FEProblem() feProblem.errFileName = "/tmp/erase.err" # Don't print errors. preprocessor = feProblem.getPreprocessor nodes = preprocessor.getNodeHandler # Problem type
lcase02.addLstLoads([halfLoadBeam]) from postprocess.xcVtk.FE_model import quick_graphics as QGrph # ***LIMIT STATE COMBINATIONS*** from actions import combinations as cc combContainer= cc.CombContainer() #Container of load combinations #Frequent combinations. combContainer.SLS.freq.add('ELSF01', '1.0*lcase01') combContainer.SLS.freq.add('ELSF02', '1.0*lcase02') # Reinforced concrete sections from materials.sections.fiber_section import defSimpleRCSection beamRCsect=defSimpleRCSection.RecordRCSlabBeamSection(name='beamRCsect',sectionDescr='beam',concrType=concrete, reinfSteelType=reinfSteel,width=width,depth=depth,elemSetName='beamSet') mainBottReinf=defSimpleRCSection.MainReinfLayer(rebarsDiam=fiBott,areaRebar=math.pi*fiBott**2/4.,width=width,nominalCover=cover) mainBottReinf.nRebars=nmbBarsBott beamRCsect.dir1NegatvRebarRows=[mainBottReinf] beamRCsect.dir2NegatvRebarRows=[mainBottReinf] #Assigning of sections from postprocess import RC_material_distribution from postprocess import element_section_map # Reinforced concrete material distribution over the elements of the FE model. # Concrete of type concrete01 with no tension branch reinfConcreteSectionDistribution= RC_material_distribution.RCMaterialDistribution() sections= reinfConcreteSectionDistribution.sectionDefinition #sections container beamRCsect.creaTwoSections() sections.append(beamRCsect)
#Auxiliary data execfile('../basic_data.py') rnom = 35 #recubrimiento nominal areaFi16 = math.pi * (16 * 1e-3)**2 / 4.0 #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 losSupV2RCSects = rcs.RecordRCSlabBeamSection( name='losSupV2RCSects', sectionDescr='losa aligerada, cara superior.', concrType=concrete, reinfSteelType=reinfSteel, depth=espLosAlig, elemSetName='losSupV2') #D1: transversal rebars #D2: longitudinal rebars #positiv: top face #negativ: bottom face losSupV2RCSects.dir1PositvRebarRows = [rcs.rebLayer(16, 200, rnom)] losSupV2RCSects.dir1NegatvRebarRows = [ rcs.rebLayer(12, 200, rnom + espLosAlig / 2.) ] losSupV2RCSects.dir2PositvRebarRows = [rcs.rebLayer(16, 200, rnom + 20)] losSupV2RCSects.dir2NegatvRebarRows = [ rcs.rebLayer(12, 200, rnom + espLosAlig / 2.) ]
from materials.ehe import EHE_materials import math #Auxiliary data execfile('../basic_data.py') rnom = 35 #recubrimiento nominal (todos los elementos) #instances of defSimpleRCSection.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 zapRCSects = rcs.RecordRCSlabBeamSection(name='zapRCSects', sectionDescr='zapata', concrType=concrete, reinfSteelType=reinfSteel, depth=cantoZap, elemSetName='zap') #D1: longitudinal rebars #D2: transversal rebars #positiv: top face #negativ: bottom face zapRCSects.dir1PositvRebarRows = [rcs.rebLayer(25, 200, rnom)] zapRCSects.dir2PositvRebarRows = [rcs.rebLayer(20, 200, rnom + 25)] zapRCSects.dir1NegatvRebarRows = [rcs.rebLayer(25, 200, rnom)] zapRCSects.dir2NegatvRebarRows = [rcs.rebLayer(20, 200, rnom + 25)] murestrZ1RCSects = rcs.RecordRCSlabBeamSection( name='murestrZ1RCSects', sectionDescr='muro de estribo, zona Z1 (inferior)', concrType=concrete,
reinfLayer = defSimpleRCSection.MainReinfLayer(rebarsDiam=barDiameter, areaRebar=barArea, rebarsSpacing=0.075, width=0.25, nominalCover=0.050) #instances of defSimpleRCSection.RecordRCSlabBeamSection that defines 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 reinfSteel = EHE_materials.B500S beamRCsect = defSimpleRCSection.RecordRCSlabBeamSection( name='beamRCsect', sectionDescr='beam section', concrType=concr, reinfSteelType=reinfSteel, width=sectionGeometry.b, depth=sectionGeometry.h) beamRCsect.dir1PositvRebarRows = [reinfLayer] beamRCsect.dir1NegatvRebarRows = [reinfLayer] beamRCsect.dir2PositvRebarRows = [reinfLayer] beamRCsect.dir2NegatvRebarRows = [reinfLayer] beamRCsect.creaTwoSections() sections.append(beamRCsect) # Spatial distribution of reinforced concrete # sections (assign RC sections to elements). reinfConcreteSectionDistribution.assign(elemSet=totalSet.getElements, setRCSects=beamRCsect)
width=1.0, nominalCover=0.040) fi26s150r50 = defSimpleRCSection.MainReinfLayer(rebarsDiam=26e-3, areaRebar=areaFi26, rebarsSpacing=0.150, width=1.0, nominalCover=0.050) #Define available sections for the elements (spatial distribution of RC sections). reinfConcreteSectionDistribution = RC_material_distribution.RCMaterialDistribution( ) sections = reinfConcreteSectionDistribution.sectionDefinition slab30RCSect = defSimpleRCSection.RecordRCSlabBeamSection( name='slab30RCSect', sectionDescr="foundation slab thickness 30 cm.", concrType=concrete, reinfSteelType=reinfSteel, depth=0.3) slab30RCSect.dir1PositvRebarRows = [fi14s150r40] #Longitudinal slab30RCSect.dir1NegatvRebarRows = [fi14s150r40] # slab30RCSect.dir2PositvRebarRows = [fi14s150r50] #Transverse slab30RCSect.dir2NegatvRebarRows = [fi14s150r50] # slab30RCSect.creaTwoSections() sections.append(slab30RCSect) slab40RCSect = defSimpleRCSection.RecordRCSlabBeamSection( name='slab40RCSect', sectionDescr="foundation slab thickness 40 cm.", concrType=concrete, reinfSteelType=reinfSteel,