毛髪回折計算機
波長500 nmのレーザー、2 m先のスクリーン、10 mm間隔の暗い縞なら、毛髪の直径は0.0001 m、つまり100マイクロメートルです。レーザーポインターを使う定番の光学実験を、その場で確かめられる測定に変えます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 波長
- 0.0000005
- スクリーンまでの距離
- 2
- 縞の間隔
- 0.01
- 髪の毛の直径
- 0.0001
人の毛髪は細い不透明な障害物です。コリメートしたレーザーが当たると、バビネの原理により遠方場の回折包絡は同じ幅のスリットと一致し、遠いスクリーンには明るい中央帯と、等間隔の暗い極小が現れます。授業実験で用いる小角近似では、隣り合う極小の間隔は波長にスクリーン距離を掛けて直径で割った値、つまり縞間隔が lambda L を d で割ったものになります。本計算機はその関係を逆に解きます。レーザー波長、毛からスクリーンまでの距離、測定した縞間隔を与えると、直径 d が lambda L を delta y で割った値として返ります。零または負の縞間隔は、公式が零除算になるため拒否されます。
レーザー縞模様から毛髪直径を求める手順
細い毛は開口ではなく不透明な障害物ですが、バビネの相補性原理は、障害物の遠方場回折包絡が同じ輪郭の開口のものと一致すると述べます。授業実験では、コリメートしたレーザーが遠いスクリーンに明るい中央帯を作り、その両側の暗い極小の間隔が毛の直径を符号化します。
入門レポートで用いる小角近似では、毛を横断する光路差はスクリーン座標に対して線形に増えるため、隣り合う極小の距離は波長にスクリーン距離を掛けて直径で割った値、すなわち delta y が lambda L を d で割ったものになります。並べ替えは割り算ひとつです。直径 d は lambda に L を掛け、測定した縞間隔で割った値です。
波長、スクリーン距離、縞間隔は比が長さになるよう、同じ長さ単位を共有しなければなりません。三つともメートルが SI の選び方ですが、端から端まで揃えていればミリメートルでも同等です。零または負の縞間隔は物理的な模様周期ではなく、零除算や負の直径を出す代わりに拒否されます。
波長とスクリーン距離も厳密に正でなければなりません。正でないレーザー波長や正でない光学台の長さは、実験室の幾何ではありません。実装は純粋な浮動小数演算です。
本ページはエアリーディスク、刻線格子、ヤングの二重スリット縞公式を別実験として当てはめるものではありません。それらは別の検索意図のまま、他の計算機が担当します。
毛髪回折計算機が役立つ場面
高校と大学の光学の授業は、レーザーポインタやヘリウムネオン光源で毛を測る古典実験を課します。学習者は壁や物差しに縞間隔を記録し、delta y が lambda L を d で割った関係を逆に解いて直径を求めます。実験室の三つの数からメートルを返す信頼できる基準があれば、採点、演示の準備、レポート確認が、本格的な波動光学ソルバーなしで速くなります。
複数の毛、ナイロン繊維、線引きしたワイヤを比べる授業実験では、手順書と同じバビネ逆解が必要です。マイクロメータの読みを基準にする前に、予測直径を確認できるようにするためです。接触ゲージではなく光学台から繊維直径を記録する品質・材料ノートは、同じ閉じた式をスクリプトから呼べます。
検証失敗は残高を消費しません。宿題確認、LMS プラグイン、エッジワーカーが再現可能になります。円形開口、二重スリットの縞間隔、刻線回折格子は別の検索意図のままです。
本ページは一般の干渉計ではなく、毛髪直径の逆解として扱ってください。
活用例
毛とレーザーの授業実験
測定した縞間隔、レーザー波長、スクリーン距離を毛の直径に逆変換し、バビネの原理を書く前に班が一つの基準を共有できるようにします。
宿題と自動採点
教科書の SI 長さから d = λL/Δy を求め、教員と LMS プラグインがミリメートル規模の同じ繊維を、波動光学ライブラリなしで採点できるようにします。
繊維とワイヤの光学確認
接触マイクロメータが使いにくい、または試料を変形させそうなとき、レーザー縞模様から細い繊維や線引きワイヤの直径を見積もります。
よくある質問
この毛髪回折計算機はどの公式を使いますか?
小角のバビネ/単スリット逆解 d = λL/Δy です。波長、スクリーン距離、縞間隔は同じ長さ単位である必要があります。返る毛髪直径もその単位です。
縞間隔が零または負のときはどうなりますか?
正ではない縞間隔では公式が零除算になるため、明確な検証エラーで拒否され、課金されません。
波長、スクリーン距離、縞間隔は同じ単位でなければなりませんか?
はい。 比 λL/Δy が長さになるのは、三つの入力が一つの単位を共有するときに限ります。三つともメートルにするか、三つともミリメートルにしてください。単位を混ぜると誤った直径になります。
なぜ毛はスリットのように回折しますか?
バビネの原理です。 不透明な障害物の遠方場回折包絡は、同じ輪郭の開口のものと一致します。直径 d の毛は幅 d のスリットとして扱い、測定した縞間隔から d を逆に解きます。
スクリーン上ではどの間隔を測ればよいですか?
隣り合う2本の暗い縞の間隔を測ります。明るい縞どうしでもかまいません。壁に当てたメートル尺などで測り、波長やスクリーン距離と同じ単位で入力してください。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/phys/hair-diffraction \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"wavelength":5e-7,"screen_distance":2,"fringe_spacing":0.01}'const res = await fetch("https://api.kit.forhosting.com/phys/hair-diffraction", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"wavelength": 5e-7,
"screen_distance": 2,
"fringe_spacing": 0.01
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/phys/hair-diffraction",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"wavelength": 5e-7,
"screen_distance": 2,
"fringe_spacing": 0.01
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/phys/hair-diffraction", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"wavelength":5e-7,"screen_distance":2,"fringe_spacing":0.01}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"wavelength":5e-7,"screen_distance":2,"fringe_spacing":0.01}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/phys/hair-diffraction", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"wavelength": 5e-7,
"screen_distance": 2,
"fringe_spacing": 0.01
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "phys.hair_diffraction",
"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 オブジェクトになります。
入力契約、応答の形、エラーの扱い
波長は厳密に正でなければなりません。スクリーン距離は厳密に正でなければなりません。縞間隔は厳密に零より大きくなければなりません。周期が零でも負でも、縞間隔が正ではないというメッセージで失敗し、一を delta y で割った特異点が有限直径に化けないという約束と一致します。実験ノートにマイクロメートルが必要なら、単位換算はご自身で組み合わせてください。必須の有限数三つを含む JSON 本体を POST してください。wavelength は任意の長さ単位のレーザー λ、screen_distance はその同じ単位での毛からスクリーンまでの長さ L、fringe_spacing は隣り合う暗縞または明縞の測定周期 Δy で、これも同じ単位です。各フィールドは JSON 数でも数値文字列でも構いません。波長の別名 lambda、laser_wavelength、wl、wave_length、台長の L、distance、D、screenDistance、縞周期の delta_y、spacing、dy、fringeSpacing、pattern_width を受け付けるので、教科書表記のノートは名前の変換層を必要としません。欠落フィールド、空文字、有限でない値は、フィールド名を付けた invalid_input で失敗します。成功時、本体は整形した wavelength、screen_distance、fringe_spacing をエコーし、同じ長さ単位の hair_diameter を報告し、実験スケッチの横に表示する公式文字列として d が lambda L を delta y で割ったものであることを含めます。本エンドポイントは単位系をでっち上げず、プロットも強度包絡も出しません。成功した API 呼び出しは公開の $0.002 が一件ごとに課金され、検証失敗は前払い残高を消費しません。
毛髪回折計算機が役立つ場面
本能力は純粋な parse エンジンですので、成功した呼び出しは毎回、公開されている基本料金 $0.002 で、モデルトークンも外向き通信もありません。リクエストは端から端まで一致した長さ単位のままにし、ナノメートルの波長とミリメートルの縞間隔は呼ぶ前に共有単位へ換算し、直径の値をテストに固定してください。
技術的な質問
この毛髪回折計算機の料金はいくらですか。
ブラウザの用具は無料で、お使いの環境で動きます。API 要求は成功一件あたり $0.002 の前払い KIT 残高を使い、無効な入力は課金されません。