Snellの法則

同義語:屈折の法則スネルの法則Snell's law

概要

Snellの法則(Snell's law)とは、直線の境界の両側を速さ $v_1$、$v_2$ で進むとき、一方の側の点 $A$ から他方の側の点 $B$ へ境界を 1 回通る折れ線のうち所要時間が最小のものでは、入射角 $\theta_1$ と屈折角 $\theta_2$(法線からの角)が $\frac{\sin\theta_1}{v_1}=\frac{\sin\theta_2}{v_2}$ を満たすという主張である。光は所要時間が最短の道を通るという物理の仮定(Fermat の原理)で光の屈折を表す。境界の点の位置 $x$ で書いた所要時間 $T(x)$ は $T''>0$ を満たし、$T'$ は $A$ の真下と $B$ の真上の境界の点の間で符号を変えるので、最小点はただ 1 つでその間にある。そこで $T'=0$ がこの関係式になり、逆にその間でこの式を満たす点は最小点である。

$$\newcommand{C}[0]{\mathbb{C}} \newcommand{div}[0]{\mathbin{÷}} \newcommand{N}[0]{\mathbb{N}} \newcommand{Q}[0]{\mathbb{Q}} \newcommand{R}[0]{\mathbb{R}} \newcommand{Z}[0]{\mathbb{Z}} $$

前提知識: 関数の増減と極値, 関数の連続性と中間値の定理(高校数学), 連鎖律(高校数学), 対称点と折れ線の最短

高校での出発点:速さの違う 2 つの土地を横切る

平らな土地が 1 本の直線 $\ell$ を境に 2 つに分かれている。$\ell$ の上側は舗装した道で速さ $4$ で歩け、下側は芝生で速さ $3$ でしか歩けないとする(長さと時間の単位はそろえてあるとする)。上側の点 $A$ から下側の点 $B$ へ最も早く着くには、境界 $\ell$ のどこを横切ればよいだろうか。
$\ell$ を $x$ 軸にとり、$A(0,3)$、$B(7,-4)$ とする。それぞれの側では速さが一定なので、境界の点 $X(x,0)$ を決めたら、$A$ から $X$ へも $X$ から $B$ へもまっすぐ歩くのが最も早い(同じ速さなら、短い道ほど早い)。そこで、$X$ の位置 $x$ だけを動かして所要時間を比べる。

境界を横切る点を変えて所要時間を比べる

距離は $AX=\sqrt{3^2+x^2}$、$XB=\sqrt{4^2+(7-x)^2}$ で、時間は「距離 $\mathbin{÷}$ 速さ」なので、所要時間は
$$ T(x)=\frac{\sqrt{9+x^2}}4+\frac{\sqrt{16+(7-x)^2}}3 $$
である。
(1) $x=4$ のとき、$AX=\sqrt{9+16}=5$、$XB=\sqrt{16+9}=5$ なので
$$ T(4)=\frac54+\frac53=\frac{15+20}{12}=\frac{35}{12}\approx2.917 $$
である。
(2) $x=3$ は、線分 $AB$ が $\ell$ と交わる点である(直線 $AB$ は $y=3-x$ で、$y=0$ のとき $x=3$)。このとき $AX=\sqrt{18}=3\sqrt2$、$XB=\sqrt{32}=4\sqrt2$ なので
$$ T(3)=\frac{3\sqrt2}4+\frac{4\sqrt2}3=\frac{9\sqrt2+16\sqrt2}{12}=\frac{25\sqrt2}{12}\approx2.946 $$
である。まっすぐ歩くより、$x=4$ で横切る方が早い。
(3) $x=0,1,\dots,7$ で同じ計算をすると、次の表になる(小数第 4 位で四捨五入)。

$x$$0$$1$$2$$3$$4$$5$$6$$7$
$T(x)$$3.4374$$3.1943$$3.0358$$2.9463$$2.9167$$2.9484$$3.0514$$3.2373$

表の中では $x=4$ が最も早い。$x=4$ のとき、$A$ から $X$ へ向かう線分は $x$ 方向に $4$、$y$ 方向に $3$ 進み、$X$ から $B$ へ向かう線分は $x$ 方向に $3$、$y$ 方向に $4$ 進む。まっすぐ進む $x=3$ の道($AX=3\sqrt2\approx4.24$、$XB=4\sqrt2\approx5.66$)と比べると、速い側を長く($5>3\sqrt2$)、遅い側を短く($5<4\sqrt2$)歩いている。

A から B へ、境界の点 x=0,1,…,7 を通る 8 本の道と、それぞれの所要時間。赤の x=4 の道が最も早い A から B へ、境界の点 x=0,1,…,7 を通る 8 本の道と、それぞれの所要時間。赤の x=4 の道が最も早い
ex-snl-start の (3) の表は $x$ が整数のところしか調べていないので、$x=4$ が本当に最も早いかどうかは、まだ分からない。この記事で答える問いは次の 3 つである。

  1. 最も早く着く境界の点は、いつもただ 1 つあるか。→ thm-snl-main
  2. 最も早い点では、道と境界のなす角について何が成り立つか。→ thm-snl-main、cor-snl-bend
  3. 最も早い点を実際に求めるにはどうするか。鏡で反射する場合とはどう違うか。→ ex-snl-bisect、rem-snl-reflect
    高校の計算この記事の言葉物理の言葉
    所要時間の式 $T(x)$境界を 1 回通る道の所要時間光が進むのにかかる時間
    $T'(x)=0$$\dfrac{\sin\theta_1}{v_1}=\dfrac{\sin\theta_2}{v_2}$屈折の法則(Snell の法則)
    $T''(x)>0$最小点がただ 1 つ光の道が 1 本に決まる
    速さの比 $\dfrac{v_1}{v_2}$曲がり方を決める数屈折率の比

言葉の準備:境界を 1 回通る道と所要時間

以下では、ex-snl-start の数を文字に置きかえる。

境界を 1 回通る道と所要時間

正の数 $a,b,d,v_1,v_2$ を決め、座標平面の 2 点 $A(0,a)$、$B(d,-b)$ をとる。$x$ 軸を境界 $\ell$ とし、$\ell$ の上側($y>0$)は速さ $v_1$、下側($y<0$)は速さ $v_2$ で進めるとする。
実数 $x$ に対し、$\ell$ の点 $X(x,0)$ を通る折れ線 $A\to X\to B$ を、境界を 1 回通る道 という。線分 $AX$ を速さ $v_1$、線分 $XB$ を速さ $v_2$ で進むときの所要時間を
$$ T(x)=\frac{\sqrt{a^2+x^2}}{v_1}+\frac{\sqrt{b^2+(d-x)^2}}{v_2} $$
と書く。
$X$ を通り $\ell$ に垂直な直線を $X$ での 法線 という。線分 $XA$ と法線のなす角 $\theta_1$ を 入射角、線分 $XB$ と法線のなす角 $\theta_2$ を 屈折角 という($0^\circ\le\theta_1<90^\circ$、$0^\circ\le\theta_2<90^\circ$)。

入射角と屈折角の正弦は、直角三角形の辺の比で書ける。$A$ から法線に下ろした垂線の足は $(x,a)$ で、$A$ との距離は $\lvert x\rvert$ である。したがって
$$ \sin\theta_1=\frac{\lvert x\rvert}{\sqrt{a^2+x^2}},\qquad \sin\theta_2=\frac{\lvert d-x\rvert}{\sqrt{b^2+(d-x)^2}} $$
である。$0< x< d$ のときは絶対値をはずして $\sin\theta_1=\dfrac{x}{\sqrt{a^2+x^2}}$、$\sin\theta_2=\dfrac{d-x}{\sqrt{b^2+(d-x)^2}}$ となる。
境界 ℓ(x 軸)の上側を速さ 4、下側を速さ 3 で進む。点線の法線と線分 XA のなす角が入射角、XB のなす角が屈折角で、灰色の点線は線分 AB 境界 ℓ(x 軸)の上側を速さ 4、下側を速さ 3 で進む。点線の法線と線分 XA のなす角が入射角、XB のなす角が屈折角で、灰色の点線は線分 AB

所要時間と角を計算する
  1. ex-snl-start は $a=3$、$b=4$、$d=7$、$v_1=4$、$v_2=3$ の場合である。$x=4$ では $\sin\theta_1=\dfrac45$、$\sin\theta_2=\dfrac35$ で、$\theta_1\approx53.13^\circ$、$\theta_2\approx36.87^\circ$ である(図 2)。どちらの側でも「正弦 $\mathbin{÷}$ 速さ」を計算すると
    $$ \frac{\sin\theta_1}{v_1}=\frac{4/5}4=\frac15,\qquad \frac{\sin\theta_2}{v_2}=\frac{3/5}3=\frac15 $$
    で、等しい。
  2. $a=b=1$、$d=2$、$v_1=v_2=1$ のとき、$T(x)=\sqrt{1+x^2}+\sqrt{1+(2-x)^2}$ は折れ線の長さそのものである。$x=1$ では $T(1)=2\sqrt2\approx2.828$、$\theta_1=\theta_2=45^\circ$ で、$x=0$ では $T(0)=1+\sqrt5\approx3.236$、$\theta_1=0^\circ$、$\sin\theta_2=\dfrac2{\sqrt5}$ である。
  1. の「正弦 $\mathbin{÷}$ 速さが両側で等しい」ことが、この記事の主定理の中身である。
物理の仮定:Fermat の原理

光は、ある点から別の点へ、所要時間が最も短い道を通って進むとする(Fermat の原理)。また、空気の中・水の中のように 1 つの物質(媒質)の中では、光の速さは一定であるとする。これらは物理の法則であり、この記事では仮定として受け入れる。
この仮定のもとでは、光が境界 $\ell$ で曲がる向きは、def-snl-time の $T(x)$ を最小にする $x$ で決まる。この記事が数学として示すのは、「$T(x)$ を最小にする点がただ 1 つあり、そこで入射角と屈折角が $\dfrac{\sin\theta_1}{v_1}=\dfrac{\sin\theta_2}{v_2}$ を満たす」こと(thm-snl-main)だけである。この関係式を Snell の法則(屈折の法則)という。反射の場合に同じ原理を使う話は、対称点と折れ線の最短 の注意「Fermat の原理」にある。

def-snl-time では、道を折れ線に限った。折れ線でない道も含めて比べても、最も早い道は折れ線の中にある。

折れ線でない道も比べる議論を開く

この議論では、曲線の長さについて次の 2 つを認める。(a) 曲線の長さは、両端を結ぶ線分の長さ以上である。(b) 1 つの側の中を進む部分の所要時間は「長さ $\mathbin{÷}$ その側の速さ」であり、どちらの側を進むか分からない部分の所要時間は「長さ $\mathbin{÷}$ 2 つの速さの大きい方」以上である。

$A$ から $B$ への道(つながった曲線)を 1 つとる。$A$ は $\ell$ の上側、$B$ は下側にあるので、道は $\ell$ と交わる。道を $A$ からたどって初めて $\ell$ に出会う点を $X(p,0)$、最後に $\ell$ を離れる点を $Y(q,0)$ とする。$A$ から $X$ までは上側にあるので、その所要時間は (a)(b) から $\dfrac{AX}{v_1}$ 以上である。同じく $Y$ から $B$ までの所要時間は $\dfrac{YB}{v_2}$ 以上、$X$ から $Y$ までの所要時間は $\dfrac{XY}{v}$ 以上である($v$ は $v_1,v_2$ の大きい方)。

$v=v_1$ のとき、三角形の 2 辺の和は他の 1 辺以上なので $AY\le AX+XY$ で、道の所要時間は $\dfrac{AX}{v_1}+\dfrac{XY}{v_1}+\dfrac{YB}{v_2}\ge\dfrac{AY}{v_1}+\dfrac{YB}{v_2}=T(q)$ 以上である。$v=v_2$ のときは $XB\le XY+YB$ から、所要時間は $\dfrac{AX}{v_1}+\dfrac{XB}{v_2}=T(p)$ 以上である。どちらの場合も、道の所要時間は境界を 1 回通る道の所要時間のどれか以上である。

主定理:所要時間を最小にする点

まず $T(x)$ を 2 回微分する。根号の微分には 連鎖律(高校数学) を使う。

所要時間の導関数

def-snl-time の $T(x)$ は、すべての実数 $x$ で 2 回微分でき、
$$ T'(x)=\frac{x}{v_1\sqrt{a^2+x^2}}-\frac{d-x}{v_2\sqrt{b^2+(d-x)^2}} $$
$$ T''(x)=\frac{a^2}{v_1\left(a^2+x^2\right)^{3/2}}+\frac{b^2}{v_2\left(b^2+(d-x)^2\right)^{3/2}} $$
である。特に、すべての実数 $x$ で $T''(x)>0$ である。また $0< x< d$ のとき、$X(x,0)$ での入射角 $\theta_1$ と屈折角 $\theta_2$ を使うと
$$ T'(x)=\frac{\sin\theta_1}{v_1}-\frac{\sin\theta_2}{v_2} $$
である。

連鎖律と商の微分

段 1(1 回目の微分)。$a>0$ なので $a^2+x^2>0$ で、根号の中は正である。連鎖律により
$$ \left(\sqrt{a^2+x^2}\right)'=\frac{1}{2\sqrt{a^2+x^2}}\cdot(a^2+x^2)'=\frac{2x}{2\sqrt{a^2+x^2}}=\frac{x}{\sqrt{a^2+x^2}} $$
である。同じく $b>0$ なので $b^2+(d-x)^2>0$ で、$\left((d-x)^2\right)'=2(d-x)\cdot(-1)$ だから
$$ \left(\sqrt{b^2+(d-x)^2}\right)'=\frac{-2(d-x)}{2\sqrt{b^2+(d-x)^2}}=-\frac{d-x}{\sqrt{b^2+(d-x)^2}} $$
である。それぞれを $v_1$、$v_2$ で割って足すと $T'(x)$ の式になる。
段 2(2 回目の微分)。$c>0$ のとき、$h(u)=\dfrac{u}{\sqrt{c^2+u^2}}$ の導関数は、商の微分法により $h'(u)=\dfrac{c^2}{\left(c^2+u^2\right)^{3/2}}$ である。
段 1 と同じ計算で $\left(\sqrt{c^2+u^2}\right)'=\dfrac{u}{\sqrt{c^2+u^2}}$ なので
$$ h'(u)=\frac{\sqrt{c^2+u^2}-u\cdot\dfrac{u}{\sqrt{c^2+u^2}}}{c^2+u^2}=\frac{(c^2+u^2)-u^2}{\left(c^2+u^2\right)\sqrt{c^2+u^2}}=\frac{c^2}{\left(c^2+u^2\right)^{3/2}} $$
である(2 つ目の等号では、分子と分母に $\sqrt{c^2+u^2}$ を掛けた)。
$T'(x)=\dfrac1{v_1}h_a(x)-\dfrac1{v_2}h_b(d-x)$ と書ける($h_a$、$h_b$ は $c=a$、$c=b$ としたもの)。連鎖律で $\bigl(h_b(d-x)\bigr)'=h_b'(d-x)\cdot(-1)$ なので
$$ T''(x)=\frac{h_a'(x)}{v_1}+\frac{h_b'(d-x)}{v_2}=\frac{a^2}{v_1\left(a^2+x^2\right)^{3/2}}+\frac{b^2}{v_2\left(b^2+(d-x)^2\right)^{3/2}} $$
である。$a,b,v_1,v_2$ は正なので、2 つの項はどちらも正で、$T''(x)>0$ である。
段 3(角で書く)。$0< x< d$ なら $x>0$、$d-x>0$ なので、def-snl-time の後に書いた式から $\dfrac{x}{\sqrt{a^2+x^2}}=\sin\theta_1$、$\dfrac{d-x}{\sqrt{b^2+(d-x)^2}}=\sin\theta_2$ である。これを $T'(x)$ の式に代入する。$\square$

$T'(x)$ の式の第 1 項は「$A$ 側の正弦 $\mathbin{÷}$ 速さ」、第 2 項は「$B$ 側の正弦 $\mathbin{÷}$ 速さ」である。$X$ を右へ動かすと、$A$ 側の道は長くなり、$B$ 側の道は短くなる。その増え方と減り方の釣り合いを表すのが $T'(x)$ である。

Snell の法則(所要時間の最小点)

def-snl-time の設定で、次が成り立つ。
(1) $T(x)$ がすべての実数 $x$ の中で最小になる点 $x_0$ が、ただ 1 つある。さらに $0< x_0< d$ である。
(2) $X_0(x_0,0)$ での入射角 $\theta_1$ と屈折角 $\theta_2$ は
$$ \frac{\sin\theta_1}{v_1}=\frac{\sin\theta_2}{v_2} $$
を満たす。
(3) 逆に、$0< x< d$ を満たす $x$ で、$X(x,0)$ での入射角と屈折角が (2) の式を満たすなら、$x=x_0$ である。

導関数が増加し、区間の両端で符号が変わる

方針:$T''>0$ から $T'$ は増加する。$T'$ は $x=0$ で負、$x=d$ で正なので、中間値の定理で $T'$ が $0$ になる点がただ 1 つ見つかる。その点の左で $T$ は減少し、右で増加する。
段 1($T'$ は増加する)。lem-snl-deriv により、$T'$ はすべての実数で微分でき、その導関数 $T''$ はいつも正である。関数の増減と極値 の定理「導関数の符号と増減」を関数 $T'$ に使うと、$T'$ は実数全体で(狭い意味で)増加する。つまり $s< t$ なら $T'(s)< T'(t)$ である。
段 2(区間の両端の符号)。lem-snl-deriv の式に $x=0$、$x=d$ を代入すると
$$ T'(0)=0-\frac{d}{v_2\sqrt{b^2+d^2}}<0,\qquad T'(d)=\frac{d}{v_1\sqrt{a^2+d^2}}-0>0 $$
である($d,v_1,v_2$ が正だから)。
段 3($T'(x_0)=0$ となる点)。$T'$ は微分できるので連続である。閉区間 $[0,d]$ で連続な $T'$ が、端で負の値と正の値をとるので、関数の連続性と中間値の定理(高校数学) の定理「中間値の定理」により、$T'(x_0)=0$ を満たす $x_0$ が $0< x_0< d$ の範囲にある。段 1 により $T'$ は増加するので、$T'(x)=0$ となる実数 $x$ はこの $x_0$ だけである。
段 4(最小になる点)。段 1 と段 3 から、$x< x_0$ では $T'(x)< T'(x_0)=0$、$x>x_0$ では $T'(x)>0$ である。関数の増減と極値 の定理「導関数の符号と増減」を $T$ に使うと、$T$ は区間 $x\le x_0$ で減少し、区間 $x\ge x_0$ で増加する。よって $x\ne x_0$ ならいつも $T(x)>T(x_0)$ であり、$T$ が最小になる点は $x_0$ ただ 1 つである。これで (1) が示された。
段 5(角の関係)。$0< x_0< d$ なので、lem-snl-deriv の最後の式が使えて、$0=T'(x_0)=\dfrac{\sin\theta_1}{v_1}-\dfrac{\sin\theta_2}{v_2}$ である。これが (2) である。逆に、$0< x< d$ で (2) の式が成り立てば、同じ式から $T'(x)=0$ である。段 3 により $T'(x)=0$ となるのは $x=x_0$ だけなので、$x=x_0$ である。これが (3) である。$\square$

最初の例の答え

ex-snl-start の $a=3$、$b=4$、$d=7$、$v_1=4$、$v_2=3$ で $x=4$ とすると、$0<4<7$ で、ex-snl-def の (1) により $\dfrac{\sin\theta_1}{v_1}=\dfrac{\sin\theta_2}{v_2}=\dfrac15$ である。thm-snl-main の (3) により、$x=4$ が最小点 $x_0$ で、最短の所要時間は $T(4)=\dfrac{35}{12}$ である。lem-snl-deriv の式でも
$$ T'(4)=\frac{4}{4\cdot5}-\frac{3}{3\cdot5}=\frac15-\frac15=0 $$
となる。$x=0$ と $x=7$ の値は $T'(0)=-\dfrac{7}{3\sqrt{65}}\approx-0.289$、$T'(7)=\dfrac{7}{4\sqrt{58}}\approx0.230$ で、符号が変わっている(図 3)。

上は所要時間 T(x) のグラフで、x=4 で最小値 35/12 をとる。灰色の点はまっすぐ進む x=3。下は T'(x) のグラフで、増加しながら x=4 で 0 を通る 上は所要時間 T(x) のグラフで、x=4 で最小値 35/12 をとる。灰色の点はまっすぐ進む x=3。下は T'(x) のグラフで、増加しながら x=4 で 0 を通る
ex-snl-start は、最小点で角の正弦がちょうど $\dfrac45$、$\dfrac35$ になるように数を選んだ例である。一般には、最小点を式で書くことは難しい。

最小点を二分法で求める

$a=1$、$b=2$、$d=3$、$v_1=1$、$v_2=\dfrac34$ とする。lem-snl-deriv により
$$ T'(x)=\frac{x}{\sqrt{1+x^2}}-\frac43\cdot\frac{3-x}{\sqrt{4+(3-x)^2}} $$
で、$T'(0)=-\dfrac4{\sqrt{13}}\approx-1.109$、$T'(3)=\dfrac3{\sqrt{10}}\approx0.949$ である。区間の中点で $T'$ の符号を調べ、符号が変わる側の半分を残す(二分法。関数の連続性と中間値の定理(高校数学) で方程式 $x^3+x-1=0$ の解を求めたのと同じ手順)。

回区間中点 $m$$T'(m)$ の符号
1$[0,\ 3]$$1.5$正($0.0321$)
2$[0,\ 1.5]$$0.75$負($-0.3965$)
3$[0.75,\ 1.5]$$1.125$負($-0.1645$)
4$[1.125,\ 1.5]$$1.3125$負($-0.0644$)
5$[1.3125,\ 1.5]$$1.40625$負($-0.0160$)
6$[1.40625,\ 1.5]$$1.453125$正($0.0081$)

6 回で $1.40625< x_0<1.453125$ まで絞れる。続けると $x_0\approx1.4374$ で、そこでは
$$ \frac{\sin\theta_1}{v_1}=\frac{\sin\theta_2}{v_2}\approx0.8209,\qquad T(x_0)\approx5.1351 $$
である。

2 乗して方程式にすると 4 次方程式になる

ex-snl-bisect の $T'(x)=0$ を $x\sqrt{4+(3-x)^2}=\dfrac43(3-x)\sqrt{1+x^2}$ と書き、両辺を 2 乗して $9$ 倍すると
$$ 9x^2\left(4+(3-x)^2\right)=16(3-x)^2\left(1+x^2\right) $$
で、展開して整理すると
$$ 7x^4-42x^3+43x^2-96x+144=0 $$
になる。この 4 次方程式の実数解は $x\approx1.4374$ と $x\approx5.1769$ の 2 つである。後者は $3-x<0$ なので 2 乗する前の式を満たさない(左辺が正、右辺が負)。2 乗したときに紛れ込んだ解である。このように、最小点は一般に 4 次方程式の解になり、数値で求めるのが実際的である。
$(3-x)^2=x^2-6x+9$ なので、左辺は $9x^2(x^2-6x+13)=9x^4-54x^3+117x^2$、右辺は $16(x^2-6x+9)(x^2+1)=16(x^4-6x^3+10x^2-6x+9)=16x^4-96x^3+160x^2-96x+144$ である。右辺から左辺を引くと $7x^4-42x^3+43x^2-96x+144$ になる。

証明の段 1 で使った「$T''>0$」は、$T$ のグラフが下に凸であることを表す(曲線の凹凸と接線)。下に凸な関数では、導関数が $0$ になる点があれば、そこが最小点になる。図 3 の上のグラフは、この形をしている。

主定理から分かること:光の曲がり方

thm-snl-main の式を変形すると、道がどちらへ曲がるかが読める。

屈折の向き

thm-snl-main の最小点 $X_0$ での入射角を $\theta_1$、屈折角を $\theta_2$ とする。
(1) $v_1=v_2$ なら $\theta_1=\theta_2$ で、$X_0$ は線分 $AB$ と $\ell$ の交点である。つまり道は曲がらない。
(2) $v_1>v_2$ なら $\theta_1>\theta_2$、$v_1< v_2$ なら $\theta_1<\theta_2$ である。つまり、遅い側の道の方が法線に近い。
(3) $\sin\theta_1<\dfrac{v_1}{v_2}$、$\sin\theta_2<\dfrac{v_2}{v_1}$ である。

正弦の比を速さの比で書く

thm-snl-main の (2) の両辺に $v_1$ を掛けると
$$ \sin\theta_1=\frac{v_1}{v_2}\sin\theta_2 $$
である。$0< x_0< d$ なので $\sin\theta_1>0$、$\sin\theta_2>0$ である。また $a,b>0$ なので、斜辺は他の辺より長く、$\sin\theta_1<1$、$\sin\theta_2<1$ である。$0^\circ\le\theta<90^\circ$ で $\sin\theta$ は増加するので、正弦の大小がそのまま角の大小になる。この式から (1)〜(3) を読む。
(1) $v_1=v_2$ なら $\sin\theta_1=\sin\theta_2$ なので $\theta_1=\theta_2$ で、$\tan\theta_1=\tan\theta_2$ である。直角三角形の辺の比で書くと $\dfrac{x_0}a=\dfrac{d-x_0}b$ なので、$bx_0=a(d-x_0)$、$x_0=\dfrac{ad}{a+b}$ である。一方、直線 $AB$ は $y=a-\dfrac{a+b}d\,x$ で、$y=0$ となるのは $x=\dfrac{ad}{a+b}$ のときである。よって $X_0$ は線分 $AB$ と $\ell$ の交点である。
(2) $v_1>v_2$ なら $\dfrac{v_1}{v_2}>1$ で、$\sin\theta_2>0$ だから $\sin\theta_1>\sin\theta_2$、よって $\theta_1>\theta_2$ である。$v_1< v_2$ のときも同じく $\theta_1<\theta_2$ である。
(3) $\sin\theta_2<1$ なので $\sin\theta_1=\dfrac{v_1}{v_2}\sin\theta_2<\dfrac{v_1}{v_2}$ である。$v_1$ と $v_2$ の役を入れかえると $\sin\theta_2<\dfrac{v_2}{v_1}$ である。$\square$

遅い側から速い側へ進む

$A(0,1)$、$B(5,-1)$、$v_1=1$、$v_2=2$ とする(下側の方が速い)。ex-snl-bisect と同じく数値で求めると、最小点は $x_0\approx0.5588$ で、
$$ \sin\theta_1\approx0.4878,\quad \theta_1\approx29.2^\circ,\qquad \sin\theta_2\approx0.9756,\quad \theta_2\approx77.3^\circ $$
である。$\dfrac{\sin\theta_1}{1}\approx0.4878$、$\dfrac{\sin\theta_2}2\approx0.4878$ で、thm-snl-main の (2) が成り立っている。遅い上側の道は法線に近く(cor-snl-bend の (2))、$\sin\theta_1\approx0.4878<\dfrac12=\dfrac{v_1}{v_2}$ である((3))。まっすぐ $B$ に向かうより、速い下側を長く進む方が早い。

臨界角と屈折率

$v_1< v_2$ のとき、cor-snl-bend の (3) により、最小点での入射角は $\sin\theta_1<\dfrac{v_1}{v_2}$ を満たす。$\sin\theta_c=\dfrac{v_1}{v_2}$ となる角 $\theta_c$ を、物理では 臨界角 という。入射角が $\theta_c$ 以上になる向きに進んだ光は、thm-snl-main の (2) を満たす屈折角をもたない($\sin\theta_2=\dfrac{v_2}{v_1}\sin\theta_1\ge1$ になる)。

屈折率で書いた形を開く

物理では、真空中の光の速さ $c$ と媒質の中の速さ $v$ の比 $n=\dfrac cv$ を 屈折率 という。$v_1=\dfrac c{n_1}$、$v_2=\dfrac c{n_2}$ を thm-snl-main の (2) に代入して $c$ を払うと、$n_1\sin\theta_1=n_2\sin\theta_2$ の形になる。

反射と比べる

同じ側の 2 点を鏡 $\ell$ で結ぶ反射の場合は、対称点と折れ線の最短 で、$B$ を $\ell$ で折り返した点を使って解いた。lem-snl-deriv の式を使うと、反射の場合も微分で解ける。

反射も同じ関数で解ける

$A(0,a)$ と $B'(d,b)$ を $\ell$ の同じ側(上側)にとり、$\ell$ の点 $X(x,0)$ に寄る折れ線の長さを
$$ S(x)=\sqrt{a^2+x^2}+\sqrt{b^2+(d-x)^2} $$
とする。これは def-snl-time の $T(x)$ で $v_1=v_2=1$ としたものと同じ式である($B'$ を $\ell$ で折り返した点が $B(d,-b)$ で、$XB'=XB$ だから)。thm-snl-main と cor-snl-bend の (1) により、$S(x)$ は $x=\dfrac{ad}{a+b}$ でだけ最小になり、そこでは $A$ 側の角と $B'$ 側の角(どちらも法線からの角)が等しい。これは 対称点と折れ線の最短 の定理「1 本の直線に寄る最短の折れ線」の結論(入射角と反射角が等しい)と同じである。

反射と屈折を数で比べる
  1. 反射:$A(0,1)$、$B'(3,2)$ なら、最小点は $x=\dfrac{1\cdot3}{1+2}=1$ で、$S(1)=\sqrt2+\sqrt{8}=3\sqrt2$ である。両側とも法線からの角は $45^\circ$ である。
  2. 屈折:同じ $A$ から、$B'$ を折り返した $B(3,-2)$ へ $v_1=1$、$v_2=\dfrac34$ で進む場合が ex-snl-bisect で、最小点 $x_0\approx1.4374$ は $x=1$ より右(遅い側の道が短くなる向き)にずれる。

左は反射で、上側の B' を ℓ で折り返した点 B と A を結ぶ線分が ℓ と交わる点 X で、入射角と反射角が等しい。右は屈折で、下側が遅いので X は線分 AB と ℓ の交点より右にずれる 左は反射で、上側の B' を ℓ で折り返した点 B と A を結ぶ線分が ℓ と交わる点 X で、入射角と反射角が等しい。右は屈折で、下側が遅いので X は線分 AB と ℓ の交点より右にずれる

反射屈折
2 点の位置$A$、$B'$ が $\ell$ の同じ側$A$、$B$ が $\ell$ の反対側
最小にする量$AX+XB'$$\dfrac{AX}{v_1}+\dfrac{XB}{v_2}$
最小点での角入射角 $=$ 反射角$\dfrac{\sin\theta_1}{v_1}=\dfrac{\sin\theta_2}{v_2}$
解き方$B'$ を折り返した $B$ と $A$ を結ぶ線分と比べる$T'$ の符号と中間値の定理
最小点の式$x=\dfrac{ad}{a+b}$一般には 4 次方程式の解(rem-snl-quartic)

例と反例

thm-snl-main の証明と仮定のどこかを外すと、何が崩れるかを並べる。

外す条件反例成り立たなくなること
すべての $x$ で $T''>0$$f(x)=x^3-3x$ の $x=1$($f''(1)>0$ だが $f''(-1)<0$)導関数が $0$ の点が最小点である
(3) の $0< x< d$ex-snl-start の $x\approx11.20$角の関係式を満たす点が最小点である
境界が直線円の境界と $A(0,10)$、$B\left(0,-\dfrac32\right)$角の関係式を満たす点が最小点である
$A$、$B$ が $\ell$ の反対側$A(0,3)$、$B(7,1)$最も早い道が境界を通る
反例:導関数が 0 でも最小とは限らない

$f(x)=x^3-3x$ とすると、$f'(x)=3x^2-3=3(x-1)(x+1)$ で、$f'(1)=0$ である。$f''(x)=6x$ で $f''(1)=6>0$ なので、$x=1$ は極小である(関数の増減と極値 の命題「第 2 次導関数による判定」)。しかし
$$ f(1)=1-3=-2,\qquad f(-3)=-27+9=-18< f(1) $$
なので、$x=1$ は実数全体での最小点ではない。そもそも $x\to-\infty$ で $f(x)\to-\infty$ なので、最小点はない。$f''(x)=6x$ は $x<0$ で負になり、thm-snl-main の証明の段 1 のように「導関数がいつも増加する」ことが成り立たない。

反例:2 点の間にない境界の点

ex-snl-start($a=3$、$b=4$、$d=7$、$v_1=4$、$v_2=3$)で、$x>7$ の点 $X(x,0)$ を考える。def-snl-time の角は法線からの角(向きを考えない角)なので
$$ \frac{\sin\theta_1}{v_1}=\frac{x}{4\sqrt{9+x^2}},\qquad \frac{\sin\theta_2}{v_2}=\frac{x-7}{3\sqrt{16+(x-7)^2}} $$
である。$10< x<12$ に両者が等しくなる点があり、数値で求めると $x\approx11.20$、共通の値は $\approx0.2415$ である。

等しくなる点があることを開く

$x=10$ では前者が $\approx0.2395$、後者が $0.2$、$x=12$ では前者が $\approx0.2425$、後者が $\approx0.2603$ で、大小が入れかわる。2 つの式の差は連続なので、中間値の定理により $10< x<12$ に差が $0$ になる点がある。


しかしこの点の所要時間は $T(11.20)\approx4.834$ で、最小値 $\dfrac{35}{12}\approx2.917$ よりずっと大きい。$x>d$ では $d-x<0$ なので、lem-snl-deriv の式は
$$ T'(x)=\frac{\sin\theta_1}{v_1}+\frac{\sin\theta_2}{v_2}>0 $$
となり、$T'(x)=0$ にはならない。この道は $B$ の右まで行ってから引き返す形で、線分 $XA$ と $XB$ が法線の同じ側にある。thm-snl-main の (3) で $0< x< d$ を仮定したのは、2 本の線分が法線の反対側にあるようにするためである。

反例:境界が円の場合

境界を原点中心、半径 $2$ の円とし、円の外側を速さ $1$、内側を速さ $\dfrac14$ で進むとする。$A(0,10)$ から $B\left(0,-\dfrac32\right)$ へ、円周の点 $P$ を 1 回通る折れ線 $A\to P\to B$ を考える。ただし線分 $AP$ は円の外側にあるものとする。$P$ での法線は、半径の方向の直線 $OP$ である。
(1) $C(0,2)$ を通る道では、$AC$ も $CB$ も $y$ 軸の上にあり、$C$ での法線($y$ 軸)と重なるので、入射角も屈折角も $0^\circ$ である。$\dfrac{\sin0^\circ}1=\dfrac{\sin0^\circ}{1/4}=0$ で、thm-snl-main の (2) と同じ形の式が成り立つ。所要時間は
$$ \frac{AC}{1}+\frac{CB}{1/4}=8+4\cdot\frac72=22 $$
である。
(2) $P\left(\sqrt3,1\right)$ を通る道では、$AP=\sqrt{3+81}=\sqrt{84}$、$PB=\sqrt{3+\dfrac{25}4}=\dfrac{\sqrt{37}}2$ で、所要時間は
$$ \sqrt{84}+4\cdot\frac{\sqrt{37}}2=\sqrt{84}+2\sqrt{37}\approx9.165+12.166=21.331<22 $$
である。線分 $AP$ は円の外側にある。

線分 $AP$ が円の外側にあることを開く

線分 $AP$ の点 $P+t(A-P)$($0< t\le1$)の原点からの距離の 2 乗は $\lvert P\rvert^2+2t\,\overrightarrow{OP}\cdot\overrightarrow{PA}+t^2AP^2=4+2t\,\overrightarrow{OP}\cdot\overrightarrow{PA}+t^2AP^2$ で、$\overrightarrow{OP}\cdot\overrightarrow{PA}=(\sqrt3,1)\cdot(-\sqrt3,9)=-3+9=6>0$ なので、$4$ より大きい。


よって、角の関係式を満たす $C$ は最小点ではない。数値で調べると、線分 $AP$ が円の外側にある点 $P$ の中で、$C$ は所要時間が最大になる点である。境界が直線でないと、「$T''>0$」にあたる性質が成り立たないことがある。

境界が円のとき、角の関係式を満たす C を通る灰色の道(所要時間 22)より、P を通る赤の道(所要時間 21.33)の方が早い 境界が円のとき、角の関係式を満たす C を通る灰色の道(所要時間 22)より、P を通る赤の道(所要時間 21.33)の方が早い

表の 4 行目($A$ と $B$ が同じ側にある反例)の確認を開く

$A(0,3)$、$B(7,1)$ がどちらも上側(速さ $4$)にあるとする。まっすぐ進むと所要時間は $\dfrac{AB}4=\dfrac{\sqrt{49+4}}4=\dfrac{\sqrt{53}}4\approx1.820$ である。境界の点 $X$ に寄る折れ線は、対称点と折れ線の最短 の定理「1 本の直線に寄る最短の折れ線」により長さが $B$ の折り返し $(7,-1)$ と $A$ の距離 $\sqrt{49+16}=\sqrt{65}$ 以上である。どちらの側でも速さは $4$ 以下なので、境界に触れる道の所要時間は $\dfrac{\sqrt{65}}4\approx2.016$ 以上である。最も早い道は境界を通らず、屈折は起こらない。

大学数学で見る:何層もの媒質と変分法

速さの違う層が何枚も重なっているときも、thm-snl-main を 1 つの境界ごとに使える。

何層もの境界を通る道

$x$ 軸に平行な $n-1$ 本の直線で平面を $n$ 枚の層に分け、上から $k$ 番目の層では速さ $v_k$(正の数)で進めるとする。いちばん上の層の点 $A$ から、いちばん下の層の点 $B$ へ、各境界を 1 回ずつ通る折れ線 $A\to X_1\to X_2\to\dots\to X_{n-1}\to B$($X_k$ は上から $k$ 番目の境界の点)を考える。$k$ 番目の線分($k$ 番目の層の中の線分)が鉛直な直線となす角を $\theta_k$ とする。所要時間が最小になる折れ線があれば、その折れ線では
$$ \frac{\sin\theta_1}{v_1}=\frac{\sin\theta_2}{v_2}=\dots=\frac{\sin\theta_n}{v_n} $$
が成り立つ。

1 つの境界の点だけを動かす

要点:最小の折れ線で、$k$ 番目の境界の点 $X_k$ だけを動かすと、変わるのは $X_{k-1}\to X_k\to X_{k+1}$ の部分だけで、これは境界を 1 回通る道である。全体が最小ならこの部分も最小なので、thm-snl-main の (2) から $\dfrac{\sin\theta_k}{v_k}=\dfrac{\sin\theta_{k+1}}{v_{k+1}}$ となる。これを $k=1,\dots,n-1$ について並べる。

詳しい証明を開く

所要時間が最小の折れ線を 1 つとり、$X_0=A$、$X_n=B$ と書く。$1\le k\le n-1$ を 1 つ決め、$X_k$ 以外の点を止めて、$X_k$ だけを $k$ 番目の境界の上で動かす。所要時間のうち変わるのは、$X_{k-1}$ から $X_k$ を通って $X_{k+1}$ へ進む部分だけである。全体が最小なので、この部分も、$X_k$ を動かした中で最小になっている。

この部分は、$X_{k-1}$($k$ 番目の境界より上)から $X_{k+1}$(下)へ、境界を 1 回通る道である。$k$ 番目の境界を $x$ 軸、$X_{k-1}$ を $y$ 軸の上にとる座標にすると、def-snl-time の設定になる($X_{k+1}$ が $X_{k-1}$ の左にあるときは左右を折り返す。角は変わらない)。thm-snl-main の (1)(2) により、$X_k$ はその最小点で、そこでは $\dfrac{\sin\theta_k}{v_k}=\dfrac{\sin\theta_{k+1}}{v_{k+1}}$ である(境界の法線は鉛直なので、法線からの角は鉛直からの角である)。

$X_{k+1}$ が $X_{k-1}$ の真下にあるときは、lem-snl-deriv の式で $d=0$ とすると $T'(0)=0$ である。prf-snl-main の段 1 と同じく $T'$ は増加するので、最小点は $X_{k-1}$ の真下の点だけであり、$\theta_k=\theta_{k+1}=0^\circ$ で同じ式が成り立つ。$\square$

最小の折れ線があることは、2 つ以上の変数の関数の最小値の問題になるので、この記事では証明しない。

3 つの層を通る道

境界を $y=0$ と $y=-1$ とし、上から速さ $v_1=1$、$v_2=0.6$、$v_3=0.8$ とする。$A\left(0,\dfrac32\right)$ から $B\left(4,-\dfrac52\right)$ へ進む折れ線の所要時間を、2 つの境界の点の位置 $x_1$、$x_2$ の関数として数値で最小にすると、$x_1\approx2.1368$、$x_2\approx2.7005$、所要時間 $\approx7.0047$ で、
$$ \frac{\sin\theta_1}{v_1}\approx\frac{\sin\theta_2}{v_2}\approx\frac{\sin\theta_3}{v_3}\approx0.8185 $$
である(図 6)。いちばん遅い真ん中の層では、道が鉛直に最も近い。

3 つの層を通る最も早い道。いちばん遅い真ん中の層(速さ 0.6)で道が鉛直に近づき、灰色の点線は線分 AB 3 つの層を通る最も早い道。いちばん遅い真ん中の層(速さ 0.6)で道が鉛直に近づき、灰色の点線は線分 AB
層を薄く細かくしていくと、速さが高さとともに連続的に変わる媒質になり、光の道は折れ線ではなく曲線になる。このときの所要時間は、道の長さを小さく区切って「長さ $\mathbin{÷}$ その場所の速さ」を足し合わせた量(積分)で、最小にする相手は数ではなく曲線そのものになる。曲線を動かして積分の値を最小にする問題を扱うのが、大学で学ぶ 変分法 である(ここでは紹介だけにとどめる)。

演習

道を逆にたどる

$\ell$ を $x$ 軸とし、上側を速さ $3$、下側を速さ $4$ で進めるとする。$A(0,4)$ から $B(7,-3)$ へ境界を 1 回通る道のうち、所要時間が最小になる境界の点 $X$ と、最小の所要時間を求めよ。また、この道と ex-snl-start の最も早い道の関係を述べよ。

解答を開く

def-snl-time で $a=4$、$b=3$、$d=7$、$v_1=3$、$v_2=4$ の場合である。$X(3,0)$ をとると、$AX=\sqrt{16+9}=5$、$XB=\sqrt{9+16}=5$ で、$\sin\theta_1=\dfrac35$、$\sin\theta_2=\dfrac45$ だから $\dfrac{\sin\theta_1}{v_1}=\dfrac15=\dfrac{\sin\theta_2}{v_2}$ である。$0<3<7$ なので、thm-snl-main の (3) により $X(3,0)$ が最小点で、最小の所要時間は $\dfrac53+\dfrac54=\dfrac{35}{12}$ である。

点 $(x,y)$ を $(7-x,-y)$ に移す(点 $\left(\dfrac72,0\right)$ を中心とする $180^\circ$ の回転)と、ex-snl-start の $A(0,3)$ は $(7,-3)$ に、$B(7,-4)$ は $(0,4)$ に、境界の点 $(4,0)$ は $(3,0)$ に移り、上側と下側が入れかわる。つまりこの演習の道は、ex-snl-start の最も早い道を逆向きにたどった道で、所要時間も同じ $\dfrac{35}{12}$ である。道の所要時間はたどる向きによらないので、最も早い道は逆向きにたどっても最も早い。thm-snl-main の (2) の式が $A$ 側と $B$ 側について同じ形をしているのは、このことの表れである。

さらに先へ

  • 境界が曲線のときは、境界の点 $P$ での接線に垂直な直線を法線として角を測る。最小点が境界の滑らかな部分にあれば、そこでも thm-snl-main の (2) と同じ式が成り立つ(この記事では証明しない)。ただし ex-snl-cx-circle のように、式を満たす点が最小とは限らない。
  • 鏡で反射する光の道を円の鏡で考えると、反射する点を求める問題は難しくなる(Alhazenの問題)。
  • 「最も大きく見える位置」を求める問題も、微分と図形の 2 通りで解ける(Regiomontanusの最大角問題)。
  • 楕円・放物線の鏡での反射は 2次曲線の接線と光学的性質 で扱う。3 点までの距離の和を最小にする点は Fermat点 である。

関連項目

Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する