concr = EHE_materials.HA25
concr.alfacc = 0.85  # f_maxd= 0.85*fcd concrete long term compressive strength factor (normally alfacc=1)
steel = EHE_materials.B500S

# Section geometry
section = def_simple_RC_section.RCRectangularSection(name='test',
                                                     width=width,
                                                     depth=depth,
                                                     concrType=concr,
                                                     reinfSteelType=steel)
section.positvRebarRows = def_simple_RC_section.LongReinfLayers([lowerRow])
section.negatvRebarRows = def_simple_RC_section.LongReinfLayers([upperRow])
# section.shReinfY= shearReinf

section.defRCSection(preprocessor, matDiagType='d')
scc3d_testing_bench.sectionModel(preprocessor, section.sectionName)

# Constraints
modelSpace = predefined_spaces.getStructuralMechanics3DSpace(preprocessor)
modelSpace.fixNode000_000(1)

# Loads definition
lp0 = modelSpace.newLoadPattern(name='0')
lp0.newNodalLoad(2, xc.Vector([NDato, 0, 0, 0, MyDato, MzDato]))
lp1 = modelSpace.newLoadPattern(name='1')
lp1.newNodalLoad(2, xc.Vector([NDato, 0, 0, 0, MzDato / 10.0, MyDato / 10.0]))
lp2 = modelSpace.newLoadPattern(name='2')
lp2.newNodalLoad(2, xc.Vector([NDato, 0, 0, 0, 0, 0]))

# We add the load case to domain.
modelSpace.addLoadCaseToDomain(lp0.name)
示例#2
0
dgDB500S = EHE_materials.B500S.getDiagD(preprocessor)

import os
pth = os.path.dirname(__file__)
if (not pth):
    pth = "."
#print "pth= ", pth
execfile(pth + "/geomSeccBarras.py")

secBarras = preprocessor.getMaterialHandler.newMaterial(
    "fiber_section_3d", "secBarras")
fiberSectionRepr = secBarras.getFiberSectionRepr()
fiberSectionRepr.setGeomNamed("geomSecBarras")
secBarras.setupFibers()

scc3d_testing_bench.sectionModel(preprocessor, "secBarras")

# Constraints
modelSpace = predefined_spaces.getStructuralMechanics3DSpace(preprocessor)
modelSpace.fixNode000_000(1)
modelSpace.fixNodeF00_00F(2)

# Loads definition
loadHandler = preprocessor.getLoadHandler

lPatterns = loadHandler.getLoadPatterns

#Load modulation.
ts = lPatterns.newTimeSeries("constant_ts", "ts")
lPatterns.currentTimeSeries = "ts"
#Load case definition
示例#3
0
#SHS50x50x2_5.A= 4.51e-4
#SHS50x50x2_5.Iz= 17.9e-8
#SHS50x50x2_5.Iy= 17.9e-8
SHS50x50x2_5.Wzel = 7.16e-6
SHS50x50x2_5.Wzpl = 8.47e-6
SHS50x50x2_5.iz = 1.99e-2
SHS50x50x2_5.iy = 1.99e-2
#SHS50x50x2_5.J= 26.8e-8
SHS50x50x2_5.E = 210000e6
SHS50x50x2_5.nu = 0.3e6
#SHS50x50x2_5.G= SHS50x50x2_5.E/(2*(1+SHS50x50x2_5.nu))
SHS50x50x2_5.alpha = 5 / 6  # XXX Corregir

# Materials definition
mat = SHS50x50x2_5.defElasticSection3d(preprocessor, matSHS50x50x2_5)
elemZLS = scc3d_testing_bench.sectionModel(preprocessor,
                                           SHS50x50x2_5.sectionName)

# Constraints
modelSpace = predefined_spaces.getStructuralMechanics3DSpace(preprocessor)
modelSpace.fixNode000_000(1)
modelSpace.fixNodeF00_00F(2)

# Loads definition
loadHandler = preprocessor.getLoadHandler

lPatterns = loadHandler.getLoadPatterns

