scc10x20= section_properties.RectangularSection('scc10x20',b,h) scc10x20.nDivIJ= 32 # number of cells in IJ direction scc10x20.nDivJK= 32 # number of cells in JK direction import os pth= os.path.dirname(__file__) if(not pth): pth= "." #print "pth= ", pth execfile(pth+"/fiber_section_test_macros.py") fy= 2600 # Yield stress of the material expressed in kp/cm2. E= 2.1e6 # Young modulus of the material en kp/cm2. # Materials definition: epp= typical_materials.defElasticPPMaterial(preprocessor, "epp",E,fy,-fy) # Section geometry # creation geomRectang= preprocessor.getMaterialHandler.newSectionGeometry("geomRectang") #generation of a quadrilateral region of the scc10x20 sizes and number of #divisions made of material nmbMat reg= scc10x20.getRegion(gm=geomRectang,nmbMat="epp") rectang= preprocessor.getMaterialHandler.newMaterial("fiber_section_3d","rectang") fiberSectionRepr= rectang.getFiberSectionRepr() fiberSectionRepr.setGeomNamed("geomRectang") rectang.setupFibers() fibers= rectang.getFibers() extractFiberSectionProperties(rectang,scc10x20)
import os pth= os.path.dirname(__file__) if(not pth): pth= "." #print "pth= ", pth execfile(pth+"/fiber_section_test_macros.py") fy= 2600 # Yield stress of the material expressed in kp/cm2. E= 2.1e6 # Young’s modulus of the material (kp/cm2). feProblem= xc.FEProblem() feProblem.logFileName= "/tmp/erase.log" # Ignore warning messages preprocessor= feProblem.getPreprocessor # Materials definition epp= typical_materials.defElasticPPMaterial(preprocessor, "epp",E,fy,-fy) #elastic perfectly-plastic uniaxial material respT= typical_materials.defElasticMaterial(preprocessor, "respT",1e10) # Torsion response. respVy= typical_materials.defElasticMaterial(preprocessor, "respVy",1e6) # Shear response in y direction. respVz= typical_materials.defElasticMaterial(preprocessor, "respVz",1e3) # Shear response in y direction. # Section geometry #creation geomRectang= preprocessor.getMaterialHandler.newSectionGeometry("geomRectang") #generation of a quadrilateral region of the scc10x20 sizes and number of #divisions made of material nmbMat reg= scc10x20.getRegion(gm=geomRectang,nmbMat="epp") sa= preprocessor.getMaterialHandler.newMaterial("fiberSectionShear3d","sa") fiberSectionRepr= sa.getFiberSectionRepr() fiberSectionRepr.setGeomNamed("geomRectang") sa.setupFibers() extractFiberSectionProperties(sa,scc10x20) sa.setRespVyByName("respVy")
def getDesignElasticPerfectlyPlasticMaterial(self,preprocessor,name): return typical_materials.defElasticPPMaterial(preprocessor, name,self.E,self.fyd(),-self.fyd())
2600, 2600, 2600, 2600, 2600, 2600, 2566.63495936, 2467.11072253, 2303.13017679, 2077.49907476, 1794.07802714, 1457.71644663, 1074.16957313, 650, 192.465386224, -290.6057241, -790.947850342, -1300, -1809.05214966, -2309.3942759, -2600, -2600, -2600, -2600, -2600, -2600, -2600, -2600, -2600, -2600, -2566.63495936, -2467.11072253, -2303.13017679, -2077.49907476, -1794.07802714, -1457.71644663, -1074.16957313, -650, -192.465386224, 290.6057241, 790.947850342, 1300, 1809.05214966, 2309.3942759, 2600, 2600, 2600, 2600 ] # Model definition feProblem = xc.FEProblem() feProblem.logFileName = "/tmp/borrar.log" # Ignore warning messages preprocessor = feProblem.getPreprocessor # Define materials epp = typical_materials.defElasticPPMaterial(preprocessor, "epp", E, fy, -fy) A = 1.5 * epp.eyp fin = 54 incr = math.pi / 24.0 x = [] y = [] j = 0 while (j <= fin): epp.setTrialStrain(A * math.sin(j * incr), 0.0) epp.commitState() x.append(epp.getStrain()) y.append(epp.getStress()) j = j + 1 diff_x = [] diff_y = []
import os pth = os.path.dirname(__file__) if (not pth): pth = "." # print("pth= ", pth) exec(open(pth + "/fiber_section_test_macros.py").read()) fy = 2600 # Yield stress of the material expressed in kp/cm2. E = 2.1e6 # Young’s modulus of the material (kp/cm2). feProblem = xc.FEProblem() feProblem.logFileName = "/tmp/erase.log" # Ignore warning messages preprocessor = feProblem.getPreprocessor # Materials definition epp = typical_materials.defElasticPPMaterial( preprocessor, "epp", E, fy, -fy) # elastic perfectly-plastic uniaxial material respT = typical_materials.defElasticMaterial(preprocessor, "respT", 1e10) # Torsion response. respVy = typical_materials.defElasticMaterial( preprocessor, "respVy", 1e6) # Shear response in y direction. respVz = typical_materials.defElasticMaterial( preprocessor, "respVz", 1e3) # Shear response in y direction. # Section geometry # creation geomRectang = preprocessor.getMaterialHandler.newSectionGeometry("geomRectang") # generation of a quadrilateral region of the scc10x20 sizes and number of # divisions made of material nmbMat reg = scc10x20.getRegion(gm=geomRectang, nmbMat="epp") sa = preprocessor.getMaterialHandler.newMaterial("fiberSectionShear3d", "sa") fiberSectionRepr = sa.getFiberSectionRepr()
def getDesignElasticPerfectlyPlasticMaterial(self, preprocessor, name): return typical_materials.defElasticPPMaterial(preprocessor, name, self.E, self.fyd(), -self.fyd())