過剰反応物の残量計算
過剰な反応物の残りの質量が分かります。窒素28 gと水素10 gでアンモニアをつくると、窒素はすべて使われ、水素が4 g反応せずに残ります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 質量 a
- 28
- 質量 b
- 10
- モル質量 a
- 28
- モル質量 b
- 2
- 係数 a
- 1
- 係数 b
- 3
- モル a
- 1
- モル b
- 5
- 進行度 a
- 1
- 進行度 b
- 1.6666666667
釣り合った化学反応式では、反応物が厳密な化学量論比で混ぜられることはまれで、一方が先に使い切られ、他方が過剰として残ります。この過剰反応物残量計算機は、各質量をモル質量でモルに換え、係数で割って利用可能な反応進行度を求め、小さい方を実際の進行とし、過剰種の未使用モルにモル質量を掛けてグラム単位の残り質量を報告します。
過剰の残り質量の求め方
反応物Aの化学量論係数をν_A、反応物Bをν_Bとする釣り合った反応から始めます。各反応物の利用可能質量をグラム、各種のモル質量をグラム毎モルで与えます。質量をモルへは n_A が mass_A を M_A で割ったもの、n_B が mass_B を M_B で割ったものとして変換します。
各反応物が支えうる理論進行度は、進行度ξ_A が n_A を ν_A で割ったもの、ξ_B が n_B を ν_B で割ったものです。実際の反応進行度は両者の最小値で、先に尽きる方が制限反応物、もう一方が過剰反応物です。
消費される過剰のモルは ν_過剰 に反応進行度を掛けたもの、残りモルは過剰の初期モルから消費モルを引いたもの、残り質量は残りモルに過剰のモル質量を掛けたものです。二つの進行度が数値的に等しいとき混合物は化学量論的で、両方とも完全に消費され残り質量はゼロです。質量は非負、モル質量は厳密に正でなければなりません。
過剰残量計算が実務で現れる場面
高校・大学の一般化学では、過剰が何グラム残るかで終わる制限反応物ドリルが常に出され、進行度とラベル付きで残り質量を返す信頼できる判定は採点とデモ準備を速めます。バッチ仕込みを決めるプロセス化学者は高価試薬を使い切り、安価な共反応物の残り質量を知りスクラバや後処理の過剰設計を避けます。
環境・燃焼問題は燃料の完全燃焼後に酸素がどれだけ残るかを問い、空気を反応物Bとした同じ最小進行度の構成です。面接のウォームアップやプログラミング競技のフィクスチャは二質量の化学量論を混合文章題に隠し、係数ゼロでは静かな NaN ではなく硬い拒否が必要です。
のちに単一反応物からのモル比による生成モル、グラムからモルへの変換のみ、多生成物収率表だけが必要なら、本過剰反応物残量ページを過負荷にせず別の検索意図とランディングとして扱ってください。
活用例
宿題・試験の解答キー
教科書の二反応物セットについて過剰の残り質量、制限ラベル、進行度を生成し、教員と自動採点が同一の基準答えを共有できるようにします。
実験仕込みとバッチ設計
どの試薬が残り何グラム残るかを確認し、後処理・洗浄・廃棄物見積もりが計画仕込みと一致するようにします。
よくある質問
係数がゼロだとどうなりますか?
制限反応物判定は各係数で割るため、ゼロ係数は無効で Infinity や NaN を生みません。
反応物が厳密な化学量論比の場合は?
両方の進行度が一致し、制限と過剰は neither と報告され、両方とも完全消費のため残り質量はゼロです。
どの単位を使うべきですか?
質量はグラム (g)、モル質量は g/mol、係数は無次元の釣り合い係数です。残り質量はグラムで返ります。
どちらが制限反応物かはどう決まりますか?
それぞれの質量をモル数に直し、反応物の係数で割ります。小さいほうが制限反応物です。アンモニアの例では窒素が1、水素が5を3で割った値なので、窒素が先になくなります。
燃料が完全に燃えたあと酸素はどれだけ残りますか?
燃料を一方の反応物、酸素をもう一方として、それぞれの質量、モル質量、係数を入力します。同じ方法で計算され、燃焼後に残る酸素の質量が表示されます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/chem/excess-reactant-remaining \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"mass_a":28,"mass_b":10,"molar_mass_a":28,"molar_mass_b":2,"coefficient_a":1,"coefficient_b":3}'const res = await fetch("https://api.kit.forhosting.com/chem/excess-reactant-remaining", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"mass_a": 28,
"mass_b": 10,
"molar_mass_a": 28,
"molar_mass_b": 2,
"coefficient_a": 1,
"coefficient_b": 3
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/chem/excess-reactant-remaining",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"mass_a": 28,
"mass_b": 10,
"molar_mass_a": 28,
"molar_mass_b": 2,
"coefficient_a": 1,
"coefficient_b": 3
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/chem/excess-reactant-remaining", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"mass_a":28,"mass_b":10,"molar_mass_a":28,"molar_mass_b":2,"coefficient_a":1,"coefficient_b":3}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"mass_a":28,"mass_b":10,"molar_mass_a":28,"molar_mass_b":2,"coefficient_a":1,"coefficient_b":3}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/chem/excess-reactant-remaining", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"mass_a": 28,
"mass_b": 10,
"molar_mass_a": 28,
"molar_mass_b": 2,
"coefficient_a": 1,
"coefficient_b": 3
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "chem.excess_reactant_remaining",
"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 で拒否する決定的な判定が必要です。無料のブラウザツールと有料APIは同一の純関数を共有し、教室デモとスクリプトが同じ数値で食い違うことはありません。
過剰の残り質量の求め方
進行度比は各係数で割るため係数は非ゼロでなければならず、ゼロ係数は Infinity や NaN を出さず invalid_input で拒否されます。パイプライン全体は乱数種・壁時計・ネットワーク呼び出しのない決定的浮動小数演算であり、同一入力は常に同一の JSON を返します。
送る内容と返る内容
教科書の定番は係数一と三の窒素と水素によるアンモニア合成、整数モル質量の燃焼や中和の対です。宿題や素早い確認には無料ブラウザフォームを、大量解答キーや回帰フィクスチャには同一契約をスクリプトから呼び出します。数値フィールドを六つ送ります。mass_a と mass_b は反応物A・Bの利用可能質量(グラム)で有限かつ非負、molar_mass_a と molar_mass_b はモル質量(グラム毎モル)で有限かつ厳密に正、coefficient_a と coefficient_b は釣り合った係数で有限かつ非ゼロです。欠落フィールド、非数値文字列、NaN、Infinity、負の質量、非正のモル質量、ゼロ係数は invalid_input で失敗し課金されません。成功時は整形入力、計算された moles_a と moles_b、反応物ごとの extent_a と extent_b、実際の reaction_extent、化学量論時は neither となる limiting_reactant と excess_reactant のラベル、各種の消費モル、過剰の leftover_moles、グラムの leftover_mass を返します。成功した API 呼び出しの料金は公開基準の $0.002 毎件で、検証失敗は前払い残高を消費しません。
過剰残量計算が実務で現れる場面
本機能は純粋な parse エンジンのため、API 料金は成功一件あたり公開基準の $0.002 で、検証失敗は残高を消費しません。
連携の活用例
競技・面接用フィクスチャ
アンモニア・燃焼・中和の対について残り質量の答えを一括生成し、ゼロ係数を invalid_input で検出します。
技術的な質問
過剰の残り質量はどう計算しますか?
各質量をモルに換え、化学量論係数で割って進行度を得て最小を反応進行とし、leftover_mass = (n_過剰 − ν_過剰 × 進行度) × M_過剰 とします。
料金はいくらですか?
ブラウザツールは無料でローカル実行です。API 要求は前払い KIT 残高を成功一件あたり $0.002 で使用し、無効入力は課金されません。