実験式計算機
各元素の量を入れるだけで、最も簡単な整数比の式が分かります。炭素40 %、水素6.7 %、酸素53.3 %ならCH2Oです。グラムでもパーセントでもよく、標準原子量は組み込み済みです。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
処理はブラウザ内で完結します。ファイルは送信されません。無料でご利用いただけます。
実験式(組成式)は化学化合物中の原子の最も簡単な整数比であり、分子式と同じとは限りません。実験レポートでは各元素がグラム単位の質量または質量パーセントで記載されることが多く、それらの数値をモルに換算し、最小のモル量で正規化し、分数比を解消するのが、一般化学で教わる標準的な化学量論の手順です。この機能は、従来の原子量の固定表でその手順を決定論的に実行し、Hill順序の式文字列とモル数・整数カウントの構造化内訳を返します。全ゼロの組成は明確な無効入力エラーで拒否されるため、パイプラインが空のデータから原子を捏造することはありません。
質量・パーセント組成の意味と元素の送り方
大文字小文字を区別する元素記号から非負の有限量へのマップを用意してください。値は計量試料からの各元素のグラムでも、元素分析レポートの質量パーセントでも構いません。実験式への数学的な縮約は相対量だけに依存するため、データに一貫性があればどちらの解釈でも同じ原子数になります。
少なくとも1つの量が厳密に正である必要があります。Workerアイソレートの安全性のため、マップは控えめな元素数に制限してください。2〜6元素の通常の教材例が想定ワークロードです。
文字列の数値はトリムされ有限であれば受け付けられます。
授業での使い方と実用上の注意点
無料のブラウザ内実験式計算機を呼び出せば、ChemDrawプラグインやローカルの化学量論ライブラリをインストールせずに、宿題チェック・講義デモ・手早い実験レポートの検証ができます。次のステップが実験式をグラム/モルに換算することならモル質量計算機と、分子式が実験式単位のn倍なら独自の分子量係数と組み合わせてください。
実験パーセントの測定ノイズで比が整数からわずかにずれることがあります。エンジンは固定許容誤差内で小さな整数倍率を探索し、GCDで縮約するため、CH2OやFe2O3のような定番の答えはクリーンな教科書データで安定します。
ソース組成は他のKIT parseアイテムと同じ保持ルールに従い、アルゴリズムはネットワーク・乱数シード・時計のない完全な決定論的なので、結果は継続的インテグレーションのフィクスチャに安全に固定できます。
活用例
宿題と実験レポートのチェック
学生は燃焼分析やCHN分析の質量パーセントを入力し、返された式とモル比を項ごとに比較し、すべての量を0のままにした場合は明確なエラーを受け取ります。
よくある質問
質量パーセント組成から実験式を求めるには?
応答にはformula(例:CH2O)と元素ごとのモル数・整数カウントが含まれます。
パーセントの代わりにグラムの質量を使えますか?
はい。 縮約は相対量だけを使うため、同じ組成を表すグラムと質量パーセントは同じ実験式を生成します。オプションのmodeで値をmassまたはpercentとラベル付けできます。
すべての元素量が0の場合はどうなりますか?
少なくとも1つの正の質量またはパーセントが必要です。空の全ゼロ組成は拒否され課金されません。
実験式計算機は無料ですか?
ブラウザツールはお使いのデバイス上で無料で動作します。バリデーション失敗は課金されません。
モル質量計算機との違いは何ですか?
モル質量ツールは式から出発して原子量を合計します。この機能は逆方向で、測定した質量やパーセントから最も簡単な整数比の式を求めます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/chem/empirical-formula \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"elements":{"C":40,"H":6.7,"O":53.3}}'const res = await fetch("https://api.kit.forhosting.com/chem/empirical-formula", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"elements": {
"C": 40,
"H": 6.7,
"O": 53.3
}
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/chem/empirical-formula",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"elements": {
"C": 40,
"H": 6.7,
"O": 53.3
}
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/chem/empirical-formula", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"elements":{"C":40,"H":6.7,"O":53.3}}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"elements":{"C":40,"H":6.7,"O":53.3}}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/chem/empirical-formula", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"elements": {
"C": 40,
"H": 6.7,
"O": 53.3
}
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "chem.empirical_formula",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
学生・講師・LIMSスクリプト・宿題チェッカーは、化学パッケージをインストールせずにJSONをテストに固定できます。サーバーやSDKから同じ契約が必要な場合、プリペイドAPIは成功アイテムごとに$0.002を課金します。
質量・パーセント組成の意味と元素の送り方
キーはH・C・O・Fe・Clなどの標準的な元素記号である必要があり、認識できない記号や不正なキーはinvalid_inputで失敗します。オプションのmodeはmass・percent・autoのいずれかで、autoがデフォルトで、モル計算を変えずにUI用にリクエストへラベルを付けるだけです。すべての値が0の場合、エンジンはinvalid_inputを発生させ、式を捏造しません。正の値に混じる0のエントリは破棄されるため、周期表テンプレートの全ペイロードを手作業の整理なしで再利用できます。elementsオブジェクトには別名composition・masses・percentagesも受け付けられ、SDKやフォームは第2のコードパスを作らずにドメインの言葉を使えます。
モル数・比・整数カウントと式文字列の読み方
式文字列はHill方式で順序付けられ、炭素があれば最初、次に水素、残りはアルファベット順なので、有機物はCH2Oのように読め、Fe2O3のような無機二元素化合物も見慣れた形になります。成功時の応答には、formula・エコーされたmode・element_count・elements配列・GCD縮約前に使われた整数倍率・供給された値のtotal_amount・mole_ratio_integerに等しいmethodが含まれます。各elementsエントリには、symbol・amount・静的な従来表からのatomic_weight・moles・最小モル量で割った後のmole_ratio・最終的な整数カウントが列挙されます。原子量はこのカタログのモル質量ツールで使われる一般的な教室用表に従い、IUPACのライブダウンロードではなく、同一リクエスト間で変化しません。ラベルやフラッシュカードに文字列が1つ必要ならformulaを、採点者がモル比とカウントを個別に検証する必要があるならelements配列を、クライアントがパーセントの合計が100付近か試料質量を保存したかを確認するならtotal_amountを使ってください。elementsの欠落・空マップ・負の量・未知の記号・全ゼロ組成はすべてinvalid_inputで失敗し、エンジンがリクエストを拒否した後は課金されません。
APIの使い方・料金・教室でのワークフローと実用上の制限
JSONボディに必須のelementsオブジェクトとオプションのmode文字列を入れてください。個別指導プラットフォーム・コーディング評価サンドボックス・LIMSヘルパー・カリキュラム生成ツールがKIT残高のもとで安定した契約を必要とする場合は、成功アイテムごとに$0.002のプリペイドAPIをお使いください。バリデーション失敗はエンジンがリクエストを拒否した後、残高を消費しません。SDKを出荷する開発者は、elements配列をUIテーブルに直接マッピングでき、量・モル・比・カウントという、学生が紙の上で実験式を求めるときに計算するのと同じ列を表示できます。
連携の活用例
個別指導と自動採点ドリル
教材ビルダーは、本格的な化学CASスタックを埋め込まずに、フラッシュカードや採点者向けの構造化JSONによる組成から式への演習を生成します。
LIMSと軽量な化学量論パイプライン
元素の質量・パーセントマップをすでに保存しているスクリプトは、言語ごとにモル比の丸めを再実装する代わりに、安定したプリペイドエンドポイントを呼び出します。