ボイルの法則計算機
温度一定で気体を圧縮・膨張させたときの新しい圧力を求めます。3リットルで2 atmの気体は、体積を1.5リットルにすると4 atmです。体積が半分なら圧力は2倍になります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- P1
- 2
- V1
- 3
- V2
- 1.5
- P2
- 4
- 比
- 2
- 法則
- boyle
- 条件
- constant temperature and amount of substance
この最終圧力計算機は、温度と気体の量が一定のとき、初期の圧力と体積、そして新しい体積から期待される圧力を求めます。
ボイルの法則が示す圧力と体積の関係
ボイルの法則は、一定量の理想気体について温度が一定なら圧力と体積は反比例し、P×Vの積が一定になると述べています。記号では P1×V1 = P2×V2 なので、最終圧力は P2 = P1×(V1/V2) です。温度を保ったまま気体を元の体積の半分に圧縮すれば圧力は2倍になり、体積を3倍に広げれば圧力は3分の1に下がります。
この法則は理想気体の法則群のP-Vの枝で、ほかにシャルル(n、P一定のV-T)、ゲイ=リュサック(n、V一定のP-T)、アボガドロ(T、P一定のV-n)があります。教師や自動採点が重視するのは正常系と同じくらいV2がゼロの拒否です。最終体積をゼロにした時点で比の定義域を外れており、無限大の圧力をでっち上げればその誤りが隠れてしまいます。
圧力と体積の単位は呼び出し側が一貫して選びます。圧力は気圧、パスカル、バール、torr、体積はリットル、立方メートル、ミリリットルのいずれでも、P1とP2が同じ圧力単位、V1とV2が同じ体積単位を共有する限り使えます。
実用的なヒント、制限、関連する検索
P1×V1/V2の積がソルバーが拒否せざるを得ない非有限の最終圧力にオーバーフローしないよう、入力は公開された絶対範囲内に保ってください。クライアントを制御できる場合は、整形済み文字列より数値を送るのがおすすめです。数値文字列は厳密な有限数パターンに一致する場合のみ受理されます。
浮動小数点のキャンセレーション後にほぼゼロになった最終体積はゼロに分類され拒否されるため、ノイズが巨大な圧力を捏造しません。指導では例を組み合わせてください。P1が2気圧、V1が3リットル、V2が1.5リットルならP2は4気圧です。
理想気体の PV = nRT を解く完全なソルバーでも、シャルルやゲイ=リュサックの温度ツールでも、圧力の単位換算でもありません。温度とモルが本当に一定で体積だけが変わるときにこの機能を選び、Tやnも動くなら理想気体または組み合わせ気体法則のツールを使ってください。往復チェックは簡単です。
手計算でP1×V1÷V2を再計算し、同じ小数点以下12桁の丸め内で公開のp2と一致すること、V1固定でV2を半分にするとp2が2倍になることを確認してください。
活用例
P ∝ 1/V の問題の宿題チェック
学生は教科書のP1、V1、V2を入力し、提出前に手計算の最終圧力と体積比を決定論的な結果と比較します。
T一定での注射器とピストンの推定
密閉した気体試料を浴の温度や気体の量を変えずに圧縮・膨張させたときの圧力を、実験ノートで推定します。
気体法則ヘルパーの単体テスト
既知の正しいP2ケースと、意図的なV2=ゼロの拒否を生成し、コーディング課題の期待値やCIフィクスチャに使います。
よくある質問
ボイルの法則とは何ですか?
温度と気体の量が一定のとき、圧力と体積は反比例します。P1·V1 = P2·V2 なので、P2 = P1·(V1/V2) です。
温度やモルを入力する必要がありますか?
いいえ。 ボイルの法則はTとnが一定であることを前提とするため、必要なのはP1、V1、V2だけです。
理想気体の法則と同じですか?
いいえ。 理想気体の法則は PV = nRT を任意の変数について解きます。この計算機はTとnが一定のときのボイルの逆P-V関係だけを適用します。
体積を3倍にすると圧力はどうなりますか?
最初の値の3分の1に下がります。温度一定では圧力と体積は反比例するため、ツールは最初の圧力に元の体積と新しい体積の比を掛けて求めます。
barやtorrを使えますか?
使えます。最初と最後の圧力が同じ単位なら、atm、Pa、bar、torrのどれでもかまいません。体積もリットル、立方メートル、ミリリットルで同様です。結果はP1と同じ単位で表示されます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/chem/boyle-final-pressure \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"p1":2,"v1":3,"v2":1.5}'const res = await fetch("https://api.kit.forhosting.com/chem/boyle-final-pressure", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"p1": 2,
"v1": 3,
"v2": 1.5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/chem/boyle-final-pressure",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"p1": 2,
"v1": 3,
"v2": 1.5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/chem/boyle-final-pressure", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"p1":2,"v1":3,"v2":1.5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"p1":2,"v1":3,"v2":1.5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/chem/boyle-final-pressure", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"p1": 2,
"v1": 3,
"v2": 1.5
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "chem.boyle_final_pressure",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_abs | 1000000000000 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
P1、V1、V2を入力すると、P2 = P1×V1/V2、体積比、わかりやすい式、代入の手順が返り、宿題の確認、レポート、テストで同じ決定論的なJSONが得られます。最終体積がゼロの場合、比は定義されないため、APIは無限大や意味のない圧力ではなく invalid_input を返します。ネットワークや乱数、時計に依存しない純粋な決定論的計算なので、無料のブラウザ実行とプリペイドAPIは、固定の小数丸めの後、毎回同じ結果を返します。
ボイルの法則が示す圧力と体積の関係
検証は公開フィールドと同じ固定の小数点以下12桁の丸めで比と積を再計算するため、成功した応答にはテストやワークシートで検証できる手順が必ず含まれます。
APIの呼び出し方と返ってくる内容
初期圧力p1と初期体積v1は厳密に正、最終体積v2は厳密に正でゼロ以外でなければなりません。絶対値が1×10のマイナス15乗以下の値はゼロとして扱われ拒否されます。必須の有限数を3つ含むJSONボディを送信します。p1(別名 P1、pressure1、initial_pressure、p_initial)、v1(別名 V1、volume1、initial_volume、v_initial)、v2(別名 V2、volume2、final_volume、v_final)です。中間の積がWorkerとブラウザのIEEE倍精度で有限にとどまるよう、絶対値は公開されている1兆の上限内に収める必要があります。成功時、応答は丸めたp1、v1、v2を返し、p2に計算された最終圧力、ratioにV1/V2、formulaにP2 = P1×V1/V2という文字列、lawにboyle、conditionsに温度と物質量が一定という条件、unit_pressureとunit_volumeに短い単位のヒント、messageに短い要約、stepsに代入行の順序付き配列を設定します。検証失敗(必須項目の欠落、非有限数、絶対値の範囲外、非正の圧力や初期体積、ゼロまたは負の最終体積)は invalid_input を返し、課金されません。料金は成功リクエストごとに $0.002 の定額で、単位項目と限界単価ゼロです。
実用的なヒント、制限、関連する検索
等しい体積なら圧力は変わらず、V2がゼロならゼロ除算を守る invalid_input の厳格な経路を示せます。このページは、ボイルの法則計算機、体積変化からの最終圧力、P1V1 = P2V2のオンライン計算を探す人向けです。invalid_input を返す失敗タスクはプリペイド残高を消費しないため、学習者がV2を意図的にゼロにしても探索スクリプトは安く済みます。
技術的な質問
最終体積V2がゼロの場合はどうなりますか?
比は定義されません。このツールは無限大や意味のない圧力を計算する代わりに invalid_input を返します。
ボイルの法則計算機は無料ですか?
ブラウザのツールは無料でローカルで動作します。API呼び出しは成功リクエストごとに $0.002 のプリペイドKIT残高を使い、失敗したタスクには課金されません。