Frame Element Responses (Pyvista)ΒΆ
[1]:
import openseespy.opensees as ops
import opstool as opst
import opstool.vis.pyvista as opsvis
[2]:
opst.load_ops_examples("Frame3D2")
ops.timeSeries("Linear", 1)
ops.pattern("Plain", 1, 1)
ops.load(6, 10, 0.0, 0.0, 0.0, 0.0, 0.0)
ops.load(8, 10, 0.0, 0.0, 0.0, 0.0, 0.0)
for etag in [5, 6, 7, 8, 15, 16, 17, 18, 19, 20, 21]:
ops.eleLoad("-ele", etag, "-type", "-beamUniform", 0.0, -10)
[3]:
opsvis.set_plot_props(point_size=0, line_width=3, notebook=True)
fig = opsvis.plot_model(show_nodal_loads=True, show_ele_loads=True)
fig.show(jupyter_backend="jupyterlab")
# fig.show()
OPSTOOL :: Model data has been saved to _OPSTOOL_ODB/ModelData-None.nc!
[4]:
ops.constraints("Transformation")
ops.numberer("RCM")
ops.system("BandGeneral")
ops.test("NormDispIncr", 1.0e-8, 6, 2)
ops.algorithm("Linear")
ops.integrator("LoadControl", 0.1)
ops.analysis("Static")
[5]:
ODB = opst.post.CreateODB(odb_tag=1)
for i in range(10):
ops.analyze(1)
ODB.fetch_response_step()
ODB.save_response()
OPSTOOL :: All responses data with odb_tag = 1 saved in _OPSTOOL_ODB/RespStepData-1.nc!
[9]:
opsvis.set_plot_colors(frame="black", cmap="jet")
fig = opsvis.plot_frame_responses(
odb_tag=1,
slides=False,
resp_type="sectionForces",
resp_dof="My",
scale=3.0,
show_values=False,
line_width=2,
)
fig.show(jupyter_backend="jupyterlab")
# fig.show()
OPSTOOL :: Loading response data from _OPSTOOL_ODB/RespStepData-1.nc ...