Physics Zen
物理の概念

スネルの法則を理解する:屈折の計算例

2026年10月8日読了まで3分
スネルの法則を理解する:屈折の計算例

水の入ったコップに立てたストローは、水面のところでずれて見えることがあります。ストローが曲がったわけではありません。水中の部分から来た光が水から空気へ出るときに向きを変え、目は水中で実際に進んだ向きとは異なる方向に光を延長して見るからです。この向きの変化が屈折です。

光は水面で跳ね返ることもあります。それは反射です。屈折の問題では境界を通り抜ける光線を追います。入射角と2つの媒質がわかれば、スネルの法則で進む向きを求められます。計算は短く、図と角度のラベルを正しく付けることが本当の作業です。

先に境界面と法線を描く

法線は、光線が境界に当たる点で、面に垂直な架空の線です。入射角も屈折角も、それぞれの光線と法線の間で測ります。光線と面の間ではありません。次は空気から水へ進む光線の模式図です。横方向の間隔は説明用で、数値を使う角度はあとで決めます。

                  air, n1 = 1.00
 incoming ray  ↘  |  normal
                 \| θ1
------------------+---------------- surface
                   |\ θ2
                   | ↘ transmitted ray
                 water, n2 = 1.33

紙に描くなら、プラス記号の位置に短い破線の法線を引きます。入ってくる側を 11、通り抜けた側を 22 と記しましょう。入射光線の横に θ1\theta_1、透過光線の横に θ2\theta_2 を書きます。図があれば、面から測った角度をそのままスネルの法則に入れるミスを防げます。面との角度が 30∘30^\circ なら、法線との角度は 90∘−30∘=60∘90^\circ-30^\circ=60^\circ です。

OpenStaxの屈折の法則の節でも同じ法線の取り決めを使います。図では、入射側に残る反射光線と、2つ目の媒質へ進む屈折光線も区別しています。

屈折率の意味

屈折率 nn は、真空中の光速 cc と、媒質中の速さ vv の比です。

n=cv.n=\frac{c}{v}.

このモデルでは、屈折率が大きいほど光は遅く進みます。以下ではnair=1.00n_{\mathrm{air}}=1.00 と nwater=1.33n_{\mathrm{water}}=1.33 を使います。これはOpenStaxの屈折の解説を基に丸めた値です。屈折率は波長によって変わることがあります。以下の計算では振動数が一定の1本の光線を追い、この屈折率を一定として扱います。境界で振動数は変わりませんが、速さと波長は変わります。OpenStax Physicsの屈折の節も説明しています。

2方向の関係がスネルの法則です。

n1sin⁡θ1=n2sin⁡θ2.n_1\sin\theta_1=n_2\sin\theta_2.

式の角度は法線から測ります。屈折率には単位がなく、サインの値にも単位はありません。このガイドの角度は度で示しているので、計算機も度に設定しましょう。ラジアンにすると数値が間違います。

計算前に曲がる向きを予測します。2つ目の媒質の屈折率が大きければ sin⁡θ2\sin\theta_2 は小さくなり、透過角も小さくなって光線は法線へ近づきます。2つ目の屈折率が小さければ、透過光線が存在する場合は法線から遠ざかります。垂直入射の θ1=0∘\theta_1=0^\circ では、速さが変わっても光線は法線に沿ってまっすぐ進みます。

計算例:空気から水へ

空気中の光線が平らな水面へ、法線から 40∘40^\circ で入るとします。求めるのは水中の角度です。まず n1=1.00n_1=1.00、n2=1.33n_2=1.33、θ1=40∘\theta_1=40^\circ と記します。屈折率が増えるので θ2<40∘\theta_2<40^\circ と予測できます。

数値を入れる前に、スネルの法則を未知のサインについて解きます。

sin⁡θ2=n1n2sin⁡θ1=1.001.33sin⁡40∘=0.6427881.33≈0.483299.\sin\theta_2=\frac{n_1}{n_2}\sin\theta_1 =\frac{1.00}{1.33}\sin40^\circ =\frac{0.642788}{1.33} \approx0.483299.

計算機を度の設定のままにし、逆サインを取ります。

θ2=sin⁡−1(0.483299)≈28.9∘.\theta_2=\sin^{-1}(0.483299)\approx28.9^\circ.

40∘40^\circ より小さいので、向きの確認にも合います。入力ミスを見つけるため元の式へ代入すると、1.00sin⁡40∘≈0.64281.00\sin40^\circ\approx0.6428、1.33sin⁡28.9∘≈0.6431.33\sin28.9^\circ\approx0.643 です。小さな差は丸めによります。51∘51^\circ という答えなら、屈折率の大きい媒質へ入るときの予測に反します。

28.9∘28.9^\circ に長さの単位を付けてはいけません。問われているのは向きで、答えの単位は度です。試験で速さも問われたら、角度を速さのように扱わず、別に v=c/nv=c/n から求めます。

計算例:水から空気へ

今度は水中の光線を水と空気の境界へ上向きに、法線から 30∘30^\circ で進ませます。媒質の番号を逆にします。水が n1=1.33n_1=1.33、空気が n2=1.00n_2=1.00 です。屈折率が下がるため、空気中では 30∘30^\circ より大きい角度を予測します。

sin⁡θ2=1.331.00sin⁡30∘=1.33(0.5)=0.665.\sin\theta_2=\frac{1.33}{1.00}\sin30^\circ =1.33(0.5)=0.665.

したがって、

θ2=sin⁡−1(0.665)≈41.7∘.\theta_2=\sin^{-1}(0.665)\approx41.7^\circ.

