月較差計算機
最高気温の月平均が4~29 °C、最低気温が−3~17 °Cの温帯の12か月なら、月較差は7~12度、年平均は10度弱です。観測地点や年代を同じ尺度で比べられます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
月較差は、ある月の平均最高気温とその月の平均最低気温の差です。気候学者、農学者、建築エネルギー分析者は、その月ごとの幅と、それらの月較差を一年にわたって算術平均した値を、大陸度・雲量・放射冷却のコンパクトな指標として用います。海洋性の観測所は夜が穏やかで日中も穏やかなため月較差は小さく保たれ、乾燥した内陸では振れが大きく同じ統計が開きます。この月較差計算機は、月平均最高と月平均最低の二つの並列配列を受け取り、各月の振幅を最高マイナス最低として計算し、年平均振幅をそれらの月値の平均として返します。
月較差が測るものと年平均値の求め方
月較差は気候ノーマルの標準統計であり、ある一日の天気ではありません。各暦月について、その月の日最高気温の平均とその月の日最低気温の平均を取り、差し引きます。結果はその月の典型的な昼夜の包絡で、すでに月平均に入った日にわたって平均済みです。
年平均振幅は、それらの月ごとの包絡の算術平均です。この二段階の組み立ては、気候年鑑、大陸度の議論、多くの農業的な熱ストレス覚え書きが気温振幅を報告する方法です。特定日の日較差とは検索意図が異なります。
日次系列は昨日どれだけ振れたかを答え、月較差系列は一月・七月・そして年平均で典型的な日次包絡がどれほど広いかを答えます。海洋性・曇天・多湿の気候は月較差を圧縮し、乾燥・高標高・強い大陸性の気候はそれを開きます。二つの観測所、あるいは同じ観測所の数十年を、月平均最高と月平均最低を同じ恒等式に入れて比較できます。
本計算機は単位換算も欠測月の穴埋めもせず、十一か月送ったときに十三番目の値を捏造することもありません。評価するのは A_i が Tmax_mean_i マイナス Tmin_mean_i であることと、それらの A_i の平均だけです。すべての値を同じ単位(運用気候ではほぼ常にセ氏)に保ち、二つの配列を月ごとに揃えてください。
そうすれば年平均は無関係な季節の混在ではなく、対になった包絡の真の平均になります。
月較差が役立つ場面
気候ダッシュボードでは平均気温や降水量合計の横に月較差列がよく必要です。農業・フェノロジーモデルは、完全な放射データが欠けているとき、月較差の年平均を大陸度や雲量の代理指標として使います。建築エネルギーと快適性の研究は、沿岸と内陸の地点間で月ごとの包絡を比較し、夜間換気や暖房戦略の規模を決めます。
授業ラボや試験ジェネレータには、余った値を黙って平均する代わりに、長さの合わない月次配列を拒否する決定論的オラクルが必要です。歴史的な月次気候ノーマルを再処理する研究ノートは、完全な気候ツールキットを立てずに多くの観測所の年平均振幅を一括評価できます。
二つの月次配列を同じ長さに保ち、各月の平均最高を平均最低以上に保ち、テストで丸めた年平均を固定すれば、気象ライブラリを全クライアントに配らずとも、教材・文書・エッジワーカー向けに再現可能な月較差統計が得られます。
活用例
気候ノーマルと観測所ダッシュボード
月平均の Tmax と Tmin アーカイブから各月の気温振幅と年平均値を計算し、気候ノーマル表や大陸度パネルに使います。
農業・建築と地点比較
沿岸と内陸の地点間で月ごとの包絡とその年平均を、湿度・雲量・夜間冷却の簡易プロキシとして比較します。
よくある質問
月次配列の長さが異なるとどうなりますか?
最高系列が最低系列より長い、または短い場合は月ごとに対にできず、課金されません。
これは日較差と同じですか?
いいえ。 日較差は一日の最高マイナス最低です。本計算機は月平均最高と月平均最低を使い、それらの月較差を系列全体で平均します。
年平均の月較差はどう計算しますか?
各月の平均最高気温から平均最低気温を引き、その結果を平均します。温帯の例では月較差が7~12で合計119なので、年平均は119÷12で10度弱になります。
月較差が大きい気候には何が言えますか?
乾燥した土地、標高の高い土地、内陸性の強い土地を示し、昼は大きく暖まり夜は強く冷えます。海洋性で曇りがちな湿った気候では月較差が小さいため、大陸度の簡単な目安になります。
どの温度単位を使えばよいですか?
最高と最低を同じ単位にそろえれば、どの単位でも構いません。気候の実務ではほぼ摂氏が使われます。単位の換算は行わず、結果も入力と同じ単位で表示されます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/earth/thermal-amplitude-series \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"t_max_mean":[4,6,11,16,21,26,29,28,23,17,10,5],"t_min_mean":[-3,-2,1,5,10,14,17,16,12,7,2,-2]}'const res = await fetch("https://api.kit.forhosting.com/earth/thermal-amplitude-series", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"t_max_mean": [
4,
6,
11,
16,
21,
26,
29,
28,
23,
17,
10,
5
],
"t_min_mean": [
-3,
-2,
1,
5,
10,
14,
17,
16,
12,
7,
2,
-2
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/earth/thermal-amplitude-series",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"t_max_mean": [
4,
6,
11,
16,
21,
26,
29,
28,
23,
17,
10,
5
],
"t_min_mean": [
-3,
-2,
1,
5,
10,
14,
17,
16,
12,
7,
2,
-2
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/earth/thermal-amplitude-series", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"t_max_mean":[4,6,11,16,21,26,29,28,23,17,10,5],"t_min_mean":[-3,-2,1,5,10,14,17,16,12,7,2,-2]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"t_max_mean":[4,6,11,16,21,26,29,28,23,17,10,5],"t_min_mean":[-3,-2,1,5,10,14,17,16,12,7,2,-2]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/earth/thermal-amplitude-series", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"t_max_mean": [
4,
6,
11,
16,
21,
26,
29,
28,
23,
17,
10,
5
],
"t_min_mean": [
-3,
-2,
1,
5,
10,
14,
17,
16,
12,
7,
2,
-2
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "earth.thermal_amplitude_series",
"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 で失敗し、パイプラインが一月の最高を二月の最低と対にしないようにします。
入力契約、応答の形、エラー時の挙動
少なくとも1か月、最大120か月まで受け付けるため、十年分の月次気候ノーマルを一回の呼び出しで評価できます。有限小数として解釈できる数値文字列は変換されます。代表的な失敗は長さの不一致です。いずれかの月の平均最高が対応する平均最低を厳密に下回る場合も拒否し、無意味な負の振幅が年平均に入らないようにします。例:最高が四・六・十一・十六・二十一・二十六・二十九・二十八・二十三・十七・十・五、最低がマイナス三・マイナス二・一・五・十・十四・十七・十六・十二・七・二・マイナス二の温帯十二か月では、月較差は七から十二、年平均は百十九の十二分の一になります。同じ長さの必須配列を二つ持つ JSON 本体を POST します。t_max_mean は順序付きの月平均最高、t_min_mean は順序付きの月平均最低です。各フィールドでは最高に tmax_mean、max_mean、monthly_max、最低に tmin_mean、min_mean、monthly_min などの一般的な別名も使えますが、正規名は t_max_mean と t_min_mean のままです。配列欠落、配列でない値、空系列、非有限の項目、100万を超える絶対値は invalid_input で失敗し問題を明示します。t_max_mean が三値で t_min_mean が二値なら、ハンドラは配列が同じ長さでなければならないと両方の件数を示してリクエスト全体を拒否します。成功時の本体には month_count、月較差の算術平均 annual_average_amplitude、sum_amplitude、系列の min_amplitude と max_amplitude、unit temperature_degrees、表示用の formula と equation、1始まりの月番号と丸めた t_max_mean・t_min_mean・amplitude を返す monthly 配列、教材向け steps が含まれます。検証失敗は課金されず、成功した解析呼び出しはモデルトークンも外向き通信もなく公開の基本料金 $0.002 を使います。
月較差系列 API が役立つ場面
小さな parse エンドポイントを呼べば、観測所フィードに触れる各言語に範囲ロジックを埋め込まずに済みます。実装が純粋 parse の tier A であるため、成功呼び出しは毎回 $0.002 で、AI 遅延はありません。
連携の活用例
教育と品質保証オラクル
学習者に決定論的な月較差照合を提供し、二つの月次配列の長さが異なる依頼は invalid_input として拒否します。
技術的な質問
月較差と年平均値はどのように計算しますか?
同じ長さの二つの配列として t_max_mean と t_min_mean を送ってください。各月 A = t_max_mean − t_min_mean であり、API はそれらの月較差と算術平均 annual_average_amplitude を返します。
どの温度単位を使うべきですか?
両方の配列のすべての値に同じ単位を使ってください。通常は °C です。計算機は単位を変換せず、ご提供の単位のまま temperature_degrees として振幅を報告します。
月較差計算機の料金はいくらですか?
ブラウザツールは無料です。API リクエストは成功呼び出しあたり $0.002 の前払い残高を使い、無効入力は課金されません。