예제 #1
0
 def defDiagK(self, preprocessor, initialStress):
     '''Characteristic stress-strain diagram.'''
     steel = typical_materials.defSteel02(preprocessor, self.nmbDiagK,
                                          self.Es, self.fpk, self.bsh,
                                          initialStress)
     self.matTagK = steel.tag
     return steel
예제 #2
0
 def defDiagD(self, preprocessor, initialStress):
     '''Design stress-strain diagram.'''
     steel = typical_materials.defSteel02(preprocessor, self.nmbDiagD,
                                          self.Es, self.fpd(), self.bsh,
                                          initialStress)
     self.matTagD = steel.tag
     return steel
예제 #3
0
]

# Model definition
feProblem = xc.FEProblem()
preprocessor = feProblem.getPreprocessor
nodes = preprocessor.getNodeHandler

# Problem type
modelSpace = predefined_spaces.SolidMechanics2D(nodes)

nodes.defaultTag = 1  #First node number.
nod = nodes.newNodeXY(0, 0)
nod = nodes.newNodeXY(l, 0.0)

# Materials definition
steel = typical_materials.defSteel02(preprocessor, "steel", E, fy, 0.001, 0.0)
''' We define nodes at the points where loads will be applied.
    We will not compute stresses so we can use an arbitrary
    cross section of unit area.'''

# Elements definition
elements = preprocessor.getElementHandler
elements.defaultMaterial = steel.name
elements.dimElem = 2  # Dimension of element space
elements.defaultTag = 1  #Tag for the next element.
spring = elements.newElement("Spring", xc.ID([1, 2]))

# Constraints
constraints = preprocessor.getBoundaryCondHandler
#
spc = constraints.newSPConstraint(1, 0, 0.0)  # Node 1
예제 #4
0
nod5 = nodes.newNodeXYZ(0, 1, 0)
nod6 = nodes.newNodeXYZ(1, 1, 0)
nod7 = nodes.newNodeXYZ(2, 1, 0)
nod8 = nodes.newNodeXYZ(3, 1, 0)
nod9 = nodes.newNodeXYZ(0, 2, 0)
nod10 = nodes.newNodeXYZ(1, 2, 0)
nod11 = nodes.newNodeXYZ(2, 2, 0)
nod12 = nodes.newNodeXYZ(3, 2, 0)

# Materials definition

deckMat = typical_materials.defElasticMembranePlateSection(
    preprocessor, "deckMat", Ec, nuC, densLosa, deckThk)

prestressingSteel = typical_materials.defSteel02(preprocessor,
                                                 "prestressingSteel", Ep, fy,
                                                 0.001, tInic)

elements = preprocessor.getElementHandler
# Reinforced concrete deck
elements.defaultMaterial = deckMat.name
elements.defaultTag = 1
elem = elements.newElement("ShellMITC4", xc.ID([1, 2, 6, 5]))

elem = elements.newElement("ShellMITC4", xc.ID([2, 3, 7, 6]))
elem = elements.newElement("ShellMITC4", xc.ID([3, 4, 8, 7]))
elem = elements.newElement("ShellMITC4", xc.ID([5, 6, 10, 9]))
elem = elements.newElement("ShellMITC4", xc.ID([6, 7, 11, 10]))
elem = elements.newElement("ShellMITC4", xc.ID([7, 8, 12, 11]))

# active reinforcement
예제 #5
0
elements.defaultMaterial = 'beamMat'
elements.defaultTag = 1
for nn in range(1, nnodesBeam):
    elem = elements.newElement("ElasticBeam3d", xc.ID([nn, nn + 1]))
    beamSet.elements.append(elem)

#Boundary conditions
modelSpace.fixNode000_FFF(1)
#modelSpace.fixNode(DOFpattern='F00_FFF',nodeTag=nnodesBeam)
modelSpace.fixNode000_FFF(nnodesBeam)

#TENDONS
#Material
prestressingSteel = tm.defSteel02(preprocessor=preprocessor,
                                  name="prestressingSteel",
                                  E=Ep,
                                  fy=fy,
                                  b=0.001,
                                  initialStress=fpi)

#Geometry
n_points_rough = 5  #number of points provided to the interpolation algorithm
n_points_fine = 91  #number of points interpolated

#Exact parabola
from model.geometry import geom_utils
a, b, c = geom_utils.fit_parabola(np.array([0, span / 2.0, span]),
                                  np.array([eEnds, eMidspan, eEnds]))
x_parab_rough, y_parab_rough, z_parab_rough = geom_utils.eq_points_parabola(
    0, span, n_points_rough, a, b, c, 0)
#Tendon1 definition, layout
tendon1 = presconc.PrestressTendon([])
예제 #6
0
]

# Model definition
prueba = xc.ProblemaEF()
preprocessor = prueba.getPreprocessor
nodes = preprocessor.getNodeLoader

# Problem type
modelSpace = predefined_spaces.SolidMechanics2D(nodes)

nodes.defaultTag = 1  #First node number.
nod = nodes.newNodeXY(0, 0)
nod = nodes.newNodeXY(l, 0.0)

# Materials definition
mat = typical_materials.defSteel02(preprocessor, "acero", E, fy, 0.001, 0.0)
''' Se definen nodes en los puntos de aplicación de
la carga. Puesto que no se van a determinar tensiones
se emplea una sección arbitraria de área unidad '''