#Load modulation.
ts = lPatterns.newTimeSeries("constant_ts", "ts")
lPatterns.currentTimeSeries = "ts"
#Load case definition
示例#4
0
#datosScc1LosC.negatvRebars.setUp(0,0.0,0.0,datosScc1LosC.b,0.1)
#datosScc1LosC.positvRebars.setUp(6,26e-3,(areaFi22+areaFi26)/2.0,datosScc1LosC.b,0.05+0.026/2.0)

NDato = 0  # Axial force for crack control checking.
MyDato = 117e3  # Bending moment force for crack control checking.

feProblem = xc.FEProblem()
preprocessor = feProblem.getPreprocessor
# Materials definition
# concreteMatTag= EHE_materials.HA30.defDiagK(preprocessor)
# reinfSteelMaterialTag= EHE_materials.B500S.defDiagK(preprocessor)

datosScc1LosC.defRCSimpleSection(preprocessor, "k")

scc3d_testing_bench.sectionModel(preprocessor, datosScc1LosC.sectionName)

# Constraints
modelSpace = predefined_spaces.getStructuralMechanics3DSpace(preprocessor)
modelSpace.fixNode000_000(1)
modelSpace.fixNodeF00_0F0(2)

# Loads definition
cargas = preprocessor.getLoadLoader

casos = cargas.getLoadPatterns

#Load modulation.
ts = casos.newTimeSeries("constant_ts", "ts")
casos.currentTimeSeries = "ts"
#Load case definition
示例#5
0
                                     EHE_materials.Y1860S7.tInic())
tag = EHE_materials.HP45.defDiagD(preprocessor)
import os

pth = os.path.dirname(__file__)
if (not pth):
    pth = "."
#print "pth= ", pth
execfile(pth + "/prestressed_concrete_section_01.py")
materialHandler = preprocessor.getMaterialHandler
secHP = materialHandler.newMaterial("fiber_section_3d", "secHP")
fiberSectionRepr = secHP.getFiberSectionRepr()
fiberSectionRepr.setGeomNamed("prestressedConcretSectionGeom01")
secHP.setupFibers()

elem = scc3d_testing_bench.sectionModel(preprocessor, "secHP")

# Constraints
modelSpace = predefined_spaces.getStructuralMechanics3DSpace(preprocessor)
modelSpace.fixNode000_000(1)
modelSpace.fixNodeF00_00F(2)

# Loads definition
loadHandler = preprocessor.getLoadHandler

lPatterns = loadHandler.getLoadPatterns

#Load modulation.
ts = lPatterns.newTimeSeries("constant_ts", "ts")
lPatterns.currentTimeSeries = "ts"
#Load case definition
示例#6
0
respVz= typical_materials.defElasticMaterial(preprocessor, "respVz",1e6) # Shear response in y direction.

# 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"
示例#7
0
__email__= "*****@*****.**"

feProblem= xc.FEProblem()
feProblem.logFileName= "/tmp/erase.log" # Don't pring warnings
preprocessor=  feProblem.getPreprocessor

# Rectangular cross-section definition
scc10x20=  section_properties.RectangularSection(name="rectang",b=.10,h=.20) # Section geometry.
matscc10x20=typical_materials.MaterialData(name='mtrectang',E=2.1e6,nu=0.3,rho=2500) # Section material.


feProblem= xc.FEProblem()
preprocessor=  feProblem.getPreprocessor
# Materials definition
matPoteau= scc10x20.defElasticShearSection3d(preprocessor,matscc10x20) 
elemZLS= scc3d_testing_bench.sectionModel(preprocessor, scc10x20.sectionName)

# Constraints
modelSpace= predefined_spaces.getStructuralMechanics3DSpace(preprocessor)
modelSpace.fixNode000_000(1)

# Load definition.
lp0= modelSpace.newLoadPattern(name= '0')

loadMz= 1e3
lp0.newNodalLoad(2,xc.Vector([0,0,0,0,0,loadMz]))

# We add the load case to domain.
modelSpace.addLoadCaseToDomain(lp0.name)

示例#8
0
__version__= "3.0"
__email__= "*****@*****.**"

feProblem= xc.FEProblem()
feProblem.logFileName= "/tmp/erase.log" # Ignore warning messages
preprocessor=  feProblem.getPreprocessor

# Section geometry
scc10x20=  section_properties.RectangularSection(name="rectang",b=.10,h=.20) # Section geometry.
# Section material
matscc10x20=typical_materials.MaterialData(name='mtrectang',E=2.1e6,nu=0.3,rho=2500) # Section material.


# Materials definition
matPoteau= scc10x20.defElasticSection3d(preprocessor,matscc10x20)
elemZLS= scc3d_testing_bench.sectionModel(preprocessor, scc10x20.sectionName)

# Constraints
modelSpace= predefined_spaces.getStructuralMechanics3DSpace(preprocessor)
modelSpace.fixNode000_000(1)
modelSpace.fixNodeF00_00F(2)

# 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"
示例#9
0
# 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()
extractFiberSectionProperties(rectang,scc10x20)

scc3d_testing_bench.sectionModel(preprocessor, "rectang")
# Constraints
modelSpace= predefined_spaces.getStructuralMechanics3DSpace(preprocessor)
modelSpace.fixNode000_000(1)
modelSpace.fixNodeF00_00F(2)

# 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")
示例#10
0
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.

materialHandler = preprocessor.getMaterialHandler
sctFibers = materialHandler.newMaterial("fiberSectionShear3d", "sctFibers")
fiberSectionRepr = sctFibers.getFiberSectionRepr()
fiberSectionRepr.setGeomNamed("geomSectFibers")
sctFibers.setupFibers()
sctFibers.setRespVyByName("respVy")
sctFibers.setRespVzByName("respVz")
sctFibers.setRespTByName("respT")
scc3d_testing_bench.sectionModel(preprocessor, "sctFibers")

# #report of the section material
# sectParam=section_report.SectionInfo(preprocessor=preprocessor,sectName='example_7.3_EC2W',sectDescr='Test example 7.3 EC2 Worked examples. Section definition',concrete=concrete,rfSteel=rfSteel,concrDiag=concrDiagram,rfStDiag=steelDiagram,geomSection=geomSectFibers,width=width,depth=depth) #Obtains section parameters for report

