Beams - catenaries#
This notebook shows how to use Beam elements model a catenary.
For more info on beams see “Beams - structural beams”.
This may sound strange, but a wire is just a beam without bending and torsion stiffness.
Also, to avoid the beam from coiling up, we can set the tension_only parameter to True.
from DAVE import *
from DAVE.jupyter import *
s = Scene();
DAVEcore version = 2.0 from c:\python\venvs\build\Lib\site-packages\DAVEcore.cp311-win_amd64.pyd
! Blender not found - Blender can be installed from the microsoft windows store. if you have blender already and want to be able to use blender then please either:
- configure windows to open .blend files with blender automatically
- add the folder containing blender-launcher.exe to the PATH variable.
left = s.new_frame("left", position = (0,0,10))
right = s.new_frame("right", position = (10,0,10))
cable = s.new_beam("cable", nodeA=left, nodeB = right,
EA = 10000,
EIy = 0, EIz = 0, GIp = 0,
L=20,
mass = 10,
tension_only = True,
n_segments=17)
s.solve_statics()
True
show(s, camera_pos=(5,-30,6), lookat = (5,0,5))

The vertical force on both ends of the cable should be half the weight
0.5 * s.g * cable.mass
49.033249999999995
right.applied_force[2]
-49.03325000946234
well, seems right
Lets see the influence of the number of segments of the cable on the horizontal force.
We could “manually” change that, but we can also use the “plot_effect” function from scene for that:
s.plot_effect(evaluate="s['right'].applied_force[0]",
change_property="n_segments",
change_node="cable",
start=1,
to=20.0,
steps=20)
# graph makeup
import matplotlib.pyplot as plt
plt.grid()
setting 1.0 results in 0.0
setting 2.0 results in -14.101516534848043
setting 3.0 results in -8.394896207817611
setting 4.0 results in -11.774223042411357
setting 5.0 results in -10.791286653627866
setting 6.0 results in -11.315221815768933
setting 7.0 results in -11.116919117196549
setting 8.0 results in -11.222281113108352
setting 9.0 results in -11.182727601309859
setting 10.0 results in -11.206635890372771
setting 11.0 results in -11.199586829680475
setting 12.0 results in -11.205891376149077
setting 13.0 results in -11.205273200157363
setting 14.0 results in -11.207402261140661
setting 15.0 results in -11.207878333762409
setting 16.0 results in -11.208858840205536
setting 17.0 results in -11.209390792168847
setting 18.0 results in -11.209970743384297
setting 19.0 results in -11.210397890180209
setting 20.0 results in -11.210793481188396

Depending on the level of accuracy needed, 10 segments seems a good choice in this case.