全反射の臨界角計算機
屈折率1.5のガラスから屈折率1の空気へ進む光は、法線から41.810315°を超えると完全に反射されます。光が実際に進む向きのとおりに2つの屈折率を入力すれば、臨界角がわかります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- N1
- 1.5
- N2
- 1
- 比
- 0.6666666667
- 臨界角 (rad)
- 0.7297276562
- 臨界角 (°)
- 41.8103148958
この全反射臨界角計算機は、屈折率の高い媒質から低い媒質へ進む光線が完全に反射され始める境界角を求めます。入射側の媒質の屈折率をn1、2番目の媒質の屈折率をn2として入力してください。n2をn1で割った値の逆正弦を計算し、結果を度とラジアンの両方で表示します。また、n1がn2より大きいという物理条件も検証するため、もっともらしく見えても全反射として成立しない結果を防げます。
臨界角が表すものをご確認ください
全反射は、光が屈折率の高い媒質から低い媒質へ進むときに起こり得ます。入射角を大きくすると、屈折光は法線からさらに離れる方向へ曲がります。ある入射角で屈折角が九十度に達し、光線が境界面に沿って進みます。
この入射角が臨界角です。それを超えると、理想的な光線は2番目の媒質へ進まず、内部で反射されます。この計算機では入射媒質をn1、2番目の媒質をn2とするため、n1はn2より厳密に大きくなければなりません。
どちらも無次元の屈折率であり、同じ波長と互換性のある条件における値をご使用ください。返される角度は表面からではなく、境界面の法線から測ります。結果には度、ラジアン、および屈折率の比が含まれるので、中間値も確認できます。
これは理想的な平面境界の計算です。表面粗さ、吸収、屈折率分布、波長による変化は、入力した屈折率に既に反映されていない限り扱いません。
逆正弦の式を正しく適用してください
計算はスネルの法則から直接導かれます。臨界状態では屈折角が九十度となり、その正弦は1です。式を整理するとsin(theta critical) = n2 / n1となり、逆関数を適用するとtheta critical = asin(n2 / n1)になります。
たとえば理想的なガラスから空気への境界は、n1を1.5、n2を1.0として近似できます。比は3分の2で、その逆正弦は約0.729728ラジアン、または41.810315度です。未入力、文字列、無限大、ゼロ、負数、等しい屈折率、およびn1が小さい場合は拒否されます。
逆正弦が実数になる引数はマイナス1から1までであり、物理的な全反射にはさらに0より大きく1未満の比が必要だからです。検証を通す目的で媒質を逆にしないでください。実際の光の進行方向を入力します。
空気からガラスへ進む場合、その方向では全反射は起きませんが、同じ材料でも逆方向なら起こり得ます。
実験や用途で結果をご活用ください
臨界角の結果はしきい値であり、完全な光線追跡ではありません。実験では、内部反射が始まる実測角と計算角を比較し、材料の屈折率と角度目盛りの精度も考慮してください。プリズム設計が全反射に依存する場合は、内部入射角が返された臨界角より大きいことを確認します。
光ファイバーでも同じ境界の考え方が光の閉じ込めを説明しますが、実用計算には形状、開口数、入射条件、モード特性も必要になる場合があります。屈折率は波長や温度によって変わることがあるため、対象条件に合う値をお選びください。この計算機は入力値を推定せず、正しい順序の有効な2つの屈折率からasin(n2 / n1)で得られる角度を確実に返します。
元の測定精度を超える桁数を意味のある精度として扱わないでください。
活用例
物理学の演習
屈折率の比を確認しながら、全反射の問題を度とラジアンの両方で検算できます。
プリズムのしきい値確認
プリズム内部の入射角を、材料境界の理想的な臨界角と比較できます。
光ファイバーの教材
コアとクラッドの屈折率が内部反射の境界を決める仕組みを示せます。
よくある質問
どの式を使用しますか?
屈折角が九十度のときのスネルの法則から導いたtheta critical = asin(n2 / n1)を使用します。
なぜn1はn2より大きい必要がありますか?
全反射には、光が屈折率の高い媒質から低い媒質へ進む条件が必要だからです。
角度は表面から測りますか?
いいえ。 光学の慣例に従い、臨界角は境界面の法線から測ります。
ガラスから空気への臨界角はいくつですか?
ガラスを1.5、空気を1.0とすると、約41.810315°、ラジアンでは0.729728です。屈折率の比は3分の2で、その値を正弦とする角度が臨界角になります。
空気からガラスへ進む光ではどうなりますか?
この向きでは臨界角はありません。全反射は屈折率の小さい媒質へ向かう光でしか起こらないためです。値を通すために媒質を入れ替えず、実際の進む向きのとおりに入力してください。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/optics/total-internal-reflection-angle \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n1":1.5,"n2":1}'const res = await fetch("https://api.kit.forhosting.com/optics/total-internal-reflection-angle", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n1": 1.5,
"n2": 1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/optics/total-internal-reflection-angle",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n1": 1.5,
"n2": 1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/optics/total-internal-reflection-angle", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n1":1.5,"n2":1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n1":1.5,"n2":1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/optics/total-internal-reflection-angle", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"n1": 1.5,
"n2": 1
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "optics.total_internal_reflection_angle",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
逆正弦の式を正しく適用してください
実装は除算と逆正弦を決定論的に実行し、安定したJSONにするため表示値を小数点以下十二桁に丸めます。
実験や用途で結果をご活用ください
自動教材や技術ツールはAPIを呼び出し、比、ラジアン、度を入力値とともに保存できます。APIで成功した計算は1項目あたり$0.002で、外部情報源や変化する参照表は利用しません。
技術的な質問
結果には度とラジアンが含まれますか。
はい。critical_angle_degrees、critical_angle_radians、および屈折率の比を返します。
API計算の料金はいくらですか。
成功した計算は1項目あたり$0.002です。