- 締切済み
2つの円の中心間の距離
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- info22_
- ベストアンサー率67% (2650/3922)
図のように補助線を引き、記号を割り振ります。 青線の長さがベルト長になり、 ベルト長=接線AB+接線CD+円弧AFC+円弧BED =y+y+大円Oの円周*(1-(θ/π))+小円Qの円周*θ/π) =2y+76.7(π-θ)+28.3θ =2y+76.7π-48.4θ =310 ...(A) ここで △OPQで tanθ=y/24.2 より θ=tan^-1(y/24.2) ...(B) また、円の中心間の距離OQ=xは3平方の定理より x=√(y^2+24.2^2) ...(C) (A),(B)より 2y+76.7π-48.4tan^-1(y/24.2)=310 この解yを解析的に求めることは困難なので、数値解析で解きます。 f(y)=2y+76.7π-310-48.4tan^-1(y/24.2) (y>0) と置いて高校数学で習うニュートン(ニュートン=ラプソン)法でf(y)=0の解を求めます。 初期値(近似値)を y0=60としてニュートン法を適用すれば y=63.7538 mm と得られます。これが添付図の接線ABまたはCDの長さになります。 (C)より求める円の中心間の距離xは x=68.1923 mm と求まります。 参考URL (ニュートン法)
- 178-tall
- ベストアンサー率43% (762/1732)
2 円の中心 O1, O2 から (同側) 共通接線と円との接点 P1, P2 へ引いた直線は接線に直交する。 P1, O1, O2 を頂点とする平行四辺形 P1, O1, O2, Q を作る。当然、辺 P1-Q は O1-O2 に平行。 2 円の半径を R1, R2 (> R1) 、O1, O2 間の距離を d とする。 (ここまで略図でも描いてみて…) ベルト長 L を分割してみると? P1-Q と P1-P2 との角度をφとすれば、φ= arcsin{(R2-R1)/d} として、 両円にかかっている部分 = R1*(π- 2φ) + R2*(π+ 2φ) それ以外の部分 = 2*√{d^2 - (R2-R1)^2} である。 その関係式で d が未知数だとすると? 2*√{d^2 - (R2-R1)^2} = ベルト長 - 両円にかかっている部分 = L - R1*(π- 2φ) - R2*(π+ 2φ) が成立するはず。 これから d を求めてみると、 d^2 = (1/4)*{L - π(R1+R2) + 2φ(R1-R2) }^2 + (R2-R1)^2 d = √[(1/4)*{L - π(R1+R2) + 2φ(R1-R2) }^2 + (R2-R1)^2] …(*) という恐ろしい算式になります。 何が「恐ろしい」のか? (*) の右辺にある φ= arcsin{(R2-R1)/d} に求めるべき d が含まれているため、スンナリ解けない形なのです。 さいわい、(*) に「不動点収束法」をかけてみてら、アッサリと収束してくれました。 スプレッドシートにて簡単に組めます。 ・ d の値を適当に指定し (*) の右辺値を勘定させる。その結果を d' とする。 ・ その d' を d とみなして、(*) の右辺値を再勘定させる。 これを繰り返すだけで、指定値 d と右辺結果の d' とが (有効桁数内にて) 一致します。 その結果が求めるべき d です。 L = 310, R1 = 14.15, R2 = 38.35 を与えた試行結果は? d = 68.2 でした。 ご参考まで。
- gohtraw
- ベストアンサー率54% (1630/2965)
二つの円を円PおよびQ(大きい方を円Qとします。)とし、その中心をそれぞれ点PおよびQ、半径をそれぞれR1とr2とします。円P、Qとベルトが接する点をそれぞれRおよびSとすると、四角形PQSRは台形になります(PRとQSが平行)。 ∠PQS=Θとすると、円Qにかかっているベルトの長さは 2πr2*2Θ/2π=2r2・Θ 円Pにかかっているベルトの長さは 2r1(π-Θ) であり、円にかかっていないベルトの長さ(つまりRSの二倍)は 310-2r2・Θ-2r1(π-Θ) です。よってRSの長さは 155-r2・Θ-r1(π-Θ)・・・(1) となります。 さらにQSに対してPから垂線を下ろし、QSとの交点をTとします。 すると TQ=r2-r1 ・・・(2) です。また、PQの長さは TQ/cosΘ=(r2-r1)/cosΘ・・・(3) です。△TQPは直角三角形なので、(1)~(3)の三者には三平方の定理が成り立ちます。 最後まで解いてはいませんがエクセルのソルバーとかを使うのかなと思います。