予測どおり、透過光線は法線から遠ざかります。元の式へ代入すると、1.33sin⁡30∘=0.6651.33\sin30^\circ=0.665 と 1.00sin⁡41.7∘≈0.6651.00\sin41.7^\circ\approx0.665 になり、示した精度で一致します。

2つの例で変わったのは、進む向き、屈折率の順序、指定された入射角です。n1n_1 と n2n_2 を入れ替えながら、前の θ1\theta_1 をそのまま使わないでください。媒質1は、その計算で光線が出発する媒質です。

不可能な答えと臨界角を見つける

実数の角度のサインは1を超えません。スネルの法則を変形して sin⁡θ2>1\sin\theta_2>1 となっても、計算機で無理に答えを出したり1へ丸めたりしないでください。屈折率の大きい媒質から小さい媒質へ進む場合、理想的な光線モデルでは全反射の範囲を示します。その入射角では透過する屈折光線はありません。

境界となる入射角では、透過光線は境界面に沿って進み、θ2=90∘\theta_2=90^\circ です。スネルの法則に sin⁡90∘=1\sin90^\circ=1 を入れ、臨界角を求めます。

sin⁡θc=n2n1,θc=sin⁡−1 ⁣(n2n1),n1>n2.\sin\theta_c=\frac{n_2}{n_1},\qquad \theta_c=\sin^{-1}\!\left(\frac{n_2}{n_1}\right),\quad n_1>n_2.

ここで丸めた水と空気の屈折率を使うと、θc=sin⁡−1(1.00/1.33)≈48.8∘\theta_c=\sin^{-1}(1.00/1.33)\approx48.8^\circ です。これは選んだ値を使って別に丸めた計算で、OpenStaxの全反射の節に規則と境界の図があります。先ほどの 30∘30^\circ は臨界角より小さく、透過光線があります。法線から 60∘60^\circ なら sin⁡θ2=1.33sin⁡60∘≈1.152\sin\theta_2=1.33\sin60^\circ\approx1.152 が必要ですが、不可能です。このモデルでは全反射します。

等号の場合も大切です。臨界角では屈折方向は 90∘90^\circ で、境界面に平行です。入射角がそれより大きいと全反射します。空気から水へ進む場合は、屈折率の小さい側から出発するため全反射は起きません。また、普通の部分反射とこの限界も区別しましょう。透過光線がある場合でも、境界は光の一部を反射できます。

答え付きの練習問題3つ

1. 面から測った角度が与えられる。 空気から平らな水面へ、面に対して 25∘25^\circ で光が入ります。スネルの法則に使う入射角と屈折角を求めてください。法線は面に垂直なので、θ1=90∘−25∘=65∘\theta_1=90^\circ-25^\circ=65^\circ です。続いて、

sin⁡θ2=1.001.33sin⁡65∘≈0.9063081.33≈0.681434,θ2≈43.0∘.\sin\theta_2=\frac{1.00}{1.33}\sin65^\circ \approx\frac{0.906308}{1.33}\approx0.681434, \qquad \theta_2\approx43.0^\circ.

答えは法線から測り、水へ入るので 65∘65^\circ より小さくなります。

2. 面へ垂直に入射する。 光が水から空気へ、法線から 0∘0^\circ で進みます。スネルの法則は 1.33sin⁡0∘=1.00sin⁡θ2=01.33\sin0^\circ=1.00\sin\theta_2=0 なので、θ2=0∘\theta_2=0^\circ です。透過光線はまっすぐ進みます。2つの媒質の屈折率が等しいという意味ではありません。

3. 透過光線は存在するか? 水から空気へ進む光線の角度が法線から θ1=50∘\theta_1=50^\circ です。計算すると sin⁡θ2=1.33sin⁡50∘≈1.019\sin\theta_2=1.33\sin50^\circ\approx1.019 です。1を超えるため、このモデルには透過光線の角度はありません。同じことを、50∘50^\circ が約 48.8∘48.8^\circ の臨界角を超えることからも確認できます。sin⁡−1(1.019)\sin^{-1}(1.019) を実数の角度として答えてはいけません。

法線を記して、計算前に曲がる向きを予測できるようになったら、Physics Zenの幾何光学のトピックで反射、屈折、臨界角を練習しましょう。同じ習慣は図を多く使う試験にも役立ちます。A-Level Physicsの試験対策、Abitur Physikの試験対策、Bac physiqueの試験対策には、より広い学習計画があります。新しい屈折の問題でも、まず入射側の媒質を特定し、両方の角度を法線から測り、逆サインを押す前にサインの値を確かめましょう。

よくある質問

なぜスネルの法則にはサインを使うのですか?

サインは、光線の向きのうち境界面に沿う分を表します。平らな境界での波の幾何では、両側でその成分が結び付き、n1sin⁡θ1=n2sin⁡θ2n_1\sin\theta_1=n_2\sin\theta_2 となります。光線の問題を解くときには、法線からの角度を使い、それぞれの屈折率と同じ媒質の角度を対応させることが実用上重要です。

光が屈折すると振動数も変わりますか?

変わりません。この境界のモデルでは振動数は同じです。速さと波長が媒質によって変わります。屈折率も波長で変わることがあるため、幅広い色が混ざった光は分かれる場合があります。ここでの数値例は、1組の屈折率を決めて1本の光線を追っています。

屈折率が大きいほど曲がる角度も常に大きいですか?

いいえ。2つの屈折率と入射角を比べる必要があります。媒質1での入射角を固定すると、n2n_2 が大きいほど媒質2での法線からの角度は小さくなります。入射角が 0∘0^\circ なら進む向きは曲がりません。数値を比べる前に、どの角度のことか必ず示しましょう。