Ec= 20e9 sideLength= 1.0 feProblem= xc.FEProblem() preprocessor= feProblem.getPreprocessor concrete= typical_materials.defElasticMaterial(preprocessor, 'concrete',Ec) sectionGeometryTest= preprocessor.getMaterialHandler.newSectionGeometry("sectionGeometryTest") regions= sectionGeometryTest.getRegions concrete= regions.newQuadRegion('concrete') concrete.pMin= geom.Pos2d(0.0,0.0) concrete.pMax= geom.Pos2d(1.0,1.0) pt= EHE_limit_state_checking.computeEffectiveHollowSectionParameters(sectionGeometryTest,0.5,0.03) ratio1= (pt.A()-1) ratio2= (pt.u()-4)/4 ratio3= (pt.he()-0.25)/0.25 ratio4= (pt.Ae()-(0.75**2))/(0.75**2) ratio5= (pt.ue()-3)/3 ''' print "A= ",A print "u= ",u print "he= ",he print "Ae= ",Ae print "ue= ",ue print "ratio1= ",ratio1
lPatterns.addToDomain("0") # Solution procedure analisis= predefined_solutions.simple_newton_raphson(feProblem) analOk= analisis.analyze(10) concreteSectionShearParams= EHE_limit_state_checking.ShearController('ULS_shear') concreteSectionShearParams.AsTrsv= EHE_materials.Fi6*numRamas/0.2 # reinforcement area transversal concreteSectionShearParams.theta= math.radians(45) concreteSectionShearParams.alpha= math.radians(90) secHAParamsTorsion= EHE_limit_state_checking.computeEffectiveHollowSectionParameters(geomSecHA,depth/2.0,cover) elements= preprocessor.getElementHandler ele1= elements.getElement(1) scc= ele1.getSection() N= scc.getStressResultantComponent("N") My= scc.getStressResultantComponent("My") Vy= scc.getStressResultantComponent("Vy") Mz= scc.getStressResultantComponent("Mz") Vz= scc.getStressResultantComponent("Vz") NTmp= N MTmp= math.sqrt((My)**2+(Mz)**2) VTmp= math.sqrt((Vy)**2+(Vz)**2) TTmp= scc.getStressResultantComponent("Mx") concreteSectionShearParams.calcVuEHE08(scc,secHAParamsTorsion,concr,B500S,NTmp,MTmp,VTmp,TTmp)
lp0.newNodalLoad(2, xc.Vector([NDato, 0, VDato, 0, MyDato, MzDato])) #We add the load case to domain. casos.addToDomain("0") # Solution procedure analisis = predefined_solutions.simple_newton_raphson(feProblem) analOk = analisis.analyze(10) secHAParamsCortante = EHE_limit_state_checking.ShearController('ULS_shear') secHAParamsCortante.AsTrsv = EHE_materials.Fi6 * numRamas / 0.2 # reinforcement area transversal secHAParamsCortante.theta = math.radians(45) secHAParamsCortante.alpha = math.radians(90) secHAParamsTorsion = EHE_limit_state_checking.computeEffectiveHollowSectionParameters( geomSecHA, depth / 2.0, cover) elements = preprocessor.getElementLoader ele1 = elements.getElement(1) scc = ele1.getSection() N = scc.getStressResultantComponent("N") My = scc.getStressResultantComponent("My") Vy = scc.getStressResultantComponent("Vy") Mz = scc.getStressResultantComponent("Mz") Vz = scc.getStressResultantComponent("Vz") NTmp = N MTmp = math.sqrt((My)**2 + (Mz)**2) VTmp = math.sqrt((Vy)**2 + (Vz)**2) TTmp = scc.getStressResultantComponent("Mx") secHAParamsCortante.calcVuEHE08(scc, secHAParamsTorsion, concr, B500S, NTmp, MTmp, VTmp, TTmp)
Ec = 20e9 sideLength = 1.0 feProblem = xc.FEProblem() preprocessor = feProblem.getPreprocessor concrete = typical_materials.defElasticMaterial(preprocessor, 'concrete', Ec) sectionGeometryTest = preprocessor.getMaterialHandler.newSectionGeometry( "sectionGeometryTest") regions = sectionGeometryTest.getRegions concrete = regions.newQuadRegion('concrete') concrete.pMin = geom.Pos2d(0.0, 0.0) concrete.pMax = geom.Pos2d(1.0, 1.0) pt = EHE_limit_state_checking.computeEffectiveHollowSectionParameters( sectionGeometryTest, 0.5, 0.03) ratio1 = (pt.A() - 1) ratio2 = (pt.u() - 4) / 4 ratio3 = (pt.he() - 0.25) / 0.25 ratio4 = (pt.Ae() - (0.75**2)) / (0.75**2) ratio5 = (pt.ue() - 3) / 3 ''' print("A= ",A) print("u= ",u) print("he= ",he) print("Ae= ",Ae) print("ue= ",ue) print("ratio1= ",ratio1) print("ratio2= ",ratio2) print("ratio3= ",ratio3)