イオン強度計算
溶液がどれだけ電荷を帯びているかを1つの数で表します。0.1 mol/Lの塩化ナトリウムを電荷+1と−1の2つのイオンとして入れると、イオン強度は0.1 mol/Lで、各イオンの寄与も表示されます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
処理はブラウザ内で完結します。ファイルは送信されません。無料でご利用いただけます。
イオン強度は、電気化学者や溶液化学者が混合物の帯電の強さを要約するために用いる単一の数です。古典的定義は、すべての自由イオンについて各モル濃度に電荷数の二乗を掛けたものの和の半分です。I は c 下付き i と z 下付き i の二乗の和の半分と書かれ、Debye–Hückel 活量係数、イオン反応の有効速度定数、支持電解質を記録する実験ノートに現れます。本計算は二本の並列リスト—リットルあたりモルのモル濃度と、各種の整数または数値の電荷数—を受け取り、リットルあたりモルのイオン強度、半分にしない和、どの塩が支配的かを示すイオン別内訳を返します。負の濃度は静かに符号反転せず、非物理として拒否されます。
イオン強度の定義と z の二乗が重要な理由
式と電荷で列挙できる自由イオンへ完全解離する明瞭な水電解質から始めます。各イオン種 i について分析モル濃度 c 下付き i(モル毎リットル)と電荷数 z 下付き i を書き、ナトリウムはプラス一、塩化物はマイナス一、カルシウムはプラス二、硫酸はマイナス二などとします。
その種のイオン強度への寄与は c 下付き i に z 下付き i の二乗を掛けたものです。電荷を二乗するため、同じモル濃度の二価イオンは一価の四倍重く、0.1 モルのカルシウムイオンは和に 0.4 を、0.1 モルのナトリウムは 0.1 だけ寄与します。自由イオンとして存在するすべての種を足し合わせた後、総和に二分の一を掛けます。
この半分係数は慣例で、濃度 C の単純な 1:1 塩(塩化ナトリウムなど)が I = C となり、学生が覚える教科書結果になります。中性分子、未解離の弱酸、溶媒の水は和に入らず、帯電した自由種だけが数えます。項目は有限でなければならず、NaN と Infinity は拒否されます。
並列配列は同じ長さが必要です。
送る内容と返る内容
charges は同じ順の各電荷の有限数の非空配列です。両配列は同じ長さで、少なくとも一イオン、最大百イオンです。零濃度と零電荷は許され、寄与ゼロです。
教科書確認の例は、0.1 モル NaCl を 0.1 の Na プラスと 0.1 の Cl マイナスとして I = 0.1、0.1 モル CaCl2 を 0.1 の Ca 二プラスと 0.2 の Cl マイナスとして I = 0.3 です。
宿題と素早い健全性確認には無料ブラウザフォームを、解答キーや回帰フィクスチャの大量生成には同一契約をスクリプトから呼んでください。
実業務でイオン強度計算が現れる場面
分析化学ラボは電位差・ボルタンメトリー・導電率用の緩衝液と支持電解質を調製するたびにイオン強度を記録します。活量係数と液間電位は公称塩名より I に依存するからです。生化学やタンパク質精製プロトコルは、塩化物・硫酸・リン酸系で塩勾配と透析を比較できるよう、単一塩濃度ではなく目標イオン強度を指定することが多いです。
環境水化学者は硬度・塩分アッセイの主要陽イオン・陰イオンの多イオンリストを、化学種モデルの活量係数推定前に I に変換します。高校・大学の物理化学は、書かれた塩レシピから正しい I、その I から log gamma を求める Debye–Hückel ドリルを出し、合計とイオン別寄与を返す信頼できるオラクルが採点とデモ準備を速めます。
質量パーセントからのモル濃度だけ、Debye–Hückel 活量係数、凝固点降下、弱酸の pH が後で必要なら、このイオン強度計算ページに詰めず別の検索意図とランディングとして扱ってください。
活用例
宿題・試験の解答キー
教科書の塩レシピから I とイオン別 c·z² 寄与を生成し、教員と自動採点が一つのイオン強度の正答を共有します。
緩衝液と支持電解質の調製
実験ノートで Debye–Hückel や拡張活量モデルの前に、多イオン緩衝液と支持塩の I を計算します。
環境の多イオン水試料
水質アッセイの主要陽・陰イオンモル濃度を、化学種と導電率の文脈用の一つのイオン強度に変換します。
よくある質問
イオン強度とは何ですか?
イオン強度 I は自由イオンについて各モル濃度に電荷の二乗を掛けた和の半分です。
濃度が負の場合は?
モル濃度は負になり得ず、計算は結果を捏造せず非物理値を拒否します。
中性分子は数えますか?
いいえ。 和に入るのは帯電した自由種だけです。未解離弱酸、溶媒水、中性溶質は配列から省いてください。
CaCl2のような塩はどう入力しますか?
イオンごとに分けて、2つの一覧に同じ順番で入力します。カルシウムはその濃度と電荷+2、塩化物イオンはその2倍の濃度と電荷−1です。数えるのは自由なイオンだけです。
2価のイオンが4倍も効くのはなぜですか?
各イオンの濃度に電荷の2乗を掛けるためです。同じ0.1 mol/Lでも、カルシウムイオンは合計に0.4を加え、ナトリウムイオンは0.1しか加えません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/chem/ionic-strength \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"concentrations":[0.1,0.1],"charges":[1,-1]}'const res = await fetch("https://api.kit.forhosting.com/chem/ionic-strength", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"concentrations": [
0.1,
0.1
],
"charges": [
1,
-1
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/chem/ionic-strength",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"concentrations": [
0.1,
0.1
],
"charges": [
1,
-1
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/chem/ionic-strength", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"concentrations":[0.1,0.1],"charges":[1,-1]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"concentrations":[0.1,0.1],"charges":[1,-1]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/chem/ionic-strength", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"concentrations": [
0.1,
0.1
],
"charges": [
1,
-1
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "chem.ionic_strength",
"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 は一つの純粋な同型関数を共有し、教室デモと自動パイプラインは同じ数値で分岐しません。
イオン強度の定義と z の二乗が重要な理由
ここでの算法は乱数シードも壁時計タイムスタンプもネットワーク呼び出しもない決定的浮動小数演算で、同一の濃度・電荷リストは常に同じ JSON を生みます。負の濃度は物理溶液でモル濃度が負になり得ないため invalid_input で早期失敗します。
送る内容と返る内容
必須フィールドを二つ送ってください。concentrations はリットルあたりモルの各イオンモル濃度を表す有限数の非空配列、またはその JSON 文字列です。欠落・非数値・NaN・Infinity・空配列・長さ不一致・負濃度は invalid_input で課金されません。成功時は清掃した concentrations と charges、index・concentration・charge・z_squared・c と z 二乗の積である contribution を持つ ions オブジェクト配列、数値の ionic_strength I、半分なしの sum_c_z2、units マップ、半和定義を記す method と formula 文字列を返します。成功 API の料金は公開ベース $0.002/件で、検証失敗は前払い残高を消費しません。
実業務でイオン強度計算が現れる場面
本機能は純粋な parse エンジンなので、API 料金は成功件あたり公開ベース $0.002、失敗検証は残高を消費しません。
技術的な質問
CaCl2 のような塩はどう入力しますか?
解離後の各自由イオンを列挙します。0.1 M CaCl2 なら concentrations [0.1, 0.2] と charges [2, -1](または各 0.1 の塩化物二項目で [2, -1, -1])。
費用はいくらですか?
ブラウザツールは無料でローカル実行です。API は成功件あたり $0.002 の前払い KIT 残高を使い、無効入力は課金されません。