def generateSprings(self,xcSet): '''Creates the springs at the nodes.''' self.foundationSet= xcSet #Set with elastic supported elements self.springs= list() #spring elements. self.foundationSet.resetTributaries() self.foundationSet.computeTributaryAreas(False) sNod= self.foundationSet.getNodes preprocessor= self.foundationSet.getPreprocessor modelSpace= predefined_spaces.getStructuralMechanics3DSpace(preprocessor) self.createMaterials(preprocessor,self.foundationSet.name) idElem= preprocessor.getElementHandler.defaultTag for n in sNod: arTribNod=n.getTributaryArea() self.xSpring.E= self.cRoz*self.wModulus*arTribNod self.ySpring.E= self.cRoz*self.wModulus*arTribNod self.zSpring.E= self.wModulus*arTribNod nn= modelSpace.setBearing(n.tag,[self.xSpringName,self.ySpringName,self.zSpringName]) self.springs.append(preprocessor.getElementHandler.getElement(idElem)) idElem+= 1
# Section geometry #creation geomRectang= preprocessor.getMaterialHandler.newSectionGeometry("geomRectang") reg= scc1x1.getRegion(geomRectang,"elast") sa= preprocessor.getMaterialHandler.newMaterial("fiberSectionShear3d","sa") fiberSectionRepr= sa.getFiberSectionRepr() fiberSectionRepr.setGeomNamed("geomRectang") sa.setupFibers() extractFiberSectionProperties(sa,scc1x1) sa.setRespVyByName("respVy") sa.setRespVzByName("respVz") sa.setRespTByName("respT") scc3d_testing_bench.sectionModel(preprocessor, "sa") # Constraints modelSpace= predefined_spaces.getStructuralMechanics3DSpace(preprocessor) modelSpace.fixNode000_000(1) # Loads definition loadHandler= preprocessor.getLoadHandler lPatterns= loadHandler.getLoadPatterns #Load modulation. ts= lPatterns.newTimeSeries("constant_ts","ts") lPatterns.currentTimeSeries= "ts" #Load case definition lp0= lPatterns.newLoadPattern("default","0") #lPatterns.currentLoadPattern= "0" loadN= -1 loadVy= -2
reinforcementSup.p1 = geom.Pos2d(cover - width / 2.0, depth / 2.0 - cover) # Armadura superior. reinforcementSup.p2 = geom.Pos2d(width / 2.0 - cover, depth / 2.0 - cover) secHA = materiales.newMaterial("fiberSectionShear3d", "secHA") fiberSectionRepr = secHA.getFiberSectionRepr() fiberSectionRepr.setGeomNamed("geomSecHA") secHA.setupFibers() secHA.setRespVyByName("respVy") secHA.setRespVzByName("respVz") secHA.setRespTByName("respT") scc3d_testing_bench.sectionModel(preprocessor, "secHA") # Constraints modelSpace = predefined_spaces.getStructuralMechanics3DSpace(preprocessor) modelSpace.fixNode000_000(1) # Loads definition cargas = preprocessor.getLoadHandler casos = cargas.getLoadPatterns #Load modulation. ts = casos.newTimeSeries("constant_ts", "ts") casos.currentTimeSeries = "ts" #Load case definition lp0 = casos.newLoadPattern("default", "0") lp0.newNodalLoad(2, xc.Vector([NDato, 0, VDato, 0, MyDato, MzDato])) #We add the load case to domain.