![]() 図1 3接円のグラフ |
Excel VBA 2007/2003/2002対応(できる大辞典) すぐに使える! Excel関数逆引き辞典 Excel VBA(ブイビーエー)辞典 ワープする宇宙 計算力学ハンドブック |
3接円を求めましょう。3接円の中心と半径を求めることは解析的に困難です。 でも、エクセルソルバーを使えば容易に求まります。 円1は中心座標(xc1,yc1)とその半径(R1)で表現できます。 円2は中心座標(xc2,yc2)とその半径(R2)で表現できます。 円3は中心座標(xc3,yc3)とその半径(R3)で表現できます。 |
3接円の中心4(xc4,yc4)を仮定します。 3円の中心から中心4までの距離を求めます。 L1 = √( (xc4-xc1)2 + (yc4-yc1)2 ) L2 = √( (xc4-xc2)2 + (yc4-yc2)2 ) L3 = √( (xc4-xc3)2 + (yc4-yc3)2 ) L1:中心1から中心4の距離 L2:中心2から中心4の距離 L3:中心3から中心4の距離 3接円の半径(R4)は L1 - R1 L2 - R2 L3 - R3 となり、全て値が異なります。 ソルバーの制約条件として、3半径が一致するように 設定し、中心座標(xc4,yc4)を変化させます。 最適化の目的セルは意味がないので、無関係なセルを設定します。 |
円1の半径 R= 2.5 , 中心(xc1,yc1) = ( -0.5, 2) とする。 円2の半径 R= 1.5 , 中心(xc2,yc2) = ( 1, 7) とする。 円3の半径 R= 2.5 , 中心(xc3,yc3) = ( 5, 3) とする。 3節円の中心を(2,4)と仮定し、3個の半径を計算します。半径(L1-R1)で円を作図します。 ![]() 図2 三接円の例題(ソルバー実行前) 3個の半径が一致しないため、円4は円1にしか接しません。 そこで、変化させるセルを(xc4,yc4)とし、L1-R1 = L2-R2 L2-R2 = L3-R3 の制約条件を設定します。 目的セルは適当に設定して下さい。 ![]() 図3 ソルバー:パラメータ設定画面 ソルバーを実行すると、 ![]() 図4 三接円の例題(ソルバー実行後) 3接円の半径値が一致(1.17762)し、3接円が求まりました。 |