N88-BASICで懸垂線 (4回目)
2024/7/30(火)
N88-BASICで懸垂線 (4回目)
(catenary)
懸垂線(カテナリー、紐を垂らしたときの曲線)
両端が同じ高さで紐の左端が原点
■ 前提
▼ 参照
https://ulprojectmail.blogspot.com/2024/07/catenary-4.html
懸垂線 (4回目)
より
▼ 定義(左端が原点)
g:重力加速度(m/s2)
ρ:紐の密度(kg/m)
H:水平張力(N)
y(x):懸垂線(カテナリー)
y'(x):懸垂線の傾き
L:紐の長さ(m)
x1:紐の右端のx座標
▼ 懸垂線f(x)など
λ = ρg/H, H = T(x)cosθ(x) = const.
y(x) = (1/λ){cosh(λx-λx1/2) - cosh(λx1/2)}
y'(x) = sinh(λx-λx1/2)
L = (2/λ)sinh(λx1/2)
▼ Hの近似式
H ≒ √[(ρg)2x13/{24(L - x1)}] if |x1/L| >> 0
H ≒ 0 if |x1/L| << 1
▼ ニュートン法
α = ρgd/(2H) と置く
f(H) = sinh(α) - αL/x1
f'(H) = {α/(Hx1)}{L - x1cosh(α)}
f(0) = ∞ , f'(0) = ∞
f(∞) < 0 , f'(∞) = 0
H0 = 適当に決めて
Hn > 0
ΔH = f(Hn)/f'(Hn)
Hn+1 = Hn - ΔH
H = Hn+1 (if |ΔH| < ε)
■ 解説
近似式を初期値としてニュートン法によりHを求め
紐を垂らした時の曲線f(x)を描画しました
VL,NL,XL-BASICとdlg~.zip(cate004.bas)は
このブログ(以下のリンク)から
N88-BASICで懸垂線 (4回目)
(catenary)
懸垂線(カテナリー、紐を垂らしたときの曲線)
両端が同じ高さで紐の左端が原点
■ 前提
▼ 参照
https://ulprojectmail.blogspot.com/2024/07/catenary-4.html
懸垂線 (4回目)
より
▼ 定義(左端が原点)
g:重力加速度(m/s2)
ρ:紐の密度(kg/m)
H:水平張力(N)
y(x):懸垂線(カテナリー)
y'(x):懸垂線の傾き
L:紐の長さ(m)
x1:紐の右端のx座標
▼ 懸垂線f(x)など
λ = ρg/H, H = T(x)cosθ(x) = const.
y(x) = (1/λ){cosh(λx-λx1/2) - cosh(λx1/2)}
y'(x) = sinh(λx-λx1/2)
L = (2/λ)sinh(λx1/2)
▼ Hの近似式
H ≒ √[(ρg)2x13/{24(L - x1)}] if |x1/L| >> 0
H ≒ 0 if |x1/L| << 1
▼ ニュートン法
α = ρgd/(2H) と置く
f(H) = sinh(α) - αL/x1
f'(H) = {α/(Hx1)}{L - x1cosh(α)}
f(0) = ∞ , f'(0) = ∞
f(∞) < 0 , f'(∞) = 0
H0 = 適当に決めて
Hn > 0
ΔH = f(Hn)/f'(Hn)
Hn+1 = Hn - ΔH
H = Hn+1 (if |ΔH| < ε)
■ 解説
近似式を初期値としてニュートン法によりHを求め
紐を垂らした時の曲線f(x)を描画しました
VL,NL,XL-BASICとdlg~.zip(cate004.bas)は
このブログ(以下のリンク)から
ダウンロードできます
https://ulprojectmail.blogspot.com
Readme.txtを読んで遊んで下さい