懸垂線 (4回目)

2024/7/27()
懸垂線 (4回目)
 
(catenary)
懸垂線(カテナリー、紐を垂らしたときの曲線)
(紐の左端を原点とする)
(両端が同じ高さの場合のHを求める)
 
■ 前提
 定義
g:重力加速度(m/s2)
ρ:紐の密度(kg/m)
H:水平張力(N)
y(x):懸垂線(カテナリー)
y'(x):懸垂線の傾き
L:紐の長さ(m)
x1:紐の右端のx座標
y1:紐の右端のy座標
x0:紐の底のx座標
 
 懸垂線f(x)
λ = ρg/H, H = T(x)cosθ(x) = const.
y(x) = (1/λ){cosh(λx-λx0) - cosh(λx1-λx0)} + y1 
 
 関係式
y'(x) = sinh(λx-λx0)
L = (1/λ){sinh(λx1-λx0) + sinh(λx0)}
y1 = (1/λ){cosh(λx1-λx0) - cosh(λx0)}
 
■ 導出
 両端が同じ高さの場合の式
λ = ρg/H, H = T(x)cosθ(x) = const.
 
x0 = x1/2, y1 = 0より
y(x) = (1/λ){cosh(λx-λx1/2) - cosh(λx1/2)}
y'(x) = sinh(λx-λx1/2)
L = (2/λ)sinh(λx1/2)
 
 Hについての式
L = (2/λ)sinh(λx1/2)
= (2H/ρg)sinh(ρgx1/(2H))
 
(2H/ρg)sinh(ρgx1/(2H)) - L = 0
sinh(ρgx1/(2H)) - Lρg/(2H) = 0
f(H) = sinh(ρgx1/(2H)) - Lρg/(2H)
と置くと
f(H) = 0の解を求める事になるが
解析的に解けそうにないので
近似式を考える
 
 sinh(t)のマクローリン展開
y(x) = a2x2 + a1x + a0 , f(0) = a0 
y(1)(x) = 2a2x + a1    , f(1)(0) = a1 
y(2)(x) = 2・1a2         , f(2)(0) = 2・1a2 
y(x) = f(0) + f(1)(0)x + f(2)(0)x2/(2・1)
より
y(x) = Σ[n=0~∞]f(n)(0)xn/n!
 
sinh(0) = 0
cosh(0) = 1
sinh(x) = Σ[n=1,3,5,…]xn/n!
= x + x3/3! + x5/5! + …
 
 Hの近似式
f(H) = sinh(ρgx1/(2H)) - Lρg/(2H)
 
|ρgx1/(2H)| << 1の時
sinh(ρgx1/(2H)) - Lρg/(2H)
≒ ρgx1/(2H) + {ρgx1/(2H)}3/3! - Lρg/(2H)
= ρg(x1 - L)/(2H) + (ρgx1)3/(6・8H3)
= (ρgx1)3/(6・8H3) - ρg(L - x1)/(2H) = 0
 
(ρg)2x13 - (6・8H3)(L - x1)/(2H) = 0
24(L - x1)H2 = (ρg)2x13 
H ≒ √[(ρg)2x13/{24(L - x1)}]
|ρgx1/(2H)| >> 0の時つまり
|H| << 1の時は誤差が大きい
つまり、張りが弱い時なので
|x1/L| << 1の時、誤差が大きくなる
 
H ≒ √[(ρg)2x13/{24(L - x1)}] if |x1/L| >> 0
H ≒ 0                        if |x1/L| << 1
 
 ニュートン法
f(H) = sinh(ρgx1/(2H)) - Lρg/(2H)
f'(H) = -{ρgx1/(2H2)}cosh(ρgx1/(2H)) + Lρg/(2H2)
= {ρg/(2H2)}{L - dcosh(ρgx1/(2H))}
 
α = ρ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| < ε)
 
 
■ 結果
 定義(左端が原点)
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| < ε)
 

このブログの人気の投稿

NEWS

N88-BASICでゲーム (1回目)