■n角の穴をあけるドリル(その56)
B. Cox and S. Wagon, Drilling for Polygons:, American Math Monthly, 119(2012), 300-312
では包絡線が円弧となることが設計の原点になっている.
===================================
【1】包絡線の求め方
曲線:y=f(x,θ)において,パラメータθが動くとき,θとθ+Δθに対応する2本の隣り合った曲線を考えると,その交点はΔθ→0の極限で包絡線上の点となります.
xを固定するとき,この交点のy座標はパラメータθが変わっても変化しないことで特徴づけられますから,
∂y/∂θ=0 → θ=g(x)
を求め,元の方程式に代入すると包絡線の方程式
y=f(x,g(x))
が得られます.
自明な例として,x軸上を転がる半径rの円を考えます.中心が原点から距離ξ(θ)だけx方向に離れた円の方程式は
(x−ξ(θ))^2+(y−r)^2=r^2
y=r±{r^2−(x−ξ(θ))^2}^(1/2)
∂y/∂θ=0 → (x−ξ(θ))dξ/dθ=0
より,x=ξ(θ)を元の方程式に代入すると
y=0,y=2r
となって,x軸とそれに平行な直線が包絡線となることがわかります.
===================================
【2】ドリルの場合
n角の穴をあけるドリルの場合は,もちろんこんなに簡単ではありませんが,同様のアイディアで包絡線の方程式を求めることができます.中心の軌跡が(ξ(θ),η(θ))でパラメータ表示される半径rの円
(x−ξ(θ))^2+(y−η(θ))^2=r^2
y=η(θ)±{r^2−(x−ξ(θ))^2}^(1/2)
の一部がドリルの円弧であるとき,
∂y/∂θ=0 → (x−ξ(θ))dξ/dθ+(y−η(θ))dη/dθ=0
これより,包絡線の方程式は
x=ξ(θ)+rdη/dθ/{(dξ/dθ)^2+(dη/dθ)^2}^(1/2)
y=η(θ)−rdξ/dθ/{(dη/dθ)^2+(dξ/dθ)^2}^(1/2)
および
x=ξ(θ)−rdη/dθ/{(dξ/dθ)^2+(dη/dθ)^2}^(1/2)
y=η(θ)+rdξ/dθ/{(dη/dθ)^2+(dξ/dθ)^2}^(1/2)
とパラメータ表示されます.
これは中心の軌跡(ξ,η)と直交する方向(法線方向)にrだけ離れた2点の軌跡です.すなわち,中心の軌跡の平行曲線を描くというわけです.
===================================
【3】包絡線の求め方(その2)
陰関数f(x,y)=0上の点(x,y)で接線の方程式を求めるには,2変数関数の微分の知識が必要です.その場合,f(x,y)=0のyをxの関数(f(x,y(x))=0)とみなして,両辺をxで偏微分すれば2変数関数の合成微分の公式によって
∂f/∂xdx/dx+∂f/∂ydy/dx=0
すなわち,fx+fydy/dx=0より,
y’=dy/dx=−fx/fy
が得られます.fx+fyy’=0の式をxの関数とみて,さらに,この両辺をxで微分すれば
fxx+fxyy’+(fyx+fyyy’)y’+fyy”=0
より
y”=d^2y/dx^2
=−1/fy(fxx−2fxyfx/fy+fyyfx^2/fy^2)
が得られます.決して,y”=−fxx/fyyなどというでたらめを書かないように!
曲線族の各々の曲線すべてに接する曲線が包絡線です.曲線族が陰関数f(x,y,t)=0で与えられている場合,パラメータtが動くときの包絡線の方程式を求めるにはft=0を解いてt=g(x,y)を消去したり,あるいはx,yをtで表します.
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
パラメータ表示された曲線:x=x(β,θ),y=y(β,θ)が与えられている場合,パラメータβが微小変化するとき,包絡線に接しているある点における接線の傾きは
dy/dx=(∂y/∂β)/(∂x/∂β)
で,この傾きの曲線に沿ってx方向に∂x/∂β,y方向に∂y/∂β変化します.
パラメータθが動くときも同様で,
dy/dx=(∂y/∂θ)/(∂x/∂θ)
したがって,
(∂y/∂β)/(∂x/∂β)=(∂y/∂θ)/(∂x/∂θ)
(∂y/∂β)(∂x/∂θ)−(∂y/∂β)(∂x/∂θ)=0
が成り立てば接線に沿って動いていくことになります.この点の軌跡が求める包絡線にほかなりません.
ペリトロコイド曲線の運動族
x=Rcos(β+γ−θ)+acos((n−1)β−θ)+acos((n−2)θ)
y=Rsin(β+γ−θ)+asin((n−1)β−θ)+asin((n−2)θ)
に対して
(∂y/∂β)(∂x/∂θ)−(∂y/∂β)(∂x/∂θ)=0
を計算すると
θ=β−2/(n−1)arctan(Rsin((n−2)β−γ)/(Rcos((n−2)β−γ)+(n−1)a))
となって,包絡線は1パラメータ曲線:x=x(β),y=y(β)となります.
===================================
【4】ドリルの場合(その2)
ローター曲線が円弧の組み合わせであれば,曲率中心の軌道を求めることによって簡単に包絡線が得られるのですが,ローター曲線は円弧ではありません.そこで,今度はローター曲線の運動族
x=Rcos(β+γ−θ+φ)+acos((n−1)β−θ+φ)+acos((n−2)θ+φ)+acos((n−1)φ)
y=Rsin(β+γ−θ+φ)+asin((n−1)β−θ+φ)+asin((n−2)θ+φ)+asin((n−1)φ)
θ=β−2/(n−1)arctan(Rsin((n−2)β−γ)/(Rcos((n−2)β−γ)+(n−1)a))
に対して施すことにします.
(∂y/∂β)(∂x/∂φ)−(∂y/∂φ)(∂x/∂φ)=0
を計算すると
Asin((n−2)φ−(n−2)θ)+Bcos((n−2)φ−(n−2)θ)=C
の形に整理されます.
A,B,Cの具体的な形は割愛し考え方を示すにとどめますがますが,ここで
cosψ=A/(A^2+B^2)^(1/2),
sinψ=B/(A^2+B^2)^(1/2),
tanψ=B/A
とおくと,
sin((n−2)φ−(n−2)θ+ψ)=C/(A^2+B^2)^(1/2)
より
(n−2)φ=(n−2)θ−arctan(B/A)+arcsin(C/(A^2+B^2)^(1/2))
=(n−2)θ−arctan(B/A)+arctan(C/(A^2+B^2−C^2)^(1/2))
これで,φをβ,θ(β)の関数として表すことができ,包絡線は1パラメータ曲線:x=x(β),y=y(β)となるというわけです.この問題ではうまい変形が見つからず,力任せのかなり大変な計算になります.
===================================