예제 #1
0
#                         ***FE model - MESH***

beam_mesh=fem.LinSetToMesh(linSet=beamSet,matSect=beam_mat,elemSize=eSize,vDirLAxZ=xc.Vector([0,-1,0]),elemType='ElasticBeam3d',dimElemSpace=3,coordTransfType='linear')
beam_mesh.generateMesh(prep)    # mesh this set of lines

#                       ***BOUNDARY CONDITIONS***
n1=pnt1.getNode()
modelSpace.fixNode('FFF_FFF',n1.tag)
n2=pnt2.getNode()
modelSpace.fixNode('FFF_FFF',n2.tag)

#                       ***ACTIONS***
from actions import loads
#Uniform load on beams
totalLoadBeam=loads.UniformLoadOnBeams(name='totalLoadBeam', xcSet=beamSet, loadVector=fUnif,refSystem='Global')
halfLoadBeam=loads.UniformLoadOnBeams(name='halfLoadBeam', xcSet=beamSet, loadVector=fUnif*0.5,refSystem='Global')

#    ***LOAD CASES***
from actions import load_cases as lcases
lcase01=lcases.LoadCase(preprocessor=prep,name="lcase01",loadPType="default",timeSType="constant_ts")
lcase01.create()
lcase01.addLstLoads([totalLoadBeam])

lcase02=lcases.LoadCase(preprocessor=prep,name="lcase02",loadPType="default",timeSType="constant_ts")
lcase02.create()
lcase02.addLstLoads([halfLoadBeam])


from postprocess.xcVtk.FE_model import quick_graphics as QGrph
예제 #2
0
n_col2=nodes.getDomain.getMesh.getNearestNode(geom.Pos3d(0,yList[lastYpos],0))
modelSpace.fixNode('000_F0F',n_col2.tag)

#                       ***ACTIONS***


#Uniform load on beams
# syntax: UniformLoadOnBeams(name, xcSet, loadVector,refSystem)
#    name:       name identifying the load
#    xcSet:      set that contains the lines
#    loadVector: xc.Vector with the six components of the load: 
#                xc.Vector([Fx,Fy,Fz,Mx,My,Mz]).
#    refSystem: reference system in which loadVector is defined:
#               'Local': element local coordinate system
#               'Global': global coordinate system (defaults to 'Global)
unifLoadBeamsY=loads.UniformLoadOnBeams(name='unifLoadBeamsY', xcSet=beamY, loadVector=xc.Vector([0,0,-qunifBeam,0,0,0]),refSystem='Global')




#    ***LOAD CASES***

qunifBeams=lcases.LoadCase(preprocessor=prep,name="qunifBeams",loadPType="default",timeSType="constant_ts")
qunifBeams.create()
qunifBeams.addLstLoads([unifLoadBeamsY])

    
#    ***LIMIT STATE COMBINATIONS***
combContainer= cc.CombContainer()  #Container of load combinations

# COMBINATIONS OF ACTIONS FOR SERVICEABILITY LIMIT STATES