concrete= SIA262_materials.c30_37 reinfSteel= SIA262_materials.B500A reinfConcreteSectionDistribution= RC_material_distribution.RCMaterialDistribution() sections= reinfConcreteSectionDistribution.sectionDefinition execfile('generic_layers_aux.py') #instances of element_section_map.RCSlabBeamSection 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= element_section_map.RCSlabBeamSection(name='deckRCSects',sectionDescr='slab of shell elements',concrType=concrete, reinfSteelType=reinfSteel,depth=deckThickness) deckLong= def_simple_RC_section.ReinfRow(rebarsDiam=16e-3,areaRebar= areaFi16,rebarsSpacing=0.150,width=1.0,nominalCover=0.040) deckRCSects.dir1PositvRebarRows= def_simple_RC_section.LongReinfLayers([deckLong]) #long. sup. deckRCSects.dir1NegatvRebarRows= def_simple_RC_section.LongReinfLayers([deckLong]) #long. inf. deckTransv= def_simple_RC_section.ReinfRow(rebarsDiam=13e-3,areaRebar= (areaFi12+areaFi14)/2.0,rebarsSpacing=0.150,width=1.0,nominalCover=0.040) deckRCSects.dir2PositvRebarRows= def_simple_RC_section.LongReinfLayers([deckTransv]) #transv. sup. deckRCSects.dir2NegatvRebarRows= def_simple_RC_section.LongReinfLayers([deckTransv]) #transv. inf. sections.append(deckRCSects) parapetBodyRCSects= element_section_map.RCSlabBeamSection(name='parapetBodyRCSects',sectionDescr='slab of shell elements',concrType=concrete, reinfSteelType=reinfSteel,depth=parapetBodyThickness) parapetBodyHoriz= def_simple_RC_section.ReinfRow(rebarsDiam=16e-3,areaRebar= areaFi16,rebarsSpacing=0.150,width=1.0,nominalCover=0.040) parapetBodyRCSects.dir1PositvRebarRows= def_simple_RC_section.LongReinfLayers([parapetBodyHoriz]) #horiz. sup. parapetBodyRCSects.dir1NegatvRebarRows= def_simple_RC_section.LongReinfLayers([parapetBodyHoriz]) #horiz. inf. parapetBodyVert= def_simple_RC_section.ReinfRow(rebarsDiam=13e-3,areaRebar= (areaFi12+areaFi14)/2.0,rebarsSpacing=0.150,width=1.0,nominalCover=0.040) parapetBodyRCSects.dir2PositvRebarRows= def_simple_RC_section.LongReinfLayers([parapetBodyVert]) #vert. sup. parapetBodyRCSects.dir2NegatvRebarRows= def_simple_RC_section.LongReinfLayers([parapetBodyVert]) #vert. inf.
rebarsSpacing=s * 1e-3, width=1.0, nominalCover=c * 1e-3) rnom = 35 #recubrimiento nominal #instances of element_section_map.RCSlabBeamSection 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 = element_section_map.RCSlabBeamSection( name='losSupV2RCSects', sectionDescr='losa aligerada, cara superior.', concrType=concrete, reinfSteelType=reinfSteel, depth=espLosAlig, elemSet=losSupV2) #D1: transversal rebars #D2: longitudinal rebars #positiv: top face #negativ: bottom face losSupV2RCSects.dir1PositvRebarRows = def_simple_RC_section.LongReinfLayers( [rebars(16, 200, rnom)]) losSupV2RCSects.dir1NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [rebars(12, 200, rnom)]) losSupV2RCSects.dir2PositvRebarRows = def_simple_RC_section.LongReinfLayers( [rebars(16, 200, rnom + 20)]) losSupV2RCSects.dir2NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [rebars(12, 200, rnom + 20)])
# -*- coding: utf-8 -*- #import os #import xc_base #import geom #import xc from materials.sections.fiber_section import def_simple_RC_section as rcs from postprocess import element_section_map # **Concrete sections #instances of element_section_map.RCSlabBeamSection 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= element_section_map.RCSlabBeamSection(name='deckRCSects',sectionDescr='slab of shell elements',concrType=concrete, reinfSteelType=reinfSteel,depth=deckTh,elemSet=decks) deckRCSects.dir1PositvRebarRows= def_simple_RC_section.LongReinfLayers([rcs.rebLayer_mm(12,150,35)]) deckRCSects.dir1NegatvRebarRows= def_simple_RC_section.LongReinfLayers([rcs.rebLayer_mm(12,200,35)]) deckRCSects.dir2PositvRebarRows= def_simple_RC_section.LongReinfLayers([rcs.rebLayer_mm(16,250,35)]) deckRCSects.dir2NegatvRebarRows= def_simple_RC_section.LongReinfLayers([rcs.rebLayer_mm(16,100,35)]) import math areaFi8=math.pi*0.008**2/4. shear1=rcs.ShearReinforcement(familyName= "shear1",nShReinfBranches= 1.0,areaShReinfBranch= areaFi8,shReinfSpacing= 0.20,angAlphaShReinf= math.pi/2.0,angThetaConcrStruts= math.radians(30)) shear2=rcs.ShearReinforcement(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= element_section_map.RCSlabBeamSection(name='footRCSects',sectionDescr='footation',concrType=concrete, reinfSteelType=reinfSteel,depth=footTh,elemSet=foot) #D1: transversal rebars #D2: longitudinal rebars
import math from postprocess import element_section_map #Auxiliary data execfile('../basic_data.py') rnom = 35 #recubrimiento nominal (todos los elementos) #instances of element_section_map.RCSlabBeamSection 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 = element_section_map.RCSlabBeamSection(name='zapRCSects', sectionDescr='zapata', concrType=concrete, reinfSteelType=reinfSteel, depth=cantoZap, elemSet=zap) #D1: longitudinal rebars #D2: transversal rebars #positiv: top face #negativ: bottom face zapRCSects.dir1PositvRebarRows = def_simple_RC_section.LongReinfLayers( [rcs.rebLayer_mm(25, 200, rnom)]) zapRCSects.dir2PositvRebarRows = def_simple_RC_section.LongReinfLayers( [rcs.rebLayer_mm(20, 200, rnom + 25)]) zapRCSects.dir1NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [rcs.rebLayer_mm(25, 200, rnom)]) zapRCSects.dir2NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [rcs.rebLayer_mm(20, 200, rnom + 25)])
execfile('../arm_def.py') rnom = 35 #recubrimiento nominal #instances of element_section_map.RCSlabBeamSection 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 #losa [losaZonaArm1,losaZonaArm2, ...] losaRCSects = [] for st in sets_arm_losa: losaRCSects.append( element_section_map.RCSlabBeamSection( name=st.name + 'RCSects', sectionDescr='losa, zona de armado ' + st.name[-2:], concrType=concrete, reinfSteelType=reinfSteel, depth=cantoLosa, elemSet=st)) #cartabón derecho interno [CartIntZonaArm1,CartIntZonaArm2, ...] cartIntRCSects = [] for st in sets_arm_cartInt: cartIntRCSects.append( element_section_map.RCSlabBeamSection( name=st.name + 'RCSects', sectionDescr='cartabón interno, zona de armado ' + st.name[-2:], concrType=concrete, reinfSteelType=reinfSteel, depth=eCartInt, elemSet=st)) #cartabón derecho externo [CartExtZonaArm1,CartExtZonaArm2, ...]
#Auxiliary data execfile('../basic_data.py') rnom = 35 #recubrimiento nominal areaFi16 = math.pi * (16 * 1e-3)**2 / 4.0 #instances of element_section_map.RCSlabBeamSection 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 = element_section_map.RCSlabBeamSection( name='losSupV2RCSects', sectionDescr='losa aligerada, cara superior.', concrType=concrete, reinfSteelType=reinfSteel, depth=espLosAlig, elemSet=losSupV2) #D1: transversal rebars #D2: longitudinal rebars #positiv: top face #negativ: bottom face losSupV2RCSects.dir1PositvRebarRows = def_simple_RC_section.LongReinfLayers( [rcs.rebLayer_mm(25, 400, rnom)]) losSupV2RCSects.dir1NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [rcs.rebLayer_mm(20, 400, rnom + espLosAlig / 2.)]) losSupV2RCSects.dir2PositvRebarRows = def_simple_RC_section.LongReinfLayers( [rcs.rebLayer_mm(16, 200, rnom + 20)]) losSupV2RCSects.dir2NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [rcs.rebLayer_mm(12, 200, rnom + espLosAlig / 2.)])
reinfSteel = SIA262_materials.B500A reinfConcreteSectionDistribution = RC_material_distribution.RCMaterialDistribution( ) sections = reinfConcreteSectionDistribution.sectionDefinition execfile('../generic_layers_aux.py') #instances of element_section_map.RCSlabBeamSection 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 = element_section_map.RCSlabBeamSection( name='deckRCSects', sectionDescr='slab of shell elements', concrType=concrete, reinfSteelType=reinfSteel, depth=deckTh) deckRCSects.dir1PositvRebarRows = def_simple_RC_section.LongReinfLayers( [fi20s150r35]) deckRCSects.dir1NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [fi22s150r35]) deckRCSects.dir2PositvRebarRows = def_simple_RC_section.LongReinfLayers( [fi16s150r35]) deckRCSects.dir2NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [fi16s150r35]) sections.append(deckRCSects) foundRCSects = element_section_map.RCSlabBeamSection(name='foundRCSects', sectionDescr='foundation',
areaRebar=areaFi8, rebarsSpacing=0.200, width=1.0, nominalCover=0.044) concrete = SIA262_materials.c30_37 reinfSteel = SIA262_materials.SpecialII1956SIA161 # reinfConcreteSectionDistribution = RC_material_distribution.RCMaterialDistribution( ) sections = reinfConcreteSectionDistribution.sectionDefinition beamRCsects = element_section_map.RCSlabBeamSection( name='beamRCsects', sectionDescr='beam section', concrType=concrete, reinfSteelType=reinfSteel, width=wbeam, depth=hbeam) beamRCsects.dir1PositvRebarRows = def_simple_RC_section.LongReinfLayers( [fi10s200r44]) beamRCsects.dir1NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [fi16s200r44]) beamRCsects.dir2PositvRebarRows = def_simple_RC_section.LongReinfLayers( [fi10s200r44]) beamRCsects.dir2NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [fi16s200r44]) sections.append(beamRCsects)
piersDiameter=1.0 # Equivalent rectangular section lRectEqPier=round(math.pi**0.5*piersDiameter/2.,3) concrete= EHE_materials.HA30 reinfSteel= EHE_materials.B500S nomCover=35 # nominal cover # *** Pier reinforcement *** pierLongReinf=[16,50] # Longitudinal reinforcement on each side of the pile. # Stirrups nlegs_m=3 # number of legs on each direction shearReinfDiameter=12 shearReinfSpacing=250 pierStirrups= [shearReinfDiameter,nlegs_m,shearReinfSpacing] piersRCSects= element_section_map.RCSlabBeamSection(name='piersRCSects',sectionDescr='piers',concrType=concrete, reinfSteelType=reinfSteel,width=lRectEqPier,depth=lRectEqPier,elemSet=None) piersRCSects.dir1PositvRebarRows= rcs.LongReinfLayers([rcs.rebLayer_mm(pierLongReinf[0],pierLongReinf[1],nomCover)]) piersRCSects.dir1NegatvRebarRows= rcs.LongReinfLayers([rcs.rebLayer_mm(pierLongReinf[0],pierLongReinf[1],nomCover)]) piersRCSects.dir2PositvRebarRows= rcs.LongReinfLayers([rcs.rebLayer_mm(pierLongReinf[0],pierLongReinf[1],nomCover)]) piersRCSects.dir2NegatvRebarRows= rcs.LongReinfLayers([rcs.rebLayer_mm(pierLongReinf[0],pierLongReinf[1],nomCover)]) # Shear reinforcement. piersRCSects.dir1ShReinfZ=rcs.ShearReinforcement(familyName= "sh",nShReinfBranches=pierStirrups[1],areaShReinfBranch= math.pi*(pierStirrups[0]*1e-3)**2/4.,shReinfSpacing=pierStirrups[2]*1e-3,angAlphaShReinf= math.pi/2.0,angThetaConcrStruts= math.pi/4.0) piersRCSects.dir2ShReinfZ=rcs.ShearReinforcement(familyName= "sh",nShReinfBranches=pierStirrups[1],areaShReinfBranch= math.pi*(pierStirrups[0]*1e-3)**2/4.,shReinfSpacing=pierStirrups[2]*1e-3,angAlphaShReinf= math.pi/2.0,angThetaConcrStruts= math.pi/4.0) piersRCSects.dir1ShReinfY=rcs.ShearReinforcement(familyName= "sh",nShReinfBranches=pierStirrups[1],areaShReinfBranch= math.pi*(pierStirrups[0]*1e-3)**2/4.,shReinfSpacing=pierStirrups[2]*1e-3,angAlphaShReinf= math.pi/2.0,angThetaConcrStruts= math.pi/4.0) piersRCSects.dir2ShReinfY=rcs.ShearReinforcement(familyName= "sh",nShReinfBranches=pierStirrups[1],areaShReinfBranch= math.pi*(pierStirrups[0]*1e-3)**2/4.,shReinfSpacing=pierStirrups[2]*1e-3,angAlphaShReinf= math.pi/2.0,angThetaConcrStruts= math.pi/4.0) # All this is made only to allow the # creation of the RCMaterialDistribution
width=1.0, nominalCover=0.050) fi26s250r30 = def_simple_RC_section.ReinfRow(rebarsDiam=26e-3, areaRebar=areaFi26, rebarsSpacing=0.250, width=1.0, nominalCover=0.030) fi26s250r50 = def_simple_RC_section.ReinfRow(rebarsDiam=26e-3, areaRebar=areaFi26, rebarsSpacing=0.250, width=1.0, nominalCover=0.050) FoundExtSlabRCSect = element_section_map.RCSlabBeamSection( name='foundExtSlabRCSect', sectionDescr="underpass.", concrType=concrete, reinfSteelType=reinfSteel, depth=0.60) #[0]: transversal rebars #[1]: longitudinal rebars FoundExtSlabRCSect.dir1PositvRebarRows = def_simple_RC_section.LongReinfLayers( [fi14s250r30]) FoundExtSlabRCSect.dir1NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [fi14s125r30, fi18s125r44]) FoundExtSlabRCSect.dir2PositvRebarRows = def_simple_RC_section.LongReinfLayers( [fi10s200r44]) FoundExtSlabRCSect.dir2NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [fi10s200r44]) sections.append(FoundExtSlabRCSect)
Twofi20r50 = def_simple_RC_section.ReinfRow(rebarsDiam=20e-3, areaRebar=areaFi20, width=1.0, nominalCover=0.050) Twofi20r50.nRebars = 2 Twofi20r50.coverLat = 0.05 Twofi10r50 = def_simple_RC_section.ReinfRow(rebarsDiam=10e-3, areaRebar=areaFi10, width=1.0, nominalCover=0.050) Twofi10r50.nRebars = 2 Twofi10r50.coverLat = 0.05 cantlvRCSects = element_section_map.RCSlabBeamSection( name='cantlvRCSects', sectionDescr='cantilever of shell elements', concrType=concrete, reinfSteelType=reinfSteel, depth=cantlvTh) cantlvRCSects.dir1PositvRebarRows = def_simple_RC_section.LongReinfLayers( [Twofi20r50]) cantlvRCSects.dir1NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [Twofi10r50]) cantlvRCSects.dir2PositvRebarRows = def_simple_RC_section.LongReinfLayers( [Twofi20r50]) cantlvRCSects.dir2NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [Twofi20r50]) sections.append(cantlvRCSects)
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 = element_section_map.RCSlabBeamSection( name='botColRCSects', sectionDescr='fut fondation', concrType=concrete, reinfSteelType=reinfSteel, width=BCside - 0.25, depth=BCside) #auxiliar data layer1 = def_simple_RC_section.ReinfRow(rebarsDiam=14e-3, areaRebar=areaFi14, rebarsSpacing=coverForAll + 14e-3, width=BCside, nominalCover=coverForAll) layer1.nRebars = 8 layer2 = def_simple_RC_section.ReinfRow(rebarsDiam=10e-3, areaRebar=areaFi10, rebarsSpacing=coverForAll + 14e-3, width=BCside, nominalCover=coverForAll + 0.12)
nodes = preprocessor.getNodeHandler # Problem type modelSpace = predefined_spaces.StructuralMechanics3D(nodes) n1 = nodes.newNodeXYZ(0, 0, 0) n2 = nodes.newNodeXYZ(1, 0, 0) n3 = nodes.newNodeXYZ(1, 1, 0) n4 = nodes.newNodeXYZ(0, 1, 0) # Materials definition h = 0.4 # thickness. concrete = EHE_materials.HA30 reinfSteel = EHE_materials.B500S rcSection = element_section_map.RCSlabBeamSection(name='rcSection', sectionDescr='test', concrType=concrete, reinfSteelType=reinfSteel, depth=h) memb1 = rcSection.getElasticMembranePlateSection(preprocessor) elements = preprocessor.getElementHandler elements.defaultMaterial = memb1.name elem = elements.newElement("ShellMITC4", xc.ID([n1.tag, n2.tag, n3.tag, n4.tag])) g = 1.0 #9.81 # m/s2 # Element mass eMass = elem.getArea(True) * concrete.density() * h eForce = eMass * g nForce = eForce / 4.0
reinfSteel = SIA262_materials.B500A reinfConcreteSectionDistribution = RC_material_distribution.RCMaterialDistribution( ) sections = reinfConcreteSectionDistribution.sectionDefinition execfile('../generic_layers_aux.py') #instances of element_section_map.RCSlabBeamSection 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 = element_section_map.RCSlabBeamSection( name='deckRCSects', sectionDescr='slab of shell elements', concrType=concrete, reinfSteelType=reinfSteel, depth=deckTh) deckRCSects.dir1PositvRebarRows = def_simple_RC_section.LongReinfLayers( [fi20s150r35]) #transv. sup. deckRCSects.dir1NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [fi20s150r35]) #transv. inf. deckRCSects.dir2PositvRebarRows = def_simple_RC_section.LongReinfLayers( [fi16s150r35]) #long. sup. deckRCSects.dir2NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [fi20s150r35]) #long. inf. sections.append(deckRCSects) curbRCSects = element_section_map.RCSlabBeamSection(name='curbRCSects', sectionDescr='curbs',
from materials.ehe import EHE_materials concrete=EHE_materials.HA30 reinfSteel= EHE_materials.B500S reinfConcreteSectionDistribution= RC_material_distribution.RCMaterialDistribution() sections= reinfConcreteSectionDistribution.sectionDefinition execfile('../generic_layers_aux.py') #instances of element_section_map.RCSlabBeamSection 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= element_section_map.RCSlabBeamSection(name='M1dintExtRCSects',sectionDescr='Módulo 1- dintel, zona extremos',concrType=concrete, reinfSteelType=reinfSteel,depth=deckTh) M1dintExtRCSects.dir1PositvRebarRows= def_simple_RC_section.LongReinfLayers([fi16s200r76]) #long. sup M1dintExtRCSects.dir1NegatvRebarRows= def_simple_RC_section.LongReinfLayers([fi16s200r85]) #long. inf. M1dintExtRCSects.dir2PositvRebarRows= def_simple_RC_section.LongReinfLayers([fi16s100r60]) #transv. sup. M1dintExtRCSects.dir2NegatvRebarRows= def_simple_RC_section.LongReinfLayers([fi25s200r60]) #transv. inf. sh1=def_simple_RC_section.ShearReinforcement(familyName= "sh1",nShReinfBranches= 4.0,areaShReinfBranch= areaFi8,shReinfSpacing= 0.25,angAlphaShReinf= math.radians(90),angThetaConcrStruts= math.radians(30)) M1dintExtRCSects.dir2ShReinfY=sh1 sections.append(M1dintExtRCSects) M1dintCentRCSects= element_section_map.RCSlabBeamSection(name='M1dintCentRCSects',sectionDescr='Módulo 1- dintel, zona central',concrType=concrete,reinfSteelType=reinfSteel,depth=deckTh) M1dintCentRCSects.dir1PositvRebarRows= def_simple_RC_section.LongReinfLayers([fi16s200r76]) #long. sup M1dintCentRCSects.dir1NegatvRebarRows= def_simple_RC_section.LongReinfLayers([fi16s200r85]) #long. inf. M1dintCentRCSects.dir2PositvRebarRows= def_simple_RC_section.LongReinfLayers([fi16s200r60]) #transv. sup. M1dintCentRCSects.dir2NegatvRebarRows= def_simple_RC_section.LongReinfLayers([fi25s200r60]) #transv. inf.
#Generic layers (rows of rebars). Other instance variables that we can define #for ReinfRows are coverLat and nRebars.If we define nRebars that #value overrides the rebarsSpacing barArea= 4e-4 barDiameter= math.sqrt(barArea)/math.pi reinfLayer= def_simple_RC_section.ReinfRow(rebarsDiam= barDiameter,areaRebar= barArea,rebarsSpacing=0.075,width=0.25,nominalCover=0.050) #instances of element_section_map.RCSlabBeamSection 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= ACI_materials.A615G60 reinfSteel.gammaS= 1.0/0.75 beamRCsect= element_section_map.RCSlabBeamSection(name='beamRCsect',sectionDescr='beam section',concrType=concr, reinfSteelType=reinfSteel,width= sectionGeometry.b,depth= sectionGeometry.h) beamRCsect.dir1PositvRebarRows= def_simple_RC_section.LongReinfLayers([reinfLayer]) beamRCsect.dir1NegatvRebarRows= def_simple_RC_section.LongReinfLayers([reinfLayer]) beamRCsect.dir2PositvRebarRows= def_simple_RC_section.LongReinfLayers([reinfLayer]) beamRCsect.dir2NegatvRebarRows= def_simple_RC_section.LongReinfLayers([reinfLayer]) sections.append(beamRCsect) # Spatial distribution of reinforced concrete # sections (assign RC sections to elements). reinfConcreteSectionDistribution.assign(elemSet=totalSet.getElements,setRCSects=beamRCsect) #Checking shear. lsd.shearResistance.controller= ACI_limit_state_checking.ShearController(limitStateLabel= lsd.shearResistance.label) lsd.shearResistance.controller.analysisToPerform= predefined_solutions.plain_newton_raphson lsd.normalStressesResistance.outputDataBaseFileName= 'resVerif'
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 = element_section_map.RCSlabBeamSection( name='botColRCSects', sectionDescr='fut fondation prefabriqué', concrType=concrete, reinfSteelType=reinfSteel, width=BCheight, depth=BCwidth) #auxiliar data layer1 = def_simple_RC_section.ReinfRow(rebarsDiam=22e-3, areaRebar=areaFi22, rebarsSpacing=coverForAll + 22e-3, width=BCheight, nominalCover=coverForAll) layer1.nRebars = 2 layer2 = def_simple_RC_section.ReinfRow(rebarsDiam=22e-3, areaRebar=areaFi22, rebarsSpacing=coverForAll + 22e-3, width=BCheight, nominalCover=coverForAll + 0.1)
#Reinforced concrete sections from materials.sections.fiber_section import def_simple_RC_section from postprocess import element_section_map concrete = EC2_materials.C30 mainBottReinf = def_simple_RC_section.ReinfRow(rebarsDiam=fiBott, areaRebar=math.pi * fiBott**2 / 4., width=width, nominalCover=cover) mainBottReinf.nRebars = nmbBarsBott beamRCSect = element_section_map.RCSlabBeamSection(name='beamRCSect', sectionDescr='beam', concrType=concrete, reinfSteelType=rfSteel, width=width, depth=depth, elemSetName='total') beamRCSect.dir1NegatvRebarRows = mainBottReinf beamRCSect.dir2NegatvRebarRows = mainBottReinf #list of RC sections (from those whose attributes (materials, geometry, refinforcement, set of elements to which apply, ... are defined in the file 'sectionsDef.py') that we want to process in order to run different limit-state checkings. lstOfSectRecords = [beamRCSect] from postprocess import RC_material_distribution reinfConcreteSectionDistribution = RC_material_distribution.RCMaterialDistribution( ) sections = reinfConcreteSectionDistribution.sectionDefinition #sections container for secRec in lstOfSectRecords: secRec.fiberSectionParameters.concrType.initTensStiff = 'Y' #tension stiffening initialized in
concrete = EHE_materials.HA30 reinfSteel = EHE_materials.B500S reinfConcreteSectionDistribution = RC_material_distribution.RCMaterialDistribution( ) sections = reinfConcreteSectionDistribution.sectionDefinition execfile('../generic_layers_aux.py') #instances of element_section_map.RCSlabBeamSection 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 = element_section_map.RCSlabBeamSection( name='dintel', sectionDescr='dintel', concrType=concrete, reinfSteelType=reinfSteel, depth=deckTh) dintelRCSects.dir1PositvRebarRows = def_simple_RC_section.LongReinfLayers( [fi16s150r60]) #long. sup. dintelRCSects.dir1NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [fi20s200r60]) #long. inf. dintelRCSects.dir2PositvRebarRows = def_simple_RC_section.LongReinfLayers( [fi16s200r60]) #transv.sup dintelRCSects.dir2NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [fi20s150r60, fi20s150r60]) #transv.inf sections.append(dintelRCSects)
fi16s150r35=def_simple_RC_section.ReinfRow(rebarsDiam=16e-3,areaRebar= areaFi16,rebarsSpacing=0.150,width=1.0,nominalCover=0.035) fi16s250r56=def_simple_RC_section.ReinfRow(rebarsDiam=16e-3,areaRebar= areaFi16,rebarsSpacing=0.250,width=1.0,nominalCover=0.056) fi18s125r30=def_simple_RC_section.ReinfRow(rebarsDiam=18e-3,areaRebar= areaFi18,rebarsSpacing=0.125,width=1.0,nominalCover=0.030) fi18s125r44=def_simple_RC_section.ReinfRow(rebarsDiam=18e-3,areaRebar= areaFi18,rebarsSpacing=0.125,width=1.0,nominalCover=0.044) fi18s150r35=def_simple_RC_section.ReinfRow(rebarsDiam=18e-3,areaRebar= areaFi18,rebarsSpacing=0.150,width=1.0,nominalCover=0.035) fi20s250r30=def_simple_RC_section.ReinfRow(rebarsDiam=20e-3,areaRebar= areaFi20,rebarsSpacing=0.250,width=1.0,nominalCover=0.030) fi20s150r35=def_simple_RC_section.ReinfRow(rebarsDiam=20e-3,areaRebar= areaFi20,rebarsSpacing=0.150,width=1.0,nominalCover=0.035) fi22s150r35=def_simple_RC_section.ReinfRow(rebarsDiam=22e-3,areaRebar= areaFi22,rebarsSpacing=0.150,width=1.0,nominalCover=0.035) fi20s125r30=def_simple_RC_section.ReinfRow(rebarsDiam=20e-3,areaRebar= areaFi20,rebarsSpacing=0.125,width=1.0,nominalCover=0.030) fi20s125r50=def_simple_RC_section.ReinfRow(rebarsDiam=20e-3,areaRebar= areaFi20,rebarsSpacing=0.125,width=1.0,nominalCover=0.050) fi26s250r30=def_simple_RC_section.ReinfRow(rebarsDiam=26e-3,areaRebar= areaFi26,rebarsSpacing=0.250,width=1.0,nominalCover=0.030) fi26s250r50=def_simple_RC_section.ReinfRow(rebarsDiam=26e-3,areaRebar= areaFi26,rebarsSpacing=0.250,width=1.0,nominalCover=0.050) fi26s150r35=def_simple_RC_section.ReinfRow(rebarsDiam=26e-3,areaRebar= areaFi26,rebarsSpacing=0.150,width=1.0,nominalCover=0.035) UpDeckExtSlabRCSect= element_section_map.RCSlabBeamSection('upDeckExtSlabRCSect',"underpass.",concrete, reinfSteel,upDeckTh) #[0]: transversal rebars #[1]: longitudinal rebars UpDeckExtSlabRCSect.dir1PositvRebarRows= def_simple_RC_section.LongReinfLayers([fi20s150r35,fi20s150r35]) UpDeckExtSlabRCSect.dir1NegatvRebarRows= def_simple_RC_section.LongReinfLayers([fi22s150r35]) UpDeckExtSlabRCSect.dir2PositvRebarRows= def_simple_RC_section.LongReinfLayers([fi16s150r35]) UpDeckExtSlabRCSect.dir2NegatvRebarRows= def_simple_RC_section.LongReinfLayers([fi16s150r35]) sections.append(UpDeckExtSlabRCSect) UpDeckIntSlabRCSect= element_section_map.RCSlabBeamSection('upDeckIntSlabRCSect',"underpass.",concrete, reinfSteel,upDeckTh) #[0]: transversal rebars #[1]: longitudinal rebars UpDeckIntSlabRCSect.dir1PositvRebarRows= def_simple_RC_section.LongReinfLayers([fi16s150r35]) UpDeckIntSlabRCSect.dir1NegatvRebarRows= def_simple_RC_section.LongReinfLayers([fi26s150r35,fi22s150r35]) UpDeckIntSlabRCSect.dir2PositvRebarRows= def_simple_RC_section.LongReinfLayers([fi16s150r35])
__email__= "*****@*****.**" from materials.sections.fiber_section import def_simple_RC_section from materials.sia262 import SIA262_materials from materials.sia262 import SIA262_limit_state_checking from postprocess import element_section_map from postprocess import limit_state_data as lsd concrete= SIA262_materials.c30_37 reinfSteel= SIA262_materials.B500B areaFi14= SIA262_materials.section_barres_courantes[14e-3] fi14s150r40= def_simple_RC_section.ReinfRow(rebarsDiam=14e-3,areaRebar= areaFi14,rebarsSpacing= 0.150,width=1.0,nominalCover= 0.040) fi14s150r50=def_simple_RC_section.ReinfRow(rebarsDiam=14e-3,areaRebar= areaFi14,rebarsSpacing= 0.150,width=1.0,nominalCover= 0.050) slab30RCSect= element_section_map.RCSlabBeamSection(name='slab30RCSect',sectionDescr="foundation slab thickness 30 cm.",concrType=concrete, reinfSteelType=reinfSteel,depth=0.3) slab30RCSect.dir1PositvRebarRows= def_simple_RC_section.LongReinfLayers([fi14s150r40]) #Longitudinal slab30RCSect.dir1NegatvRebarRows= def_simple_RC_section.LongReinfLayers([fi14s150r40]) # slab30RCSect.dir2PositvRebarRows= def_simple_RC_section.LongReinfLayers([fi14s150r50]) #Transverse slab30RCSect.dir2NegatvRebarRows= def_simple_RC_section.LongReinfLayers([fi14s150r50]) # slab30RCSect.createSections() shearController= SIA262_limit_state_checking.ShearController(lsd.shearResistance.label) #rcSection= slab30RCSect.lstRCSects[0] rcSection= slab30RCSect.lstRCSects[1] shearController.setSection(rcSection) VuTmp= rcSection.getRoughVcuEstimation() VyTmp= -1768.49921973
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 = element_section_map.RCSlabBeamSection("deck", "RC deck.", concrete, reinfSteel, 0.3) deckSections.dir2PositvRebarRows = def_simple_RC_section.LongReinfLayers([ def_simple_RC_section.ReinfRow(rebarsDiam=12e-3, areaRebar=areaFi12, rebarsSpacing=sepT, nominalCover=basicCover) ]) deckSections.dir2NegatvRebarRows = def_simple_RC_section.LongReinfLayers([ def_simple_RC_section.ReinfRow(rebarsDiam=12e-3, areaRebar=areaFi12, rebarsSpacing=sepT, nominalCover=basicCover) ]) deckSections.dir1PositvRebarRows = def_simple_RC_section.LongReinfLayers([ def_simple_RC_section.ReinfRow(rebarsDiam=20e-3, areaRebar=areaFi20,
nominalCover=0.050) fi26s150r40 = def_simple_RC_section.ReinfRow(rebarsDiam=26e-3, areaRebar=areaFi26, rebarsSpacing=0.150, width=1.0, nominalCover=0.040) fi26s150r50 = def_simple_RC_section.ReinfRow(rebarsDiam=26e-3, areaRebar=areaFi26, rebarsSpacing=0.150, width=1.0, nominalCover=0.050) deckSlabRCSect = element_section_map.RCSlabBeamSection( name='deckSlabRCSect', sectionDescr="estacade.", concrType=concrete, reinfSteelType=reinfSteel, depth=0.20) #[0]: rebars on back end section. #[1]: rebars on front end section deckSlabRCSect.dir1PositvRebarRows = def_simple_RC_section.LongReinfLayers( [fi12s150r40]) #Ok deckSlabRCSect.dir1NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [fi12s150r40]) #Ok deckSlabRCSect.dir2PositvRebarRows = def_simple_RC_section.LongReinfLayers( [fi12s150r40]) #Ok deckSlabRCSect.dir2NegatvRebarRows = def_simple_RC_section.LongReinfLayers( [fi12s150r40]) #Ok sections.append(deckSlabRCSect)