def defDiagK(self,preprocessor): ''' Returns XC uniaxial material (characteristic values). ''' self.materialDiagramK= typical_materials.defSteel01(preprocessor,self.nmbDiagK,self.Es,self.fyk,self.bsh()) self.matTagK= self.materialDiagramK.tag return self.materialDiagramK #30160925 was 'return self.matTagK'
# Problem type feProblem= xc.FEProblem() preprocessor= feProblem.getPreprocessor nodes= preprocessor.getNodeLoader modelSpace= predefined_spaces.StructuralMechanics2D(nodes) nodes.defaultTag= 1 #First node number. nod= nodes.newNodeXY(0,0.0) nod= nodes.newNodeXY(L,0.0) # Geometric transformation(s) lin= modelSpace.newLinearCrdTransf("lin") # Materials definition fy= 275e6 # Yield stress of the steel. steel= typical_materials.defSteel01(preprocessor, "steel",E,fy,0.001) respT= typical_materials.defElasticMaterial(preprocessor, "respT",G*J) # Torsion response. respVy= typical_materials.defElasticMaterial(preprocessor, "respVy",1e9) # Shear response in y direction. respVz= typical_materials.defElasticMaterial(preprocessor, "respVz",1e9) # Shear response in z direction. # Secciones import os pth= os.path.dirname(__file__) #print "pth= ", pth if(not pth): pth= "." execfile(pth+"/../aux/testQuadRegion.py") materiales= preprocessor.getMaterialLoader quadFibers= materiales.newMaterial("fiber_section_3d","quadFibers") fiberSectionRepr= quadFibers.getFiberSectionRepr()
nDivJK= 32 # number of cells in JK direction nFibTeor= nDivIJ*nDivJK areaTeor= width*depth iyTeor= 1/12.0*width*depth**3 izTeor= 1/12.0*depth*width**3 y0= 5 z0= 3.2 feProblem= xc.FEProblem() preprocessor= feProblem.getPreprocessor # Materials definition: uniaxial bilinear steel fy= 50.0 # yield strength E= 30000.0 # initial elastic tangent b=0.001 # strain-hardening ratio: ratio between post-yield tangent and initial elastic tangent steel= typical_materials.defSteel01(preprocessor=preprocessor,name="steel",E=E,fy=fy,b=b) # Section geometry # creation geomRectang= preprocessor.getMaterialHandler.newSectionGeometry("geomRectang") y1= width/2.0 z1= depth/2.0 #filling with regions regions= geomRectang.getRegions #generation of a quadrilateral region of the specified sizes and number of #divisions for the cells (fibers) generation steelRegion= regions.newQuadRegion("steel") steelRegion.nDivIJ= nDivIJ steelRegion.nDivJK= nDivJK steelRegion.pMin= geom.Pos2d(y0-y1,z0-z1) steelRegion.pMax= geom.Pos2d(y0+y1,z0+z1)
def defDiagD(self,preprocessor): ''' Returns XC uniaxial material (design values). ''' self.materialDiagramD= typical_materials.defSteel01(preprocessor,self.nmbDiagD,self.Es,self.fyd(),self.bsh()) self.matTagD= self.materialDiagramD.tag return self.materialDiagramD #30160925 was 'return self.matTagD'
preprocessor = prueba.getPreprocessor nodes = preprocessor.getNodeLoader # Problem type modelSpace = predefined_spaces.StructuralMechanics3D(nodes) nodes.defaultTag = 1 #First node number. nod = nodes.newNodeXYZ(0, 0.0, 0.0) nod = nodes.newNodeXYZ(L, 0.0, 0.0) trfs = preprocessor.getTransfCooLoader lin = trfs.newLinearCrdTransf3d("lin") lin.xzVector = xc.Vector([0, 1, 0]) # Materials definition fy = 275e6 # Tensión de cedencia of the steel E = 210e9 # Young modulus of the steel. acero = typical_materials.defSteel01(preprocessor, "acero", E, fy, 0.001) import os pth = os.path.dirname(__file__) #print "pth= ", pth if (not pth): pth = "." execfile(pth + "/geomCuadFibrasTN.py" ) #Definition of section geometry (regions and rebars) # Definition of a new empty fiber section named 'cuadFibrasTN' and stored in a # Python variable of the same name (surprisingly enough). cuadFibrasTN = preprocessor.getMaterialLoader.newMaterial( "fiber_section_3d", "cuadFibrasTN") fiberSectionRepr = cuadFibrasTN.getFiberSectionRepr( ) #Fiber section representation # of 'cuadFibrasTN'
feProblem= xc.FEProblem() preprocessor= feProblem.getPreprocessor nodes= preprocessor.getNodeHandler # Problem type modelSpace= predefined_spaces.StructuralMechanics3D(nodes) nodes.defaultTag= 1 #First node number. nod= nodes.newNodeXYZ(0,0.0,0.0) nod= nodes.newNodeXYZ(L,0.0,0.0) lin= modelSpace.newLinearCrdTransf("lin",xc.Vector([0,1,0])) # Materials definition fy= 275e6 # Yield stress of the steel. E= 210e9 # Young modulus of the steel. steel= typical_materials.defSteel01(preprocessor, "steel",E,fy,0.001) respT= typical_materials.defElasticMaterial(preprocessor, "respT",1e10) # Torsion response. respVy= typical_materials.defElasticMaterial(preprocessor, "respVy",1e9) # Shear response in y direction. respVz= typical_materials.defElasticMaterial(preprocessor, "respVz",1e9) # Shear response in z direction. # Sections import os pth= os.path.dirname(__file__) #print "pth= ", pth if(not pth): pth= "." execfile(pth+"/../../aux/testQuadRegion.py") materiales= preprocessor.getMaterialHandler quadFibers= materiales.newMaterial("fiber_section_3d","quadFibers") fiberSectionRepr= quadFibers.getFiberSectionRepr()
# Problem type feProblem= xc.FEProblem() preprocessor= feProblem.getPreprocessor nodes= preprocessor.getNodeHandler modelSpace= predefined_spaces.StructuralMechanics2D(nodes) nodes.defaultTag= 1 #First node number. nod= nodes.newNodeXY(1,0) nod= nodes.newNodeXY(1,0) # Materials definition: uniaxial bilinear steel fy= 2600 # yield strength E= 2.1e6 # initial elastic tangent b=0.001 # strain-hardening ratio: ratio between post-yield tangent and initial elastic tangent steel= typical_materials.defSteel01(preprocessor=preprocessor,name="steel",E=E,fy=fy,b=b) quadFibersGeom= preprocessor.getMaterialHandler.newSectionGeometry("quadFibersGeom") y1= width/2.0 z1= depth/2.0 reinforcement= quadFibersGeom.getReinfLayers reinforcementA= reinforcement.newStraightReinfLayer("steel") reinforcementA.numReinfBars= 2 reinforcementA.barArea= As reinforcementA.p1= geom.Pos2d(y0-depth/2.0,z0-width/2.0) reinforcementA.p2= geom.Pos2d(y0+depth/2.0,z0-width/2.0) reinforcementB= reinforcement.newStraightReinfLayer("steel") reinforcementB.numReinfBars= 2