投稿

懸垂線 (2回目)

2024/ 6 /11 (木 ) 懸垂線 ( 2 回目 )   ( c atenary) 懸垂線 ( カテナリー、紐を垂らしたときの曲線 ) ( 紐の底を原点、両端の高さを同じにする )   ■ 前提 ▼ 定義 g:重力加速度(m/s 2 ) ρ:紐の密度(kg/m) H:水平張力(N) f(x):懸垂線(カテナリー) f'(x):懸垂線の傾き ds:x~x+dx間の紐の長さ   ▼ 懸垂線f(x) A, B:積分定数 λ = ρg/H, H = T(x)cosθ(x) = const. y(x) = (1/λ)cosh(λx + A) + B y '(x) = sinh(λx + A) ds = cosh(λx + A)dx     ■ 導出 ▼   積分定数の決定 c osh(t) = {exp(t) + exp(- t )}/2 sinh(t) = {exp(t) - exp(- t )}/2   y (x) = (1/λ)cosh(λx + A) + B y '(x) = sinh(λx + A)   x  = 0 (y軸 ) を対称軸として紐の底は水平なので y ' (0) = 0 より y '( 0 ) = sinh(λ・ 0  + A)  = 0 A  = 0 f(x) = (1/λ)cosh(λx + A) + B = (1/λ)cosh(λx) + B y '(x) = sinh(λx + A) = sinh(λx)   原点を紐の底にするので f (0) = 0 より f( 0 ) = (1/λ)cosh(λ・0) + B  = 0 (1/λ) + B  = 0 B  = - 1/λ f(x) = (1/λ)cosh(λx) + B = (1/λ)cosh(λx) - 1/λ = (1/λ) { cosh(λx) - 1 }   ▼   紐の長さ L x = -x 1   ~ x 1   として ds = cosh(λx + A)dx = cosh(λx)dx   L = ∫ -x 1 x 1 ds = 2 ∫ 0 x 1 cos h( λx ) dx = ( 2 /λ)[sinh(λx)] 0 x 1  = = ( 2 /λ)sinh(λx 1 )     ■ 結果 ▼   定義 g : 重

N88-BASICで懸垂線 (1回目)

イメージ
2024/7/3(水) N88-BASICで懸垂線 (1回目)   (catenary) 懸垂線(カテナリー、紐を垂らしたときの曲線)   ■ 前提 ▼ 参照 https://ulprojectmail.blogspot.com/2024/07/catenary-1.html 懸垂線 (1回目) より   懸垂線はy = cosh(x)のグラフになる   ■ 解説 y = sinh(x) y = cosh(x) y = tanh(x) のグラフを描画しました     VL,NL,XL-BASICとdlg~.zip(cate00 1 .bas)は このブログ(以下のリンク)から ダウンロードできます https://ulprojectmail.blogspot.com Readme.txtを読んで遊んで下さい  

懸垂線 (1回目)