# Elements definition
'''
elements= preprocessor.getElementHandler
elements.defaultMaterial='sctFibers'
elements.dimElem= 3 # Dimension of element space
elements.defaultTag= 1
elem= elements.newElement("ZeroLengthSection",xc.ID([1,2]))
'''
# Constraints
modelSpace = predefined_spaces.getStructuralMechanics3DSpace(
    preprocessor
示例#11
0
feProblem= xc.FEProblem()
preprocessor=  feProblem.getPreprocessor
# Materials definition
tag= EHE_materials.B500S.defDiagD(preprocessor)
import os
pth= os.path.dirname(__file__)
if(not pth):
  pth= "."
# print("pth= ", pth)
exec(open(pth+"/barsSectionGeometry.py").read())
barsSection= preprocessor.getMaterialHandler.newMaterial("fiber_section_GJ","barsSection")
fiberSectionRepr= barsSection.getFiberSectionRepr()
fiberSectionRepr.setGeomNamed("barsSectionGeometry")
barsSection.setupFibers()

scc3d_testing_bench.sectionModel(preprocessor, "barsSection")

# Constraints
modelSpace= predefined_spaces.getStructuralMechanics3DSpace(preprocessor)
modelSpace.fixNode000_000(1)
modelSpace.fixNodeF00_00F(2)

# Loads definition
lp0= modelSpace.newLoadPattern(name= '0')
lp0.newNodalLoad(2,xc.Vector([0,0,0,0,0,MzDato]))

# We add the load case to domain.
modelSpace.addLoadCaseToDomain(lp0.name)


# Solution procedure
示例#12
0


NDato= 0 # Axial force for crack control checking.
MyDato= 1000 # Bending moment force for crack control checking.

feProblem= xc.FEProblem()
preprocessor=  feProblem.getPreprocessor
# Materials definition
concreteMatTag= EHE_materials.HA25.defDiagK(preprocessor)
reinfSteelMaterialTag= EHE_materials.B500S.defDiagK(preprocessor)


datosScc1LosC.defRCSimpleSection(preprocessor, "k")

scc3d_testing_bench.sectionModel(preprocessor, datosScc1LosC.sectionName)

# Constraints
modelSpace= predefined_spaces.getStructuralMechanics3DSpace(preprocessor)
modelSpace.fixNode000_000(1)
modelSpace.fixNodeF00_0F0(2)

# Loads definition
loadHandler= preprocessor.getLoadHandler

lPatterns= loadHandler.getLoadPatterns

#Load modulation.
ts= lPatterns.newTimeSeries("constant_ts","ts")
lPatterns.currentTimeSeries= "ts"
#Load case definition
示例#13
0
# Materials definition
tag= EHE_materials.Y1860S7.defDiagD(preprocessor, EHE_materials.Y1860S7.tInic())
tag= EHE_materials.HP45.defDiagD(preprocessor)
import os
pth= os.path.dirname(__file__)
if(not pth):
  pth= "."
#print "pth= ", pth
execfile(pth+"/prestressed_concrete_section_01.py")
materiales= preprocessor.getMaterialHandler
secHP= materiales.newMaterial("fiber_section_3d","secHP")
fiberSectionRepr= secHP.getFiberSectionRepr()
fiberSectionRepr.setGeomNamed("prestressedConcretSectionGeom01")
secHP.setupFibers()

elem= scc3d_testing_bench.sectionModel(preprocessor, "secHP")

# Constraints
modelSpace= predefined_spaces.getStructuralMechanics3DSpace(preprocessor)
modelSpace.fixNode000_000(1)
modelSpace.fixNodeF00_00F(2)

# Loads definition
loadHandler= preprocessor.getLoadHandler

lPatterns= loadHandler.getLoadPatterns

#Load modulation.
ts= lPatterns.newTimeSeries("constant_ts","ts")
lPatterns.currentTimeSeries= "ts"
#Load case definition
示例#14
0
# 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()
extractFiberSectionProperties(rectang,scc10x20)

scc3d_testing_bench.sectionModel(preprocessor, "rectang")
# Constraints
modelSpace= predefined_spaces.getStructuralMechanics3DSpace(preprocessor)
modelSpace.fixNode000_000(1)
modelSpace.fixNodeF00_00F(2)

# 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")
示例#15
0
#SHS50x50x2_5.Iz= 17.9e-8
#SHS50x50x2_5.Iy= 17.9e-8
SHS50x50x2_5.Wzel= 7.16e-6
SHS50x50x2_5.Wzpl= 8.47e-6
SHS50x50x2_5.iz= 1.99e-2
SHS50x50x2_5.iy= 1.99e-2
#SHS50x50x2_5.J= 26.8e-8
SHS50x50x2_5.E= 210000e6
SHS50x50x2_5.nu= 0.3e6
#SHS50x50x2_5.G= SHS50x50x2_5.E/(2*(1+SHS50x50x2_5.nu))
SHS50x50x2_5.alpha= 5/6 # XXX Corregir


# Materials definition
mat= SHS50x50x2_5.defElasticSection3d(preprocessor,matSHS50x50x2_5)
elemZLS= scc3d_testing_bench.sectionModel(preprocessor, SHS50x50x2_5.sectionName)

# Constraints
modelSpace= predefined_spaces.getStructuralMechanics3DSpace(preprocessor)
modelSpace.fixNode000_000(1)
modelSpace.fixNodeF00_00F(2)

# Loads definition
loadHandler= preprocessor.getLoadHandler

lPatterns= loadHandler.getLoadPatterns

#Load modulation.
ts= lPatterns.newTimeSeries("constant_ts","ts")
lPatterns.currentTimeSeries= "ts"
#Load case definition