回折格子の角度から波長を計算
この計算ツールは、測定した回折角に対応する波長を求めます。隣り合う格子線の間隔、格子面の法線から測った符号付き角度、0 ではない符号付き回折次数を入力してください。垂直入射の回折格子方程式 d sin(theta) = m lambda を波長について変形し、格子間隔と同じ長さの単位で結果を返します。ラジアン単位の角度、正弦値、式、代入手順も表示されるため、計算結果の確認や記録に利用できます。
無料で実行
格子間隔、角度、次数を整合させて入力します
最初に、隣り合う格子線の物理的な間隔 d を入力します。メートル、ミリメートル、マイクロメートル、ナノメートルなど、任意の長さの単位を使用できます。計算では尺度が保たれるため、波長は格子間隔とまったく同じ単位で返されます。溝密度はそのまま入力できません。回折格子が1ミリメートル当たりの線数で示されている場合は、先に逆数を取り、1本当たりのミリメートルへ変換してください。次に、格子表面ではなく格子面の法線を基準に測った回折角を度で入力します。角度と次数には符号があります。正の角度には正の次数、負の角度には負の次数を対応させます。符号が一致すると、計算される波長は正になります。次数は0ではない整数でなければなりません。0次光は波長を分離しないため、この変形式から波長を決定できないからです。ここでは垂直入射を仮定しています。光源が斜めから入射する場合は、一般化された回折格子方程式をご使用ください。
変形した回折格子方程式を理解します
垂直入射の場合、透過型または反射型の回折格子は d sin(theta) = m lambda で表されます。d は格子間隔、theta は回折角、m は整数の次数、lambda は波長です。求める量について解くと lambda = d sin(theta) / m になります。このツールは、入力された角度を度からラジアンへ変換してから正弦を計算し、その無次元の値に格子間隔を掛け、次数で割ります。正弦には単位がなく、次数は純粋な整数なので、波長は格子間隔の単位を引き継ぎます。この性質により、実験室での換算が簡単になります。たとえば格子間隔をマイクロメートルで入力すれば、波長もマイクロメートルで直接得られます。符号は、回折次数が法線のどちら側に現れるかを示します。負の角度と負の次数の組み合わせは、対応する正の組み合わせと同じ正の波長を与えます。0度は、0ではない次数に対して正の波長を生じないため受け付けません。
前提条件を確認して結果を解釈します
表示される手順を使い、数値の代入と実験上の前提の両方を確認してください。まず、示された正弦値の大きさと符号が想定どおりかを確かめます。次に、波長の尺度が格子間隔に対して妥当かを確認します。正弦の絶対値は1を超えないため、このモデルでは波長が d を次数の絶対値で割った値を超えることはありません。この上限に近い結果は、回折がかすめ角に近いことを示し、小さな角度測定誤差でも推定波長が大きく変化します。この計算は理想的な幾何学的回折を扱うもので、強度、分解能、ブレーズ効率、偏光応答、有限のスリット幅、不確かさは推定しません。また、検出器がその波長を観測できるかどうかも判定しません。測定データを扱う際は、角度の規約、回折格子の仕様、割り当てた次数、間隔の単位を結果とともに記録してください。垂直入射でない場合、屈折率が関係する場合、または別の符号規約を使う場合は、先に物理式を適切に変更してください。
活用例
スペクトル線を同定する
既知の格子間隔と回折次数を使い、検出器で測定した角度を波長候補へ変換します。
分光器の設定を確認する
予想する波長が、選択した次数の観測角度に現れるかを確認します。
教育実験を解析する
回折測定から波長を求めるために用いた式の変形と代入手順を示します。
よくある質問
どの回折格子方程式を使用しますか?
垂直入射の d sin(theta) = m lambda を使用し、lambda = d sin(theta) / m に変形します。
波長はどの単位で返されますか?
格子間隔と同じ長さの単位です。間隔がマイクロメートルなら、波長もマイクロメートルになります。
1ミリメートル当たりの線数を間隔として入力できますか?
できません。まず線密度の逆数を取り、1ミリメートル当たりの線数を1本当たりのミリメートルへ変換してください。
角度と次数の符号を一致させるのはなぜですか?
符号は法線のどちら側かを表します。0ではない同符号を使うと、d sin(theta) を m で割った波長が正になります。
API リクエストの料金はいくらですか?
API の料金は1リクエスト当たり $0.002 です。同じ決定論的な計算をブラウザーでも利用できます。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/optics/grating-wavelength-from-angle \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"spacing":0.001,"angle_deg":30,"order":1}'const res = await fetch("https://api.kit.forhosting.com/optics/grating-wavelength-from-angle", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"spacing": 0.001,
"angle_deg": 30,
"order": 1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/optics/grating-wavelength-from-angle",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"spacing": 0.001,
"angle_deg": 30,
"order": 1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/optics/grating-wavelength-from-angle", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"spacing":0.001,"angle_deg":30,"order":1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"spacing":0.001,"angle_deg":30,"order":1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/optics/grating-wavelength-from-angle", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"spacing": 0.001,
"angle_deg": 30,
"order": 1
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "optics.grating_wavelength_from_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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |