臨界角計算機
全反射が始まる角度を示します。ガラス(屈折率1.5)から空気(屈折率1)へ進む光は、41.8103148958°を超えると完全に反射します。これは1÷1.5の逆正弦です。最初の媒質は屈折率の高い側にしてください。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- N1
- 1.5
- N2
- 1
- 比
- 0.6666666667
- 臨界角 rad
- 0.7297276562
- 臨界角 deg
- 41.8103148958
臨界角とは、法線から測った入射角のうち、密な媒質を進む光が希薄な媒質との境界で全反射される最小の角です。屈折角が九十度となるスネルの法則から、その角は二つの屈折率の比の逆正弦、すなわち n1 が n2 より厳密に大きいとき theta-c = arcsin(n2/n1) です。全反射の宿題を確認する学生、受け入れ角の前提を検証する光ファイバの指導者、ガラス–空気と水–空気の界面を比較する実験室技術者、構造化された数値が必要な学習プラットフォームは、あいまいな図ではなく決定的な臨界角計算機を必要とします。
臨界角の意味と必要な二つの屈折率
光線が媒質一から媒質二へ進むとき、スネルの法則は入射角と屈折角の正弦を屈折率 n1 と n2 に結び付けます。n1 が n2 より大きいと屈折光線は法線から遠ざかり、入射角を増やすと屈折角は九十度に近づきます。屈折光線が界面をかすめる入射角が臨界角で、sin(theta-c) = n2/n1、したがって theta-c = arcsin(その比) です。
theta-c を超えると媒質二に実在の屈折光線はなく、界面は全反射を示します。これは光ファイバで光を導く現象であり、水中から見たプール底を明るく保ち、直角プリズムにも現れます。検索意図は臨界角計算機、全反射計算機、ガラス–空気の臨界角、arcsin n2/n1、屈折率と臨界角といった語句に集まります。
人々が欲しいのは式の存在を思い出すことだけではなく、ワークシートやパイプラインに載せる数値の度とラジアンです。両指数は同じ波長文脈の無次元相対屈折率として保ちます。エンジンは分散表をモデル化しません。
活用例
宿題・実験の全反射ドリル
学生と採点者がガラス–空気、水–空気などの教科書ペアの臨界角を計算し、度を解答と照合し、n1 が n2 より大きくないときに明確なエラーを得ます。
ファイバとプリズムの設計確認
コア–クラッドまたはガラス–空気界面が指定入射角以上で全反射を支えるかを、深い光線追跡の前に素早く検証します。
よくある質問
第一指数が第二より小さいとどうなりますか?
全反射には n1 > n2 が必要で、第一が小さい(または等しい)と実在の臨界角はなく、課金されません。
任意の入射角に対する完全なスネルの法則ですか?
いいえ。 本機能は二つの指数からの TIR 臨界角のみを解きます。任意入射の屈折角は返しません。
ガラスから空気への臨界角は何度ですか?
ガラスを1.5、空気を1とすると、法線から41.8103148958°です。それより大きな角度で境界に当たった光は外へ出ず、ガラスの中へ反射されます。
最初の屈折率が2番目より大きくなければならないのはなぜですか?
全反射は、光が屈折率の高い媒質から低い媒質へ進むときにしか起きないためです。そうでない組み合わせには臨界角がなく、計算は受け付けられません。
全反射はどこで使われていますか?
光ファイバーで光を導くほか、直角プリズムを鏡として働かせます。水中からプールの底が明るく見えるのも全反射によるものです。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/optics/critical-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/critical-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/critical-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/critical-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/critical-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.critical_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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
本機能は正の有限な二つの指数を受け取り、第一指数が第二以下の場合は明確な invalid_input で拒否し、比・ラジアンと度の臨界角・式・手法を安定した JSON で返します。
臨界角の意味と必要な二つの屈折率
n1、n2、ratio、critical_angle_rad、critical_angle_deg、formula、method を JSON で返すと、ノートへの貼り付け、自動テストでの差分、言語をまたいだ再利用が容易になり、逆三角算術の再実装が不要になります。
入力検証と θc = arcsin(n2 / n1) の適用方法
有限の正数に parse される数値文字列は受け入れられるため、フォームや CSV 風パイプラインは追加のキャストなしで値を渡せます。製品契約では第一指数が第二より厳密に大きいことを要求します。検証後、比 r = n2/n1 を作り、ラジアンの theta-c は Math.asin(r)、度はラジアン×180/π です。多層スタック、吸収、波長表はなく、既知の二つの指数による理想的な平面界面の代数です。必須の n1 と n2 を含む JSON 本体を送ってください。別名 n_incident、incident_index、incident は第一(入射)指数に、n_transmitted、transmitted_index、transmitted は第二(透過)指数に対応します。提供された各フィールドは正の有限数でなければなりません。欠落、空文字列、非数値テキスト、ゼロ、負値、NaN、Infinity は結果を返す前に即座に invalid_input となり、失敗した検証は課金されません。n1 が n2 より小さい、または両方が等しい場合、その界面方向には実在の臨界角がないため invalid_input で失敗します。結果は安定した小数精度に丸められ、同じ入力は JavaScript エンジン間で常に同じ JSON になります。教室の定番は n1≈1.5・n2=1 のガラス–空気、n1≈1.33 の水–空気、はるかに大きい n1 で臨界角が小さいダイヤモンド–空気です。
実務での使い方、制限、料金、配信経路
全反射の採点、ファイバ開口数の前提確認、ガラス–空気と水–空気の比較、プリズム設計スケッチの健全性確認など、すぐ臨界角を見たいときはブラウザツールを使います。常に密な媒質を n1 に置き、n1 > n2 が物理的な TIR 配置と一致するようにしてください。ラベルを逆にすると無意味な角を作る代わりに、正しく第一指数が小さいというエラーになります。言語モデル、外部光学サービス、乱数はないため、継続的インテグレーションや再現可能な教材に固定できます。スクリプト、教材プラットフォーム、光学ヘルパー、ノートブックが同一契約の下で多くの指数対に安定 JSON を必要とするときは API を使います。成功した各リクエストは $0.002 の課金項目で、検証失敗は残高を消費しません。結果は完全に決定的で、同じ二つの指数は常に同じ critical_angle_deg と critical_angle_rad を生みます。明示的なドメインエラー(小さい第一指数の拒否など)を好むファイバ演習、競技の採点、物理ワークシート、前処理にエンドポイントを接続してください。
連携の活用例
学習プラットフォームと CI フィクスチャ
教材作成者と自動物理チェッカーが、各実行環境に逆正弦コードを埋め込まずに決定的 JSON(比・ラジアン・度)を固定します。
技術的な質問
二つの屈折率から臨界角をどう計算しますか?
n1(入射・密な媒質)と n2(透過・希薄な媒質)を含む JSON を送ります。応答は θc = arcsin(n2/n1) による critical_angle_rad、critical_angle_deg、ratio = n2/n1 を含みます。
結果は度ですか、ラジアンですか?
両方です。critical_angle_deg は度、critical_angle_rad はラジアンで、検証用の中間比 n2/n1 も付きます。
臨界角計算機は無料ですか?
ブラウザツールはお使いの端末で無料です。API 呼び出しは成功項目あたり $0.002 の前払い KIT 残高を使い、検証失敗は課金されません。