[ 掲示板に戻る ]

記事No.83490に関するスレッドです

(No Subject) / グーチョコラン
楕円の曲率半径を求めたいです。
楕円のパラメーターは長軸半径a=213568、短軸半径b=43432として、中心からの距離がS=213525の点の曲率半径を求めようとしています。添付ファイルのような計算で求めて、パソコンで計算したのですが、10e10くらいになります。桁落ちとかでは考えられないくらい違います。
計算間違いが自分では見つけられなかったのでどうかよろしくお願いします。
また、プログラミングの間違いの可能性もありますがそれも見つけられなかったので、自分がやるとこんな値になったよ、というのもお待ちしています。

No.83490 - 2022/09/26(Mon) 20:50:20

Re: / グーチョコランタン
例えば、a=1,b=1.2,S=1.001のような値で考えると
曲率半径は1前後になりそうなものなのに、0.11などと出ます。

No.83494 - 2022/09/26(Mon) 22:29:39

Re: / らすかる
a=213568
b=43432
S=213525
cosμ=0.99999131128294258772…
μ=0.00416862798525896561…
x=Scosμ=213523.14474169031604413199…
y=Ssinμ=890.10371259035747382227…
検算 √(x^2+y^2)=213525=S
検算 x^2/a^2+y^2/b^2=1
y'=-b/{a^2*√(1/x^2-1/a^2)}=-9.92091298728757716152…
y''=-(b/a^2)(1/x^2-1/a^2)^(-3/2)*x^(-3)=-0.11062291949087114956…
R=(1+y'^2)^(3/2)/|y''|=8961.79700738226672578702…
グラフを描いてみると、この値で正しそうです。

No.83495 - 2022/09/27(Tue) 02:27:02

Re: / GandB
十進Basicの例

LET a = 213568
LET b = 43432
LET S = 213525
LET dmyD = s^2*(b^2-a^2)
LET dmyM = a^2*b^2-S^2*a^2
LET cs_u = SQR(dmyM/dmyD)
PRINT "cosμ = ";cs_u
LET x = S*cs_u
LET dmyD = a^2*SQR((1/x^2-1/a^2))
LET d_y = -b/dmyD
PRINT "y' = ";d_y
LET dmy = 1/x^2-1/a^2
LET dd_y = -(b/a^2)*dmy^(-3/2)*x^(-3)
PRINT "y'' = ";dd_y
LET dmyD = abs(dd_y)
LET dmyM = (1+d_y^2)^(3/2)
LET R = dmyM/dmyD
PRINT "R = ";R
END
-------------------------
結果
cosμ = .999991311282941
y' = -9.92091298725262
y'' = -.110622919489702
R = 8961.7970073832

No.83496 - 2022/09/27(Tue) 06:44:30

Re: / グーチョコランタン
ラスカルさん、GrandBさん
大変助かりました。
間違ってたのはプログラミングで、-3/2乗が整数型で1になってたところでした。
お二人の回答でプログラミング間違いの確信&間違い個所の特定ができたので感謝します。

No.83514 - 2022/09/29(Thu) 00:44:58