等級差から明るさの比を計算
この計算ツールは、2つの天体の等級差を見かけの明るさの直接的な比へ変換します。入力した等級差を指数として 2.512 を累乗し、ポグソンの関係を適用します。最初の天体がその等級差だけ明るい場合は正の値を入力してください。結果は何倍明るいかを示します。負の値では1未満の比となり、比較の向きが逆であることを表します。星、惑星、彗星、超新星など、天文等級で測る対象に利用できる決定論的な計算です。
無料で実行
対数の等級差を分かりやすい明るさの比にします
天文等級は非常に広い明るさの範囲を扱いやすい数値に圧縮しますが、等級差だけでは「2倍」や「100倍」といった直感的な比較になりません。本ツールは、その差を比へ変換します。等級差を入力すると、その値を指数とする 2.512 の累乗を返します。差が0なら比は1で、明るさが等しいことを意味します。差が1増えるたびに比は 2.512 倍され、5等級では約100になります。比較の向きも重要です。AがBより明るい差を正として入力した場合、結果はBに対するAの明るさです。符号を逆にすると、1未満の逆数になります。数値の小さい等級ほど明るいという尺度の性質による取り違えを避けるため、符号の定義を明確にしてください。出力には比だけでなく、使用した等級差とポグソン係数も表示されるため、計算の確認、記録、再現が容易です。
ポグソンの明るさの関係を適用する方法
現在の天文等級は対数尺度です。本ツールでは、指定された近似式に従い、明るさの比を 2.512 の等級差乗として求めます。この累乗計算により、等しい等級間隔は加算的ではなく乗算的な明るさの変化になります。2等級の差は2倍という意味ではなく、1等級分の係数を2回適用するという意味です。0.5 のような小数の差も有効で、1等級分の係数の平方根に相当します。入力には数値のほか、符号や小数を含む数値形式の文字列も使えます。空欄、数値ではない語、無限大、有限数として表せない値は、誤解を招く結果を防ぐため拒否されます。比は有効数字15桁に丸められ、実用的な精度を保ちながら、ブラウザーと API の双方で決定論的な JSON を返します。係数には指定どおり 2.512 を用いるため、この丸めたポグソン係数を採用する教材や計算とも一致します。
差の向きを決めて結果を正しく読み取ります
まず、明るさの比較でどちらの天体を分子にするか決めてください。明るい天体ほど等級の数値が小さいため、暗い天体の等級から明るい天体の等級を引くと、扱いやすい正の差になります。その差を入力すれば、明るい天体が何倍明るいかを得られます。たとえば等級が 3 と 8 なら、差は 8 から 3 を引いた 5 で、比は約100です。情報源が符号付きの差をすでに示している場合はそのまま入力し、1未満の結果を逆向きの比較として解釈してください。本ツールは等級が示す明るさを比較しますが、固有光度、距離、減光、ボロメトリック補正、検出器応答、不確かさの伝播は計算しません。観測上の明るさではなく固有の放射能力を調べる場合は、これらも考慮する必要があります。観測記録、授業、カタログ確認、データ処理にご利用ください。自動処理は1回 $0.002 で、同じ決定論的な計算をブラウザー内ではローカルに実行できます。
活用例
2つの星を比較します
カタログにある2つの等級の差から、一方の星が何倍明るく見えるかを直接求めます。
等級尺度を説明します
同じ等級間隔が乗算的な変化となり、5等級の差が約100倍になる理由を示します。
天文データ処理を標準化します
保存された等級差を、報告、比較、後続計算に使える決定論的な明るさの比へ変換します。
よくある質問
どの式を使用しますか?
明るさの比を、2.512 の等級差乗として計算します。
5等級の差が約100倍になるのはなぜですか?
ポグソン係数を5回適用した 2.512^5 が、およそ 100 になるためです。
等級差に負の値を使えますか?
はい。負の差では1未満の比となり、明るさの比較が逆向きであることを表します。
小数の等級差も入力できますか?
はい。0.5 や 1.37 など、有限の小数値をそのまま変換できます。
入力が数値でない場合はどうなりますか?
未入力、空欄、数値以外、または有限でない値には、無効な入力のエラーを返します。
API の計算料金はいくらですか?
API は1回 $0.002 です。ブラウザー内のローカル計算は無料で利用できます。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/astro/magnitude-diff-to-ratio \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"magnitude_difference":5}'const res = await fetch("https://api.kit.forhosting.com/astro/magnitude-diff-to-ratio", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"magnitude_difference": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/astro/magnitude-diff-to-ratio",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"magnitude_difference": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/astro/magnitude-diff-to-ratio", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"magnitude_difference":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"magnitude_difference":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/astro/magnitude-diff-to-ratio", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"magnitude_difference": 5
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "astro.magnitude_diff_to_ratio",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |