空気密度計算機|気圧・気温・湿度から kg/m³ を計算
1013.25 hPa、15 °C、相対湿度60 %の空気は1立方メートルあたり1.220312 kgで、教科書にある乾燥空気の1.225より少し軽くなります。気圧、気温、湿度を入力すると、その条件での密度が分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 気圧 (hPa)
- 1,013.25
- 温度 (°C)
- 15
- 相対湿度 (%)
- 60
- 密度 (kg/m3)
- 1.220312
- 乾燥空気の圧力 (hPa)
- 1,003.039968
- 水蒸気圧 (hPa)
- 10.210032
この空気密度計算ツールは、気象ステーションが報告する3つの値——大気圧、気温、相対湿度——から、空気1立方メートルが実際にどれだけの重さを持つかを kg/m³ で返します。湿り空気を乾燥空気と水蒸気の理想混合気としてモデル化しているため、多くの方が見落としがちな効果、つまり同じ気圧・気温では湿った空気のほうが乾いた空気より軽いという点も正確に反映されます。パイロット、空調(HVAC)技術者、弾道学の愛好家、ファンやドローンの選定を行う方にとって欠かせない数値です。
空気密度が定数ではない理由
教科書には 1.225 kg/m³ という値がまるで地球固有の性質のように記されていますが、この数字が成り立つのは海面高度、15 °C、乾燥空気の条件だけです。実際の空気は3つの独立した方向でこの値から外れていき、この計算ツールはそのすべてを考慮します。気圧は支配的な要素で、密度は気圧に正比例します。
そのため、気圧がおよそ 850 hPa のデンバーでは、気温が同じでも空気は海面より約16パーセント薄くなります。気温は理想気体の法則を通じて逆方向に働きます。暖かい空気は膨張するため、1立方メートルあたりの分子数が減り、密度は低下します。
湿度は少し複雑です。 水蒸気分子(モル質量約 18 g/mol)は、置き換える窒素や酸素(約 29 g/mol)より軽いため、気圧と気温が一定なら、湿った空気は乾いた空気よりも測定可能なほど密度が低くなります。
したがって、高温多湿の夏の日は、高度だけから想像される以上に航空機の性能に悪影響を与えることがあり、密度高度という概念が存在するのはまさにこのためです。実際に観測した気圧、温度計の読み、湿度計の値をこのツールに入力すれば、海面での理想化された値ではなく、お客様の条件にとって本当に意味のある数値が得られます。
計算の仕組み
この計算ツールは、湿り空気を乾燥空気と水蒸気という2つの気体の理想混合気として扱います。まず、入力された相対湿度と気温から、マグヌス式と呼ばれる経験式を使って飽和水蒸気圧を推定します。この式は通常の気象条件では誤差が1パーセント未満の精度を持ちます。
これに相対湿度を掛けると、空気中の水蒸気の実際の分圧が得られます。全圧からそれを引いた値が乾燥空気の分圧であり、ドルトンの法則により、2つの成分は混合気の質量に独立して寄与します。各成分はそれぞれ固有の気体定数を用いて理想気体の法則に従います。
乾燥空気は 287.058 J/(kg·K)、水蒸気は 461.495 J/(kg·K) で、温度はケルビンに換算します。2つの密度を足し合わせたものが kg/m³ 単位の総密度となり、再現性のため小数点以下6桁に丸められます。結果は決定的で、同じ3つの入力からは常に同じ出力が得られます。
参照表やネットワーク通信、隠れた高度モデルは一切ありません。実測された気圧をご入力いただくため、お客様が浜辺にいるのか山の上にいるのかをツールが推測する必要はないのです。
結果の読み方とよくある落とし穴
密度そのものに加えて、応答には導出された2つの分圧——乾燥空気成分と水蒸気成分——も含まれるため、物理的な妥当性を確認したり、さらなる計算に再利用したりできます。最も多い入力ミスは気圧です。多くの気圧計やスマートフォンアプリは観測地点の気圧ではなく海面補正気圧を表示しますが、標高のある場所で補正値を使うと密度を過大評価してしまいます。
情報源が海面気圧を報告している場合は、まず観測地点の気圧に換算し直すか、現地の気圧計で測定してください。気温は日陰の空気温度でなければならず、地表面や直射日光下の値ではいけません。相対湿度も同じ場所・同じ時刻の値を使ってください。
このツールは、密度が物理的に定義できないため、0以下の気圧を明確に拒否し、0〜100パーセントの範囲外の湿度も拒否します。非常に高い気温と飽和に近い湿度が組み合わさると、水蒸気圧が全圧に近づくことがあります。その場合も計算ツールは意味のない数値を返すのではなく、正直に処理を拒否します。
典型的な結果は、高温多湿の高地で約 0.9 kg/m³ から、寒冷で乾燥した海面高度の空気で約 1.4 kg/m³ までの範囲です。
活用例
航空における密度高度の確認
飛行前に、今日の滑走路で空気がどれほど薄いかを推定し、離陸滑走距離、上昇率、エンジン出力を判断します。
空調設備とファンの選定
海面高度の定数ではなく、ダクト内の実際の空気密度を使って、体積流量を質量流量に換算します。
弾道計算とドローンの調整
実際の空気密度を抗力モデルに入力し、弾道やバッテリー持続時間の予測を、標準大気ではなく屋外の実条件に一致させます。
よくある質問
使用する単位は何ですか?
気圧はヘクトパスカル(hPa、数値はミリバールと同じ)、気温は摂氏度、相対湿度はパーセントです。密度は kg/m³ で返されます。
なぜ湿った空気は乾いた空気より密度が低いのですか?
気圧が一定の場合、軽い水蒸気分子が重い窒素・酸素分子を押しのけるため、同じ体積に含まれる総質量が小さくなります。この計算ツールは、混合気の各成分に別々の気体定数を適用することで、この効果を正確に捉えています。
海面気圧と観測地点の気圧、どちらを入力すべきですか?
観測地点の気圧、つまりその場所で実際に測定された気圧を入力してください。気象情報の海面補正気圧を使うと、標高のある場所では密度を過大評価してしまいます。
結果の精度はどのくらいですか?
通常の気象条件では、マグヌス式による飽和水蒸気圧を用いた理想混合気モデルは、完全な湿度学の参照値と比較して誤差1パーセントを大きく下回る精度で一致します。
教科書の1.225 kg/m³と結果が違うのはなぜですか?
1.225 kg/m³は海面、15 °C、乾燥空気という条件でだけ成り立つ値だからです。実際の空気は気圧、気温、湿度によって密度が変わるため、その場の値を入力すると結果も変わります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/phys/air-density \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"pressure_hpa":1013.25}'const res = await fetch("https://api.kit.forhosting.com/phys/air-density", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"pressure_hpa": 1013.25
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/phys/air-density",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"pressure_hpa": 1013.25
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/phys/air-density", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"pressure_hpa":1013.25}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"pressure_hpa":1013.25}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/phys/air-density", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"pressure_hpa": 1013.25
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "phys.air_density",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
同じコードがこのページ上で無料で動作し、API では1回につき $0.002 で応答します。
技術的な質問
料金はいくらですか?
API 呼び出し1回につき $0.002 です。同じ計算は、このページ上でブラウザから無料で実行できます。
気圧がゼロまたは負の場合はどうなりますか?
正の気圧なしには空気密度は物理的に意味を持たないため、リクエストは invalid_input エラーで拒否され、課金もされません。