写一个简支梁桥openseespy代码
时间: 2024-05-10 14:19:59 浏览: 319
以下是一个简单的梁桥的 OpenSeesPy 代码:
```
# Importing libraries
import openseespy.opensees as ops
import openseespy.postprocessing.Get_Rendering as opsplt
# Defining model parameters
length = 10.0
width = 1.0
height = 1.0
numNodes = 11
numElements = 10
beamArea = width * height
E = 200e9
I = (1/12) * width * height**3
w = 10e3
# Creating nodes
ops.node(1, 0.0, 0.0)
ops.node(2, length, 0.0)
ops.node(3, 2*length, 0.0)
ops.node(4, 3*length, 0.0)
ops.node(5, 4*length, 0.0)
ops.node(6, 5*length, 0.0)
ops.node(7, 6*length, 0.0)
ops.node(8, 7*length, 0.0)
ops.node(9, 8*length, 0.0)
ops.node(10, 9*length, 0.0)
ops.node(11, 10*length, 0.0)
# Fixing nodes
ops.fix(1, 1, 1, 1)
ops.fix(2, 1, 1, 1)
# Creating elements
for i in range(1, numElements+1):
ops.element('elasticBeamColumn', i, i, i+1, beamArea, E, I)
# Applying loads
ops.timeSeries('Linear', 1)
ops.pattern('Plain', 1, 1)
ops.load(11, w, 0, 0)
# Solving the model
ops.analysis('Static')
ops.system('BandSPD')
ops.numberer('RCM')
ops.constraints('Plain')
ops.integrator('LoadControl', 0.1)
ops.algorithm('Linear')
ops.analysis('Static')
ops.analyze(numElements)
# Plotting the deformed shape
opsplt.plot_defo()
```
在这个例子中,我们定义了一个长度为10m、宽度为1m、高度为1m的简支梁桥。我们使用11个节点和10个元素来建模,其中梁的截面积为1平方米,弹性模量为200 GPa,惯性矩为1/12平方米。我们在梁的右端施加了一个向下的荷载,大小为10 kN。我们使用静力分析来解决模型,并将结果绘制成变形形状。
阅读全文