« 女性は胸から年をとる、、、という研究結果が。 | トップページ | 掛け算・割り算はなぜ足し算・引き算より先に計算するか?(演算子の優先順位) »

2013年10月25日 (金)

楕円の円弧の話 → カシオの高精度計算サイトkeisan.casio.jpに”楕円の円弧・弦長・矢高を長軸半径・短軸半径・中心角から求める”をUP!

楕円についてちょっと復習してみようと思い(なぜかはまた書きます)、円弧について考えだしたら、もう何もかも昔習ったことを忘れているせいでいろいろ罠に引っ掛かった。

忘れないようにメモしておく。まずは、、、楕円 x^2 / a^2 + y^2 / b^2 = 1(とりあえずa>b)のパラメータ表示をすると、

x = a*cos(t), y = b*sin(t)

となるのはいいのだが、ここに出てるtは、直観的な角度θじゃない。こういうこと。

Ellipse001

tは楕円を囲む円を描いて、実際の角度θに相当する楕円の点から垂線引いて円にぶつかった点の角度。なので、

t = atan((b/a)*tan(θ/2))

まあ、これは何となく覚えてた。問題は次。e=√(a^2-b^2)/aとする。円弧の長さは楕円積分で書けるが、
L = ∫√dx^2 + dy^2 としたら、、、積分の中身が a√(1 - [e*cos(t)]^2になるが!

第二種不完全楕円積分の定義では

Weisstein, Eric W. "Elliptic Integral of the Second Kind." From MathWorld--A Wolfram Web Resource.  http://mathworld.wolfram.com/EllipticIntegraloftheSecondKind.html

Ellipse003

なので、sinとcosが違う!なんでやねん。と悩んでたら角度の取り方が違うのだ!

y軸から測った角度でx = a*sin(t), y = b*cos(t)としたら、

Ellipse002

L = 2*a*E(t, e)とちゃんとなった。だいたい、楕円の円周が第二種完全楕円積分で

L=4*a*E(e) = 4*a*E(π/2, e)なので、どこから測ったかは問題になってないのでちゃんと書いてないケースが多いのではないか。

これにずっと引っかかっていた。あとb>aの時にもひっかかった。e=√(b^2-a^2)/b

として、Lを計算するのに、、、a>bと同じx,yのパラメータ定義にすると今度はまた√の中身がcosになる。。。いろいろやると結局 L = 2*b*(E(π/2, e)-E(π/2-t,e))となる。

検算するのにカシオの高精度計算サイトkeisan.casio.jpの自作式を使ってみる。

こちら。

楕円の円弧・弦長・矢高を長軸半径・短軸半径・中心角から求める

Ellipse004

説明は:
楕円の長軸半径、短軸半径、中心角を入力すると楕円の弧長L、弦長d、矢高hを計算します。

a>bのとき、L=2*a*E(t, e), d = 2*a*sin(t), h=b*(1-cos(t))を計算しています。
ただしe = √(a^2 - b^2) / a, E(t,e)は第二種不完全楕円積分, t=atan((b/a)tan(θ/2))

ということ。なぜこれを考えているかというと(続く)。

« 女性は胸から年をとる、、、という研究結果が。 | トップページ | 掛け算・割り算はなぜ足し算・引き算より先に計算するか?(演算子の優先順位) »

学問・資格」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

« 女性は胸から年をとる、、、という研究結果が。 | トップページ | 掛け算・割り算はなぜ足し算・引き算より先に計算するか?(演算子の優先順位) »

最近の記事

最近のコメント

2025年1月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
フォト
無料ブログはココログ