# Elements definition
elementos = preprocessor.getElementLoader
elementos.defaultMaterial = "acero"
elementos.dimElem = 2
elementos.defaultTag = 1  #Tag for the next element.
spring = elementos.newElement("spring", xc.ID([1, 2]))

# Constraints
coacciones = preprocessor.getConstraintLoader
#
spc = coacciones.newSPConstraint(1, 0, 0.0)  # Node 1
예제 #7
0
__version__= "3.0"
__email__= "*****@*****.**"

# Problem type
prueba= xc.ProblemaEF()
preprocessor=  prueba.getPreprocessor
nodes= preprocessor.getNodeLoader

modelSpace= predefined_spaces.SolidMechanics2D(nodes)
nodes.defaultTag= 1 #First node number.
nod= nodes.newNodeXY(0.0,0.0)
nod= nodes.newNodeXY(L,0.0)


# Materials definition
typical_materials.defSteel02(preprocessor, "aceroPret",E,fy,0.001,tInic)
    
# Elements definition
elementos= preprocessor.getElementLoader
elementos.defaultMaterial= "aceroPret"
elementos.dimElem= 2
elementos.defaultTag= 1 #Tag for the next element.
truss= elementos.newElement("truss",xc.ID([1,2]));
truss.area= A

    
# Constraints
coacciones= preprocessor.getConstraintLoader

#
spc= coacciones.newSPConstraint(1,0,0.0)
예제 #8
0
nod4= nodes.newNodeXYZ(3,0,0)
nod5= nodes.newNodeXYZ(0,1,0)
nod6= nodes.newNodeXYZ(1,1,0)
nod7= nodes.newNodeXYZ(2,1,0)
nod8= nodes.newNodeXYZ(3,1,0)
nod9= nodes.newNodeXYZ(0,2,0)
nod10= nodes.newNodeXYZ(1,2,0)
nod11= nodes.newNodeXYZ(2,2,0)
nod12= nodes.newNodeXYZ(3,2,0)


# Materials definition

hLosa= typical_materials.defElasticMembranePlateSection(preprocessor, "hLosa",Ec,nuC,densLosa,hLosa)

typical_materials.defSteel02(preprocessor, "prestressingSteel",Ep,fy,0.001,tInic)

elements= preprocessor.getElementHandler
# Reinforced concrete deck
elements.defaultMaterial= "hLosa"
elements.defaultTag= 1
elem= elements.newElement("ShellMITC4",xc.ID([1,2,6,5]))

elem= elements.newElement("ShellMITC4",xc.ID([2,3,7,6]))
elem= elements.newElement("ShellMITC4",xc.ID([3,4,8,7]))
elem= elements.newElement("ShellMITC4",xc.ID([5,6,10,9]))
elem= elements.newElement("ShellMITC4",xc.ID([6,7,11,10]))
elem= elements.newElement("ShellMITC4",xc.ID([7,8,12,11]))

# active reinforcement
elements.defaultMaterial= "prestressingSteel"
예제 #9
0
 def defDiagD(self,preprocessor,initialStress):
   # Diagrama tensión-deformación de cálculo.
   acero= typical_materials.defSteel02(preprocessor,self.nmbDiagD,self.Es,self.fpd(),self.bsh,initialStress)
   self.matTagD= acero.tag
   return acero #30160925 was 'self.matTagD'
예제 #10
0
 def defDiagK(self,preprocessor,initialStress):
   # Diagrama tensión-deformación característico.
   acero= typical_materials.defSteel02(preprocessor,self.nmbDiagK,self.Es,self.fpk,self.bsh,initialStress)
   self.matTagK= acero.tag
   return acero #30160925 was 'return self.matTagK'
예제 #11
0
파일: test_steel02.py 프로젝트: lcpt/xc
# Model definition
feProblem= xc.FEProblem()
preprocessor=  feProblem.getPreprocessor
nodes= preprocessor.getNodeHandler

# Problem type
modelSpace= predefined_spaces.SolidMechanics2D(nodes)


nodes.defaultTag= 1 #First node number.
nod= nodes.newNodeXY(0,0)
nod= nodes.newNodeXY(l,0.0)

# Materials definition
mat= typical_materials.defSteel02(preprocessor, "steel",E,fy,0.001,0.0)
  
''' We define nodes at the points where loads will be applied.
    We will not compute stresses so we can use an arbitrary
    cross section of unit area.'''
    
# Elements definition
elements= preprocessor.getElementHandler
elements.defaultMaterial= "steel"
elements.dimElem= 2 # Dimension of element space
elements.defaultTag= 1 #Tag for the next element.
spring= elements.newElement("Spring",xc.ID([1,2]))
    
# Constraints
constraints= preprocessor.getBoundaryCondHandler
#
예제 #12
0
파일: concrete_base.py 프로젝트: lcpt/xc
 def defDiagD(self,preprocessor,initialStress):
   '''Design stress-strain diagram.'''
   steel= typical_materials.defSteel02(preprocessor,self.nmbDiagD,self.Es,self.fpd(),self.bsh,initialStress)
   self.matTagD= steel.tag
   return steel
예제 #13
0
파일: concrete_base.py 프로젝트: lcpt/xc
 def defDiagK(self,preprocessor,initialStress):
   '''Characteristic stress-strain diagram.'''
   steel= typical_materials.defSteel02(preprocessor,self.nmbDiagK,self.Es,self.fpk,self.bsh,initialStress)
   self.matTagK= steel.tag
   return steel