and next python code. Thanks in advance for help.
Code: Select all
# --- t13_forum.py --- May.31, 2021 ----
# portal with inclined peer
#
import openseespy.opensees as ops
import openseespy.postprocessing.ops_vis as opsv
import matplotlib.pyplot as plt
ops.wipe()
ops.model('basic', '-ndm', 2, '-ndf', 3)
l1, l2 = 8., 6.
A1, A2, A3 = 3.e-3, 2.e-3, 3.e-3
I1, I2, I3 = 5.e-5, 2.e-5, 5.e-5
E = 200.e9
Ep = {1: [E, A1, I1],
2: [E, A2, I2],
3: [E, A3, I3]}
# Coord. nodes
ops.node(1, 0., 0)
ops.node(2, 0., l1)
ops.node(3, l2, l1)
ops.node(4, 2*l2, 0.)
# Soil supports
ops.fix(1, 1, 1, 0) # hinge
ops.fix(4, 1, 1, 1) # fixed
ops.geomTransf('Linear', 1)
# Elements
ops.element('elasticBeamColumn', 1, 1, 2, A1, E, I1, 1)
ops.element('elasticBeamColumn', 2, 2, 3, A2, E, I2, 1)
ops.element('elasticBeamColumn', 3, 3, 4, A3, E, I3, 1)
# orig. Px = 2.e+3
# External vertical force
Py = -100.e3
# --- Null distributed loads ---
Wy = 0.
Wx = 0.
Ew = {2: ['-beamUniform', Wy, Wx]}
# -------------------------------------------------
ops.timeSeries('Constant', 1)
ops.pattern('Plain', 1, 1)
ops.load(3, 0., Py, 0.) # Py applied to node 3
for etag in Ew:
ops.eleLoad('-ele', etag, '-type', Ew[etag][0], Ew[etag][1],
Ew[etag][2])
ops.constraints('Transformation')
ops.numberer('RCM')
ops.system('BandGeneral')
ops.test('NormDispIncr', 1.0e-6, 6, 2)
ops.algorithm('Linear')
ops.integrator('LoadControl', 1)
ops.analysis('Static')
ops.analyze(1)
ops.printModel()
# plot model with tag lebels
szer, wys = 16., 10.
fig = plt.figure(figsize=(szer/2.54, wys/2.54))
fig.subplots_adjust(left=.08, bottom=.08, right=.985, top=.94)
ax1 = plt.subplot(111)
opsv.plot_model()
# plot deformed model
plt.figure()
# plot_defo with optional arguments
sfac = opsv.plot_defo(80) # selected deformation factor
opsv.plot_defo(sfac, fmt_interp='b.-')
opsv.plot_defo(sfac, 5, interpFlag=0, fmt_nodes='bo-')
opsv.plot_defo(sfac, 3, endDispFlag=0, fmt_interp='r.--')
opsv.plot_defo(sfac, 2, fmt_interp='g.-')
plt.show()
exit()
# EOF: t13_forum.py