ppb濃度計算ツール
1000 gの溶液に溶質が0.001 g含まれれば1000 ppbです。溶質と全体の質量を同じ単位で入れると、ppbと質量分率が分かり、微量汚染物質や飲料水の基準の確認に使えます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 溶質の質量
- 0.001
- 全体質量
- 1,000
- 質量分率
- 0.000001 ppb
- ppb
- 1,000
- 精度
- 10
このppb濃度計算ツールは、溶質の質量と溶液または試料全体の質量がわかっているときに、溶質の十億分率レベルを求めます。質量基準の十億分率は質量分率を十億倍した値です。すなわちppbは溶質質量を全体質量で割って1×10の9乗を掛けた値であり、両方の質量が同じ単位を使用している必要があります。この尺度は、パーセントやppmでは有効数字が埋もれてしまうような、微量汚染物質、飲用水の基準値、超低濃度の分析対象物を扱う際の自然な表現方法です。授業や実験での検算例としては、1000質量単位の溶液中に0.001質量単位の溶質があると100万ppb、10億質量単位の全体中に2質量単位の溶質があると2ppbになることが挙げられます。この計算エンジンはネットワーク呼び出し・サンプリング・日付依存の近似を一切行わない、有限精度の決定的な算術のみを使用します。宿題、環境report、分析法の準備にはブラウザで無料でご利用いただけます。
十億分率が表すもの
十億分率(ppb)は、比が極めて小さいときに、ある成分が全体に対してどれだけ存在するかを表します。この計算ツールが用いる質量基準の定義は厳密であり、係数を掛けるまでは無次元です。まず溶質質量を全体質量で割った質量分率を作り、それに十億を掛けてppbを得ます。
両方の質量は同じ質量単位(グラムとグラム、キログラムとキログラム、マイクログラムとマイクログラム)を共有しなければなりません。比を取る段階で単位が相殺され、十億倍する換算の前には純粋な分率が残るためです。したがって1ppbとは、全体質量10億部のうち溶質質量1部を意味します。
SIに親しんだ表現では、これらの接頭辞を一貫して使う場合、試料1キログラムあたり分析対象物1マイクログラムとしてしばしば説明されます。全体質量とは、調製後の溶液または試料全体の質量であり、溶媒だけの質量ではありません。これは、プロトコルが注いだ溶媒の体積ではなく、出来上がった分取試料を秤量する場合に重要です。
溶質質量ゼロで全体質量が正である場合は有効な入力であり、ppbはゼロになります。ミリグラムからキログラムへの自動換算、密度に基づく体積の経路、モル分率やモル濃度への書き換えは一切ありません。
拒否されるケースには、溶質質量または全体質量の欠落、非有限な値、規定された上限を超える大きさ、非正の全体質量による除算が未定義または物理的に無効となるあらゆるゼロまたは負の全体質量、そして負の溶質質量が含まれます。モル濃度、質量パーセント、あるいは別の製品面としてのppmが必要な場合は、それぞれ専用のツールをご利用ください。
活用例
宿題と実験の検算
ワークシートを採点する前や微量レベルを記録する前に、溶質質量と全体の試料または溶液質量から質量基準のppbを計算します。
決定的なテストフィクスチャ
ユニットテスト、化学のチュータリングアプリ、(溶質/全体)×1e9に関するCIアサーションのために、再現性のあるppb値を生成します。
環境および品質保証レポート
分析対象物と試料の質量を、レポート、ダッシュボード、授業デモ向けに十億分率へ正規化します。
よくある質問
ここでのppbはどのように定義されますか?
質量基準では、ppb = (溶質質量 / 全体質量) × 1 000 000 000です。両方の質量は同じ質量単位を使用する必要があります。
全体質量がゼロまたは負の場合はどうなりますか?
非正の全体質量では、質量分率の比が未定義または物理的に無効になります。
これはモル濃度と同じものですか?
いいえ。 モル濃度は1リットルあたりの物質量です(c = n/V)。このツールは二つの質量から質量基準の十億分率のみを計算します。
結果が精度で丸められるのはなぜですか?
既定の精度は小数点以下10桁で、精度は0から15の範囲で設定できます。
1 ppbは身近な単位でどのくらいですか?
1 ppbは、全体の質量10億に対して溶質が質量で1の割合です。接頭語をそろえて使えば、試料1キログラムあたり分析対象が1マイクログラムに当たります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/chem/ppb-concentration \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"solute_mass":0.001,"total_mass":1000}'const res = await fetch("https://api.kit.forhosting.com/chem/ppb-concentration", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"solute_mass": 0.001,
"total_mass": 1000
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/chem/ppb-concentration",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"solute_mass": 0.001,
"total_mass": 1000
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/chem/ppb-concentration", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"solute_mass":0.001,"total_mass":1000}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"solute_mass":0.001,"total_mass":1000}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/chem/ppb-concentration", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"solute_mass": 0.001,
"total_mass": 1000
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "chem.ppb_concentration",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_abs_value | 1000000000000000 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
CIやチュータリングソフト、授業デモで再現性のあるppbのフィクスチャが必要な場合は、成功したリクエストごとに$0.002でAPIを呼び出すことができます。
十億分率とは何か、レスポンスに含まれる内容
この計算ツールは、正規化されたsolute_massとtotal_mass、中間値であるmass_fraction、計算されたppb値、使用した精度、メソッドタグppb_concentration、簡潔な数式のリマインダー、そしてppbという単位ヒントを返します。このエンジンはサポートされる数値範囲内で質量基準のppbの式を評価するか、さもなければinvalid_inputとして入力を拒否します。このページが答えるのは、単位換算を勝手に補完してはならないワークシート、ユニットテスト、API利用者に適した安定した数値出力を伴う、質量基準の十億分率のみです。
溶質質量と全体質量の読み取り方と再現性の保ち方
溶質質量は非負でなければならず、全体質量は有限な正の数でなければなりません。不正なセルがサイレントな無限大や無意味な結果になることを防ぐためです。数値文字列の先頭に付く任意のプラス記号や科学的記数法は、有限な小数として解析できる限り許可されます。埋め込まれた空白や数値でないトークンは拒否されます。分析対象物または溶質の質量を表す推奨フィールドはsolute_massですが、solute、mass_solute、m_solute、analyte_mass、m_sという別名も受け付けられます。これにより、スプレッドシート、クエリ文字列、型付きフォームが同じ契約を再利用できます。全体を表す推奨フィールドはtotal_massで、別名にはtotal、mass_total、m_total、solution_mass、m_sol、sample_massがあります。ゼロまたは負の全体質量は、フィールド名を明示し、ppbが溶質質量を全体質量で割って十億を掛けた値に等しいという式が非正の全体質量に対して未定義または物理的に無効であることを説明するメッセージとともに、invalid_inputで失敗します。数学的に同一の結果を自動化パイプラインの中で必要とし、十億分率の定義を自前で再実装したくない場合は、このページの無料ブラウザ実行と有料APIを組み合わせてご利用ください。
ppb濃度が学習・実験・ソフトウェアのどこで使われるか
学生が十億分率に出会うのは、教科書が微量濃度を導入するとき、宿題でわずかな溶質質量と大きな試料質量が与えられるとき、あるいはコンテスト問題で体積単位にこっそり切り替える電卓なしに十億倍の質量比が求められるときです。教師は、ppbとppmを混同したり、質量しか示されていない問題文で水の密度を仮定したりする不透明なアプリを信用することなく、環境化学や分析化学の問題セットの模範解答を事前に生成できます。実験技術者や品質管理チームは、分析証明書に分析対象物の質量と試料質量が記載されている場合や、スパイク回収率のワークシートに透明性のあるppb検算が必要な場合に、同じ定義を使用します。開発者は、化学のチュータリングアプリのために決定的なテストベクターを準備する、実験ノートのエクスポート前にユーザーが入力した微量レベルを正規化する、あるいは大まかなスケッチではなくppbを要求するプログラミング課題を満たすために、同じ契約をスクリプトから呼び出します。プロダクトや教育向けツールは、学習者が二つの質量を入力し、UIが明確な数式とともに十億分率を表示しなければならない場合にこのエンドポイントを使用します。このページ上での処理はすべてブラウザ内で完結します。APIを通じた場合、成功した検索1件ごとに$0.002が課金され、バリデーション失敗には課金されず、レスポンス返却後は何も保存されません。無料のインタラクティブな探索と有料の同一APIというこの分離は、KITのtier A全体のカタログと一致しており、教室のデモから自動化パイプラインへ、数学的な結果を変えることなく移行できます。関連する化学の量が必要な場合はモル濃度や他の溶液計算ツールと、無料で決定的な化学計算ツールの小さなラボを構築している場合は他の理科系エンドポイントと組み合わせてご利用ください。
技術的な質問
ppb濃度計算ツールの料金はいくらですか?
このページ上ではブラウザで無料です。APIを通じた場合、成功したリクエストごとに$0.002が課金され、無効な入力には課金されません。