レンズメーカーの式
屈折率1.5のレンズを空気中に置き、半径を0.1 mと-0.1 mにすると、焦点距離は0.1 mになります。レンズの材質、周りの媒質、2つの面の半径から薄レンズの焦点距離を求められます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- レンズのn
- 1.5
- 媒質のn
- 1
- R1
- 0.1
- R2
- -0.1
- 焦点距離
- 0.1
レンズメーカーの式は、薄レンズの焦点距離を、材料の屈折率、周囲媒質の屈折率、および二つの面の曲率半径から求めます。本機能はその閉形式を評価し、半径と同じ長さ単位の焦点距離を返します。宿題の確認、実験設計、光線追跡を開かずに透明な薄レンズ焦点距離が必要なパイプラインにお使いください。
レンズメーカーの式が前提とすること、適用できる場面
薄レンズのレンズメーカーの式は、入門光学で教えられる一次のモデルです。焦点距離はそのパワーの逆数です。曲率半径は、光が左から右へ進むデカルト符号規約に従います。
曲率中心が面の右側にあるとき半径は正です。面の半径ゼロはここでは平面としては受け付けません。実際の厚レンズには中心厚の追加項が必要です。
非球面、屈折率分布ガラス、多素子対物には光線追跡が必要です。本ツールは理想的な薄レンズの焦点距離だけを返すので、教科書の問題を確かめたり、設計の種を作ったり、詳細モデリングの前に基準を記録したりできます。
薄レンズの焦点距離が役立つ場面
物理・工学の授業では、宿題と実験準備の確認にこの計算を使います。単純な拡大鏡、LED コリメーター、スマートフォンカメラの単レンズ案をサイジングする製品チームは、本格的な光学設計パッケージを開く前に透明なパワー推定が必要です。とくに単レンズが窓の後ろや流体中にあり空気中ではない場合です。
計測グループは、測定した焦点距離を薄レンズの予測と比較し、誤ったガラス種、面の順序の反転、もはや薄くない構成を検出します。真の周囲屈折率を送ることがこのページの要点です。厚レンズソルバーでも、多素子の光線追跡でも、波長依存の分散でもありません。
それらは本契約を超える厚み・間隔・ガラスカタログの入力を必要とします。検証失敗は残高を消費しません。教室のセンチメートル半径を通常の SI の大きさに収め、丸めた焦点距離をテストに固定すれば、宿題、LMS プラグイン、エッジワーカー向けに、自前の光線追跡を立てずに再現可能な一次光学が得られます。
活用例
空気中または流体中の単レンズのパワー
カメラ、拡大鏡、液浸対物の初期サイジングで、空気・水・油中のガラスまたはプラスチック単レンズの収束または発散パワーを見積もります。
よくある質問
面の半径がゼロだとなぜ拒否されますか?
デカルト符号規約に従う、ゼロでない有限の半径を送ってください。
厚レンズや多素子系にも対応しますか?
いいえ。 本機能は標準の薄レンズ閉形式だけを返します。厚レンズには中心厚とより完全な式が必要です。多素子系には光線追跡またはメーカーの処方データが必要です。
レンズの半径の符号はどう決めますか?
光が左から右へ進むデカルト符号規約に従います。曲率中心が面の右側にあれば半径は正です。そのため、一般的な両凸レンズでは1つ目の半径が正、2つ目の半径が負になります。
ガラスやアクリル、水の屈折率はいくつを入れればよいですか?
クラウンガラスは約1.52、アクリルは約1.49です。周りの媒質は、空気と真空が1、水が約1.333です。レンズの屈折率は、媒質の屈折率と異なる値にしてください。
水中ではなぜレンズの焦点距離が長くなるのですか?
式がレンズと媒質の屈折率の比を使うためです。水の屈折率は約1.333で空気よりガラスに近く、比が小さくなるので屈折力が弱まり、焦点距離が長くなります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/phys/lensmakers-equation \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n_lens":1.5,"n_medium":1,"r1":0.1,"r2":-0.1}'const res = await fetch("https://api.kit.forhosting.com/phys/lensmakers-equation", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n_lens": 1.5,
"n_medium": 1,
"r1": 0.1,
"r2": -0.1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/phys/lensmakers-equation",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n_lens": 1.5,
"n_medium": 1,
"r1": 0.1,
"r2": -0.1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/phys/lensmakers-equation", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n_lens":1.5,"n_medium":1,"r1":0.1,"r2":-0.1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n_lens":1.5,"n_medium":1,"r1":0.1,"r2":-0.1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/phys/lensmakers-equation", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"n_lens": 1.5,
"n_medium": 1,
"r1": 0.1,
"r2": -0.1
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "phys.lensmakers_equation",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
同じ単レンズが水・油・その他の媒質にあるときは、その1が二つの屈折率の比に置き換わり、1/f=(n_lens/n_medium−1)×同じ曲率差になります。面の半径がちょうどゼロだとゼロ除算になるため、invalid_inputとして拒否します。
レンズメーカーの式が前提とすること、適用できる場面
厚さは曲率半径や物体・像の距離に比べて無視でき、両面は球面であり、周囲の媒質は屈折率 n_medium の均質な媒質です。この前提のもとで二つの面の光学的パワーは加算され、媒質中の合成パワーは n_lens を n_medium で割った値から1を引いたものに、面の曲率差を掛けた値になります。水中では n_medium は約 1.333 であり、空気中では強いガラスの単レンズでも、屈折率コントラストが縮むためずっと弱くなります。式がゼロ除算になるため、無限半径を捏造する代わりに invalid_input で失敗します。
入力契約、応答の形、エラーの扱い
両方の屈折率は厳密に正でなければなりません。平面規約ではなく硬い契約です。図面がミリメートルなら、呼び出す前にメートルへ換算してください。単位を混ぜると、形は正しいが意図した幾何には誤った数が得られます。POST で JSON 本体に、必須の有限な四つの数を送ってください。各フィールドは JSON の数値でも数値文字列でも構いません。欠落フィールド、空文字、非有限値はフィールド名付きの invalid_input で失敗し、課金されません。n_lens が n_medium と等しいと光学的パワーがゼロになり焦点距離が未定義になるため、これも invalid_input です。成功時は四つの入力をエコーし、半径と同じ長さ単位の focal_length を報告し、監査ログ用の formula 文字列を付けます。成功した解析呼び出しの価格は、item ごとに一律 $0.002 です。
薄レンズ焦点距離 API が実務で効く場面
学生は n_lens 1.5 付近のクラウンガラスを選び、空気または水を媒質に選び、対称な両凸半径を選び、光学ベンチで研磨や測定をする前に f が期待値と一致することを確かめます。水中撮像、油浸顕微鏡対物、屈折率整合浴は、n_medium が1ではなく空気専用の式が嘘をつく場面です。成功した各呼び出しは $0.002 の単一の解析 item なので、スクリプトは購読やモデルコストなしに半径系列や屈折率表を掃引できます。明示的な周囲媒質つきの、安定して見直せる閉形式が欲しいときはこのエンドポイントをお選びください。
連携の活用例
宿題と実験の期待焦点距離
学生が光学ベンチで焦点距離を測って誤差率を報告する前に、n_lens、n_medium、R1、R2 から理想的な薄レンズの f を計算します。
設計スクリプトでのパラメータ掃引
半径の組と屈折率の表に対して API を一括呼び出しし、表計算や不透明なデスクトップ計算機なしに焦点距離の図表を作ります。
技術的な質問
レンズメーカーの式の計算はどの式を使いますか。
一般化した薄レンズの形 1/f = (n_lens/n_medium − 1)(1/R1 − 1/R2) です。n_medium が1のときは空気中のおなじみの式です。応答は半径と同じ長さ単位で focal_length を報告します。
R1 と R2 はどの符号規約ですか。
光が左から右へ進むデカルト規約です。曲率中心が面の右側にあるとき半径は正です。典型的な両凸レンズは R1 > 0、R2 < 0 です。
API 呼び出し一回の料金はいくらですか。
成功したリクエストごとに $0.002 です。上のブラウザツールはローカルで無料です。API はタスクが成功したときだけ、前払いの KIT 残高から引きます。