イメージ
2024/ 7 /1( 月 ) 懸垂線 (1回目)   ( c atenary) 懸垂線 ( カテナリー、紐を垂らしたときの曲線 )   ■ 導出 ▼   定義   T : 紐の張力 θ:水平方向からの張力方向への角度 ds : x~x +dx 間 (点 A,B 間 )の紐の長さ ρ:紐の線密度 g : 重力加速度 f (x): 紐の高さ   ▼   微分方程式の導出 y  = y (x)   …   紐の形のグラフ y '( x) = dy/dx = tan θ (x)   …   ①   点 A : θ( x), T( x) 点 B : θ( x+dx) ,   T( x+dx) 点 A B 間の紐の長さ ds ds  = √ (dx 2  + dy 2 )   = dx √ {1 + (dy/dx) 2 }   水平方向 T (x)cos θ (x) = T(x+dx)cos θ( x+dx) どの xでも同じ値なので T (x)cos θ (x) = const. H  = T (x)cos θ (x)   …   ② と置く(水平張力)   垂直方向 d y/dx = y '( x) T (x)sin θ (x) +   dsρ g = T(x+dx)sin θ( x+dx) ρ gdx √ {1 + (dy/dx) 2 } = T(x+dx)sin θ( x+dx) - T (x)sin θ (x) {T(x+dx)sin θ( x+dx)- T (x)sin θ (x)}/dx = ρ g √ {1 + (dy/dx) 2 }   (d/dx){ T (x)sin θ (x)} = ρ g √ {1 + (dy/dx) 2 }   …   ③   ①,②より T (x)sin θ (x) = T(x)cos θ (x)sin θ (x)/cos θ (x) = T(x)cos θ (x)tan θ (x) = T(x)cos θ (x)(dy/dx) =   H (dy/dx) を ③に代入 (d/dx){ H (dy/dx)} = ρ g √ {1 + (dy/dx) 2 }   (d/dx) 2 y = ( ρ g/ H ) √ {1 + (dy/dx) 2 }   λ  = ρ g/ H , f(x) = dy/dx と置く (

三角関数 (5回目)

2024/6/28(金) 三角関数 (5回目)   ■ 定義 ▼ 双曲線関数 y = sinh(t) = {exp(t)-exp(-t)}/2 y = cosh(t) = {exp(t)+exp(-t)}/2   ▼ 備考 tanh -1 (x)については(3回目)を参照   ■ 結果 ▼ 逆双曲線関数 t = sinh -1 (y) =  log(y + √{y 2  + 1}) t = cosh -1 (y) = ±log(y + √{y 2  + 1})   ▼ 双曲線関数(加法定理) sinh(a±b) = sinh(a)cosh(b)±sinh(b)cosh(a) cosh(a±b) = cosh(a)cosh(b)±sinh(a)sinh(b) sinh(2a) = 2sinh(a)cosh(a) cosh(2a) = cosh 2 (a) + sinh 2 (a)   ▼ 双曲線関数(その他) cosh(a)+1 = 2cosh 2 (a/2) sinh(a) = 2sinh(a/2)cosh(a/2) {cosh(a)+1}/sinh(a) = tanh(a/2)     ■ 導出 ▼ 逆双曲線関数 y = sinh(t)  , y = cosh(t) t = sinh -1 (y) , t = cosh -1 (y) をlogで表す (log = log e  とする)   y = exp(x) log(y) = x   y = sinh(t) = {exp(t)-exp(-t)}/2 2y = exp(t)-exp(-t) 2yexp(t) = exp(2t) - 1 exp(2t) - 2yexp(t) - 1 = 0 exp(t) = y±√{y 2  + 1} ≧ 0 = y + √{y 2  + 1} ≧ 0 t = log(y + √{y 2  + 1})   y = sinh(t) t = sinh -1 (y) = log(y + √{y 2  + 1})     y = cosh(t) = {exp(t)+exp(-t)}/2 2y = exp(t)+exp(-t) 2yexp(t) = exp(2t) + 1 exp(2t) - 2yexp(t) + 1 = 0 exp(t) = y±√{y 2  - 1} t = log(y±

N88-BASIC,Pythonで円周率 (3回目)

イメージ
2024/6/24(月) N88-BASIC,Pythonで円周率 (3回目)   ■ N88-BASIC https://ulprojectmail.blogspot.com/2022/07/n88-basicpi-3.html N88-BASICで円周率 (3回目)   NL-BASIC(N88-BASIC互換?)で走らせ 1040桁まで正しく表示されている事を確認しました それ以降の桁の確認はしていません     ■ Python 桁数(5の倍数)を入力し円周率を表示する N88-BASICをPythonに書き換えました   表示は桁数が分かり易いように 3.14…を 314…と表示しています   Pythonの整数型は無限桁なので もっと効率の良い書き方ができますが あえてほぼそのまま書き換えています   式やプログラムのミスなどにより 正しく計算出来ていない可能性はありますので 使用には十分注意して下さい     VL,NL,XL-BASICと d lg~.zip ( pi 00 3 . py )は 以下のリンクからダウンロードできます https://ulprojectmail.blogspot.com Readme.txtを読んで遊んで下さい  

N88-BASIC,Pythonで円周率 (2回目)

2024/6/16(日) N88-BASIC,Pythonで円周率 (2回目)   ■ N88-BASIC https://ulprojectmail.blogspot.com/2022/07/n88-basicpi-2.html N88-BASICで円周率 (2回目)   円に内接(外接)する正多角形を利用して 円周率の範囲を求めます     ■ Python nを入力し 円に内接(外接)する正n角形を利用して 円周率の範囲を表示する N88-BASICをPythonに書き換えました     VL,NL,XL-BASICと d lg~.zip ( pi 00 2 . py )は 以下のリンクからダウンロードできます https://ulprojectmail.blogspot.com Readme.txtを読んで遊んで下さい  

N88-BASIC,Pythonで円周率 (1回目)

イメージ
2024/6/12(水)   N88-BASIC,Pythonで円周率 (1回目)   ■ N88-BASIC https://ulprojectmail.blogspot.com/2022/04/n88-basicpi.html N88-BASICで円周率     ■ Python 乱数を使用して円周率を求める N88-BASICをPythonに書き換えました     VL,NL,XL-BASICと d lg~.zip ( pi 001. py )は 以下のリンクからダウンロードできます https://ulprojectmail.blogspot.com Readme.txtを読んで遊んで下さい