マクロ別TEF計算機
たんぱく質40 g、炭水化物50 g、脂質15 gの食事は495 kcalで、そのうち58.7 kcalが消化に使われ、436.3 kcalが残ります。栄養素ごとの消化コストも分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- タンパク質 (g)
- 40
- 炭水化物 (g)
- 50
- Fat g
- 15
- たんぱく質のコスト
- 0.25
- 炭水化物のコスト
- 0.08
- 脂質のコスト
- 0.02
- タンパク質 (kcal)
- 160
食事誘発性熱産生(TEF)とは、食後に消化・吸収・代謝で体が余分に使うエネルギーです。たんぱく質・炭水化物・脂質の処理コストは同じではなく、たんぱく質は自身のカロリーの多くを、炭水化物は控えめに、脂質はほとんど消費しません。このマクロ別TEF計算機は、各マクロのグラムを古典的なアトウォーター係数で摂取キロカロリーに換算し、各エネルギー流に消化コスト分数を掛け、TEFの内訳と正味の代謝可能エネルギーを返します。既定値は教科書でよく使われる中間値—たんぱく質二十五パーセント、炭水化物八パーセント、脂質二パーセント—に合わせつつ、任意のコスト欄で研究用の係数も指定できます。
グラムと消化コストからTEFを求める方法
まず三つのグラム量—食事・一日・任意の期間のたんぱく質・炭水化物・脂質—から始めます。アトウォーター密度でグラムをキロカロリーに換算します—たんぱく質は一グラムあたり四キロカロリー、炭水化物も四、脂質は九—なので、たんぱく質四十グラム・炭水化物五十グラム・脂質十五グラムの皿はそれぞれ百六十・二百・百三十五キロカロリー、合計四百九十五になります。
各流に消化コスト分数を適用します。既定ではたんぱく質はエネルギーの二十五パーセント、炭水化物は八パーセント、脂質は二パーセントです。流のエネルギーにコストを掛けるとそのマクロの熱産生寄与になり、三つを足すと総TEF(キロカロリー)になります。
総TEFを総摂取エネルギーで割り百を掛けると摂取に対するTEFパーセントになり、総摂取から総TEFを引くと正味の代謝可能エネルギー—消化の「税」のあとに残る部分—になります。任意のコスト引数は零から一までの任意の分数を受け付けるため、高たんぱく試験・低コストの脂質優位メニュー・文献の範囲を既定の代わりにモデル化できます。単一マクロの零グラムは許可されます。
三つとも零の完全に空の摂取は非正として拒否されます。計算すべき熱産生がないためです。
マクロ別TEF計算機が役立つ場面
指導者や管理栄養士は、表示カロリーは同じでも消化コストが異なる高たんぱくメニューと高炭水化物メニューを比べるときに、マクロ別食事誘発性熱産生計算機を使います。フィットネスアプリは総摂取の横に正味の代謝可能エネルギーを示し、同じカロリーでも高たんぱくの日がより「軽い」と感じられる理由を利用者に伝えられます。
研究ノートや献立生成器には、ブラックボックスの LLM 推定ではなく固定のアトウォーター係数と明示的なコスト分数を適用する決定論的オラクルが必要です。
活用例
食事ごとのTEF比較
総カロリーは同じでもたんぱく質・炭水化物・脂質の配分が異なる二皿を比べ、どちらが消化により多くのエネルギーを使うかを確認します。
指導・献立ダッシュボード
日次のTEFと正味代謝可能キロカロリーをマクロ目標の横に表示し、高たんぱくの日の消化コストをクライアントに示します。
研究・自動化スクリプト
固定または独自の消化コスト分数で研究用メニューを一括評価し、ネットワーク呼び出しや非決定論モデルを使いません。
よくある質問
マクロから食事誘発性熱産生はどう計算しますか?
たんぱく質・炭水化物・脂質のグラムを 4・4・9 kcal/g でキロカロリーに換え、各流に消化コスト分数(既定 0.25・0.08・0.02)を掛け、三つの TEF 部分を足します。
消化コストの割合は変更できますか?
省略すると既定の中間値 0.25 / 0.08 / 0.02 を使います。
たんぱく質は脂質より消化にエネルギーを使いますか?
はい、かなり多く使います。初期設定では、たんぱく質は自身のカロリーの25パーセント、炭水化物は8パーセント、脂質は2パーセントです。例の食事では、たんぱく質160 kcalに40 kcal、脂質135 kcalには2.7 kcalしかかかりません。
正味の代謝エネルギーとは何ですか?
食べた量から消化コストを差し引いて残るエネルギーです。495 kcalの食事で熱産生が58.7 kcalなら、正味は436.3 kcalになります。
1つの栄養素をゼログラムにできますか?
はい、どれか1つがゼロでも計算できます。ただし3つともゼロだと熱産生が生じないため、計算は受け付けられません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/health/tef-by-macro \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"protein_g":40,"carbs_g":50,"fat_g":15}'const res = await fetch("https://api.kit.forhosting.com/health/tef-by-macro", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"protein_g": 40,
"carbs_g": 50,
"fat_g": 15
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/health/tef-by-macro",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"protein_g": 40,
"carbs_g": 50,
"fat_g": 15
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/health/tef-by-macro", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"protein_g":40,"carbs_g":50,"fat_g":15}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"protein_g":40,"carbs_g":50,"fat_g":15}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/health/tef-by-macro", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"protein_g": 40,
"carbs_g": 50,
"fat_g": 15
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "health.tef_by_macro",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
入力契約・応答形・エラー時の挙動
省略すると 0.25・0.08・0.02 を使います。任意の precision は零から十五の整数で、各数値出力を丸め、既定は二です。必須の有限数三つ protein_g・carbs_g・fat_g を含む JSON 本体を POST してください。それぞれ零以上で、合計は厳密に正でなければなりません。任意の protein_cost・carbs_cost・fat_cost は零から一(含む)の分数です。protein・carbs・fat・protein_tef・decimals などの別名も受け付けるため、ノートブックのスクリプトは長い名・短い名のどちらでも書けます。成功時はグラムとコストをエコーし、protein_kcal・carbs_kcal・fat_kcal・total_kcal、続いて tef_protein_kcal・tef_carbs_kcal・tef_fat_kcal・tef_total_kcal、さらに tef_percent_of_intake・net_metabolizable_kcal・method・formula・precision を返します。欠落フィールド・非有限値・負のグラム・零から一の外のコスト分数・非正のグラム合計は invalid_input と問題を示すメッセージで失敗し、課金されません。数値は JSON 数または平易な小数文字列で送れます。
マクロ別TEF計算機が役立つ場面
能力は純粋 parse の tier A のため、成功する呼び出しは毎回公表の基本料金 $0.002 で、モデルトークンも外向きネットワークもありません。リクエストを小さく保ち、丸めた TEF 合計を試験に固定すれば、指導ポータル・LMS の栄養単元・エッジワーカー向けに再現可能な消化コスト計算が得られ、自前の巨大な栄養データベースは不要です。
技術的な質問
一つのマクロだけ零グラムでもよいですか?
はい。単一マクロの零グラムは許可されます。protein_g・carbs_g・fat_g の合計は厳密に正である必要があり、そうでなければ invalid_input で失敗します。
ここでいう正味の代謝可能エネルギーとは何ですか?
net_metabolizable_kcal は総摂取キロカロリーから総 TEF キロカロリーを引いた値で、このモデルのマクロ別消化コスト適用後に残るエネルギーです。
マクロ別食事誘発性熱産生計算機の料金は?
ブラウザのツールは無料です。API は成功した呼び出しごとに KIT 前払い残高から $0.002 です。無効な入力は課金されません。