細菌指数増殖の計算機
世代時間20分の細菌100個は、60分後に800個になります。3回倍加して8倍になるためです。最初の菌数、世代時間、経過時間を入れれば、理想的な対数増殖期での最終菌数が分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 初期数
- 100
- 世代時間
- 20
- 経過時間
- 60
- 世代数
- 3
- 増殖倍率
- 8
- 最終数
- 800
- 最終数のLog10
- 2.903089987
栄養が制限されないとき、細菌培養はほぼ一定の世代時間で倍加するため、指定した間隔の後の菌数は閉じた写像、すなわち N が Nゼロ × 2 の(経過時間÷世代時間)乗に従います。この細菌指数増殖計算機はその恒等式をそのまま適用します。出発の細胞数またはコロニー形成単位、世代(倍加)時間、培養がどれだけ成長してきたかを入力してください。世代時間と経過時間は同じ単位で揃えます。応答は世代数、倍率、最終集団、常用対数、実験ノート向けの簡潔な科学記数法、比増殖速度 ln(2)/g を返します。モデルは拘束のない指数増殖であり、環境収容力・ラグ期・死滅期は当てはめません。
細菌の指数増殖が意味すること
均衡のとれた二分裂では、十分に栄養のある培養は世代時間 g ごとに倍加します。したがって n が t÷g 世代のあと、菌数は N=Nゼロ×2のn乗、すなわち Nゼロ×2の(t÷g)乗です。g が20分、t が60分なら n は3となり、出発100細胞は800になります。
同じ恒等式は N=Nゼロ×eの(μt)乗で、比増殖速度 μ は 2 の自然対数を g で割った値です。両方は代数的に同等であり、この計算機は離散的な倍率 2のn乗と μ の両方を報告します。世代時間は集団が次々と倍加する平均間隔であり、印を付けた1細胞の寿命ではありません。
経過時間と同じ単位で測ります。分は分と、時間は時間と揃えます。モデルは栄養無制限、温度一定、植菌後のラグなし、死滅なし、環境収容力の天井なしを仮定します。
微生物学の教科書が片対数グラフの直線として描く指数期(対数期)です。実際のフラスコは酸素、炭素、pH、空間が律速になるとこの期を離れます。出力は拘束のない指数予測として扱い、タービドスタット、ケモスタット、一晩の定常予測としては扱わないでください。
このページの検索意図は、細菌指数増殖計算機、世代時間からの最終細菌集団、倍加時間による増殖、N=Nゼロ×2の(t÷g)乗です。初期菌数、世代時間、経過培養時間がすでに分かっており、ロジスティックやゴンペルツの当てはめではなく閉じた最終菌数が欲しいときに使います。
実験室の流れ、限界、関連する検索意図
典型的な流れは次のとおりです。教育研究室は大腸菌 Escherichia coli の倍加時間を20分に固定し、1時間が3世代であり100細胞の植菌が800になることを学生に見せ、その後 g を変えて、遅い種が同じ時計時間のあと小さく留まる様子を示します。発酵と培地調製のチームはその上限を使い、スターターがシフト前に目標密度へ理論上届くかを判断します。
数値は拘束のない指数であり、栄養が尽きると過大になります。手法開発者は閉じた 2の(t÷g)乗曲線を観測したコロニー点や濁度点と比べ、培養が対数期を離れた時点を見ます。限界:この道具は光学密度を CFU へは換算しません(別校正です)。
最終菌数から世代時間や経過時間を逆算せず、ロジスティックやゴンペルツのプラトーも当てはめず、培地や温度も推奨しません。検索意図には細菌指数増殖計算機、倍加時間による細菌集団、世代時間からの最終 CFU、N=N0×2^(t/g) が含まれます。検証失敗は前払い残高を消費しません。
活用例
二分裂と倍加則の指導
世代時間20分の100細胞が1時間後に800になることを学生に示し、g または t を変えて n = t/g が積み上がる様子を見せます。
スターター培養と培養計画
既知の植菌量と公表された倍加時間を、予定シフト後の理論最終 CFU へ換算し、対数期密度に届くかを判断します。
培養が指数期を離れたかの確認
観測した平板菌数または濁度点を N = N0 × 2^(t/g) と比べ、フラスコが拘束のない対数増殖からどれだけ外れたかを見ます。
よくある質問
ラグ、死滅、環境収容力は含まれますか?
含まれません。 結果は拘束のない指数関数 N = N0 × 2^(t/g) です。実際の培養は栄養や空間が律速になると対数期を離れます。数値は理論上の上限として扱ってください。
一定時間後の最終菌数はどう計算しますか?
経過時間を世代時間で割って倍加回数を求め、最初の菌数に2のその回数乗を掛けます。世代時間20分の細胞100個なら、60分後に800個になります。
世代時間と経過時間は同じ単位にする必要がありますか?
はい。分なら分、時間なら時間でそろえてください。この計算機は単位を換算しません。単位が混ざると世代数がずれ、最終菌数が大きく狂います。
結果に表示される比増殖速度とは何ですか?
2の自然対数を世代時間で割った値で、同じ増殖法則を連続的な形で表したときの速度です。どちらの形でも同じ最終菌数になります。
経過時間がゼロの場合はどうなりますか?
ゼロでも計算できます。世代が1つも進んでいないため、2の0乗は1となり、最終菌数は最初の菌数と同じになります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/bio/exponential-growth-final \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"initial_count":100,"generation_time":20,"elapsed_time":60}'const res = await fetch("https://api.kit.forhosting.com/bio/exponential-growth-final", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"initial_count": 100,
"generation_time": 20,
"elapsed_time": 60
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/bio/exponential-growth-final",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"initial_count": 100,
"generation_time": 20,
"elapsed_time": 60
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/bio/exponential-growth-final", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"initial_count":100,"generation_time":20,"elapsed_time":60}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"initial_count":100,"generation_time":20,"elapsed_time":60}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/bio/exponential-growth-final", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"initial_count": 100,
"generation_time": 20,
"elapsed_time": 60
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "bio.exponential_growth_final",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_generations | 1023 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
無効な入力は invalid_input で失敗し、課金されません。
入力契約、応答フィールド、検証
必須の有限数は3つです。世代時間と経過時間は同じ単位でなければならず、計算機は分を時間へ換算しません。非整数の世代数も許されます。計算機が倍加を捏造していないことをノートで確認するときに便利です。POST で JSON 本体を送ります。正の出発菌数 initial_count(別名 n0、N0、initial、starting_count、n_zero、inoculum)、正の倍加時間 generation_time(別名 g、doubling_time、gen_time、td、t_d)、非負の培養間隔 elapsed_time(別名 t、time、duration、incubation_time)です。例:initial_count が100、generation_time が20、elapsed_time が60なら、世代数は3、倍率は8、final_count は800です。500細胞、generation_time 25、elapsed_time 40 なら n は1.6、倍率は2の1.6乗です。成功時は3つの入力を十二桁の安定丸めで返し、加えて generations(t÷g)、fold_growth(2のn乗)、主結果の final_count、片対数図向けの log10_final_count、簡潔な科学記数法の final_count_scientific、ln(2)/g の specific_growth_rate、N=N0×2^(t/g) を述べる formula、短い message を付けます。欠落フィールド、有限でない文字列、真偽型、正でない initial_count、正でない generation_time、負の elapsed_time、1023世代を超える場合(IEEE-754 オーバーフロー)は invalid_input で失敗し、課金されません。成功した作業は定額 $0.002、単位は unit item です。elapsed_time が0であることは合法で、出発菌数を倍率 1 で返します。
実験室の流れ、限界、関連する検索意図
平板菌数または校正した光学密度を initial_count に換算し、その生物・培地・温度の generation_time を調べるか測り、予定培養を elapsed_time に入れ、final_count または final_count_scientific をプロトコールの横に記録します。往復確認は単純です。 initial_count × 2 の(elapsed_time÷generation_time)乗を再計算し、公表丸めの範囲で final_count と一致することを確認し、initial_count 欠落が成功から invalid_input へ切り替わり、フィールドメッセージが明確であることを確認してください。成功した API 呼び出しはそれぞれ $0.002 で課金されます。
技術的な質問
指数増殖のあと最終細菌集団はどう計算しますか。
正の initial_count、正の generation_time、非負の elapsed_time を同じ時間単位で送ってください。API は final_count = initial_count × 2^(elapsed_time / generation_time) を返します。
generation_time と elapsed_time は同じ単位が必要ですか。
必要です。分は分と、時間は時間と揃えます。計算機は単位を換算しません。n は elapsed_time を generation_time で割った値です。
要求が拒否されたのはなぜですか。
initial_count、generation_time、elapsed_time の欠落、正でない出発菌数または世代時間、負の経過時間、1023世代超は invalid_input で失敗し、課金されません。
細菌指数増殖計算機の料金はいくらですか。
ブラウザの道具は無料です。API 要求は成功した呼び出しあたり $0.002 で前払い KIT 残高を使います。無効な入力は課金されません。