कैलोरी ट्रैकिंग के पीछे का गणित
हर calorie tracker आपकी ओर से गणना करता है। उनमें से ज़्यादातर आपको समीकरण नहीं दिखाते। यहाँ वे हैं, worked examples के साथ, क्रम में, और हर अगला पिछले पर आधारित है।
यह पोस्ट गणना की पाँच परतों को कवर करती है: आपका baseline metabolism कैसे estimate किया जाता है, वह estimate daily energy target में कैसे बदलता है, app real data से आपका actual expenditure कैसे सीखता है, जब आप partial serving खाते हैं तो food entries कैसे scale होते हैं, और calorie deficit fat और lean tissue loss में कैसे translate होता है। हर संख्या किसी equation से trace की जा सकती है। हर equation किसी cited source से trace की जा सकती है।
Layer 1: BMR estimation
आपका Basal Metabolic Rate वह energy है जो आपका शरीर पूरी तरह आराम की स्थिति में burn करता है: बिना हिले, जागते हुए, temperature-neutral कमरे में लेटे हुए। यह कुल daily expenditure का लगभग 60-70% होता है।
सबसे व्यापक रूप से validated formula Mifflin-St Jeor (1990) है:
BMR (male) = 10 x weight(kg) + 6.25 x height(cm) - 5 x age + 5
BMR (female) = 10 x weight(kg) + 6.25 x height(cm) - 5 x age - 161
हर term एक physiological relationship को capture करता है। भारी शरीर अधिक energy burn करते हैं (weight term सबसे प्रमुख है)। लंबे शरीरों का surface area और metabolically active tissue अधिक होता है। उम्र के साथ metabolism घटता है। sex offset औसत body composition के अंतर को account करता है।
Worked example. 30 वर्षीय पुरुष, 82 kg, 178 cm:
10 x 82 = 820
6.25 x 178 = 1,112.5
5 x 30 = 150
sex offset = +5
BMR = 820 + 1,112.5 - 150 + 5 = 1,787.5 kcal
यह population average है। Mifflin-St Jeor 498 subjects की indirect calorimetry measurements से derived था। किसी भी individual के लिए standard error लगभग ±200 kcal होता है, यानी समान stats वाले दो लोगों के BMR में 400 kcal का फर्क हो सकता है। यह formula आपको bell curve का center देता है, आपकी personal measurement नहीं।
Source: Mifflin, M.D. et al. "A new predictive equation for resting energy expenditure in healthy individuals." American Journal of Clinical Nutrition, 1990.
Layer 2: BMR से TDEE तक
BMR floor है। Total Daily Energy Expenditure (TDEE) बाकी सब जोड़ता है: चलना, काम करना, exercise, food digest करना, fidgeting। पारंपरिक तरीका BMR को activity factor से multiply करता है:
| Activity Level | Multiplier | इसका असल मतलब |
|---|---|---|
| Sedentary | 1.200 | Desk job, बहुत कम walking |
| Lightly Active | 1.375 | ~8,000 steps/day या हल्का exercise 2x/week |
| Moderately Active | 1.550 | ~10,000 steps + resistance training 3x/week |
| Active | 1.725 | Physical job या training 5x/week |
| Very Active | 1.900 | रोज़ hard training + active lifestyle |
हमारे worked example के लिए (BMR = 1,788 kcal, lightly active):
TDEE = 1,788 x 1.375 = 2,458 kcal
समस्या साफ़ दिखती है: levels के बीच का jump 0.175 है, जो 1,788 के BMR पर ~310 kcal बनता है। यह एक पूरा banana और एक tablespoon peanut butter है। अगर आप गलत activity level चुनते हैं (और ज़्यादातर लोग ऐसा करते हैं), तो आपका TDEE estimate एक भी meal log करने से पहले ही सैकड़ों calories गलत हो सकता है।
और भी बुरा, multipliers NEAT (Non-Exercise Activity Thermogenesis) को capture नहीं कर सकते: fidgeting, posture, pacing, housework। केवल NEAT ही समान stats और exercise habits वाले लोगों के बीच 700+ kcal/day तक बदल सकता है।
BMR / TDEE कैलकुलेटर
Mifflin-St Jeor समीकरण
Layer 3: adaptive TDEE
Static formulas यह estimate करते हैं कि आप जैसे कोई व्यक्ति शायद कितना burn करता है। Adaptive TDEE यह calculate करता है कि आपने असल में कितना burn किया, आपके शरीर में जो हुआ उसे पीछे से देखकर।
मुख्य insight: अगर आपको पता है आपने कितनी calories खाईं और समय के साथ आपका weight कैसे बदला, तो आप expenditure solve कर सकते हैं।
The algorithm
28-day data window को मानकर:
Step 1. केवल tracked days पर average calorie intake लें। जिन दिनों food logs नहीं हैं, उन्हें पूरी तरह exclude किया जाता है (zero नहीं माना जाता)।
Step 2. पानी, glycogen और sodium noise को filter करने के लिए daily weight readings को 7-day Exponential Moving Average से smooth करें। फिर smoothed series पर least-squares linear regression fit करें। slope आपका true weight trend kg/day में है।
Step 3. weight slope को calories में convert करें:
caloric impact = daily weight slope x 7,700 kcal/kg
7,700 kcal/kg का figure body tissue की energy density का standard approximation है (fat लगभग 7,700 और lean लगभग 1,800 का weighted mix)।
Step 4. TDEE estimate करें:
TDEE = average daily intake - caloric impact
अगर आपका weight कम हो रहा है, तो caloric impact negative होता है, इसलिए TDEE intake से अधिक निकलता है। अगर weight बढ़ रहा है, तो यह कम निकलता है। अगर weight stable है, तो TDEE intake के बराबर होता है।
Step 5. daily adjustment को पिछले estimate से ±100 kcal तक clamp करें। इससे noisy data से तेज़ उतार-चढ़ाव नहीं आते।
Worked example
यहाँ किसी ऐसे व्यक्ति का 28-day real dataset है जो लगभग 0.3 kg/week weight loss कर रहा है:
| Day | Weight (kg) | EMA (kg) | Calories | Tracked? |
|---|---|---|---|---|
| 1 | 82.3 | 82.30 | 2,180 | Yes |
| 4 | 82.5 | 82.35 | 2,210 | Yes |
| 7 | 81.8 | 82.15 | 2,050 | Yes |
| 10 | 82.0 | 81.96 | -- | No |
| 14 | 81.7 | 81.72 | 2,100 | Yes |
| 21 | 80.9 | 81.12 | 2,180 | Yes |
| 24 | 81.0 | 80.93 | 2,120 | Yes |
| 28 | 80.7 | 80.72 | 2,050 | Yes |
Calculation:
Average intake (tracked days): 2,150 kcal/day
EMA weight slope (regression): -0.042 kg/day
Caloric impact: -0.042 x 7,700 = -323 kcal/day
Estimated TDEE: 2,150 - (-323) = 2,473 kcal
यह number आपका actual metabolism दिखाता है: NEAT, adaptation, genetics, सब कुछ। activity level guess करने की ज़रूरत नहीं।
Why 28 days
Daily weight पानी के retention, glycogen stores, भोजन के transit, और sodium intake की वजह से ±1 kg तक बदल सकता है। अगर कोई व्यक्ति 0.5 kg/week lose कर रहा है, तो expected 14-day signal ~1 kg होगा, जो noise floor से बस थोड़ा ऊपर है। 28-day window समान noise के मुकाबले ~2 kg signal पकड़ता है, यानी signal-to-noise ratio लगभग दोगुना।
Window length, EMA smoothing, और convergence behavior के बारे में अधिक जानने के लिए देखें Why Your TDEE Calculator Is Probably Wrong।
Layer 4: macro scaling
जब आप food entry log करते हैं, तो आप database की exact serving size नहीं खा रहे होते। Macro scaling वह arithmetic है जो सबको proportionally adjust करती है:
scaling factor = consumed amount / serving size
हर macro उसी factor से multiply होता है। यह linear scaling है।
Worked example. Oats का database entry: 100g serving, 389 kcal, 13.2g protein, 66.3g carbs, 6.9g fat. आपने 45g खाया।
factor = 45 / 100 = 0.45
calories: 389 x 0.45 = 175.1 kcal
protein: 13.2 x 0.45 = 5.9g
carbs: 66.3 x 0.45 = 29.8g
fat: 6.9 x 0.45 = 3.1g
यह सीधा है, लेकिन एक subtle बात है जो लोगों को confuse करती है: macros हमेशा calories के बराबर नहीं होते।
Atwater factors (protein के लिए 4 kcal/g, carbs के लिए 4 kcal/g, fat के लिए 9 kcal/g) approximations हैं। असली values food के अनुसार बदलती हैं। Fiber लगभग 2 kcal/g देता है, alcohol 7 kcal/g देता है, और इनमें से कोई standard macro नहीं है। जब कोई food database total calories और macros दोनों list करता है, तो वे अक्सर independent lab measurements से आते हैं। हर macro को एक decimal place तक round करने और Atwater factors लगाने के बाद, sum listed calories से serving पर 5-15 kcal अलग हो सकता है। पूरे दिन की logging में यह अंतर जुड़ता जाता है।
यह bug नहीं है। यह Atwater system की inherent imprecision है। Total calorie figure macro-derived calories के sum से अधिक accurate होती है, क्योंकि total को bomb calorimetry या proximate analysis से directly measure किया जाता है।
Layer 5: deficit math and body composition
Energy balance equation:
weight change = (intake - expenditure) / energy density of tissue
500 kcal/day का deficit, standard 7,700 kcal/kg उपयोग करने पर, 0.45 kg/week weight loss देना चाहिए। लेकिन यह number मानता है कि खोया हुआ पूरा weight fat है। ऐसा नहीं होता।
Forbes/Hall model यह predict करता है कि weight loss का कितना हिस्सा fat है और कितना lean tissue, इस आधार पर कि आपके शरीर में कितना fat है:
P-ratio = fat mass / (fat mass + 10.4)
P-ratio weight change का वह fraction है जो fat से आता है। 10.4 constant body composition studies से empirically derived है (Forbes 1987, Hall 2007 द्वारा refined)।
ज़्यादा body fat का मतलब higher P-ratio है, यानी loss का ज़्यादा हिस्सा fat होगा। कम body fat का मतलब lean tissue ज़्यादा sacrifice होगा। यही कारण है कि कम body fat percentage पर aggressive deficits उल्टा असर करते हैं: गणित आपके खिलाफ काम करता है।
Worked example. 22% body fat वाला 80 kg व्यक्ति, 500 kcal deficit पर:
Fat mass: 80 x 0.22 = 17.6 kg
P-ratio: 17.6 / (17.6 + 10.4) = 0.629
Mixed density: 0.629 x 7,700 + 0.371 x 1,800 = 5,510 kcal/kg
Daily loss: 500 / 5,510 = 0.091 kg/day
Daily fat loss: 0.091 x 0.629 = 0.057 kg/day
Weekly total: 0.64 kg
of which fat: 0.40 kg (63%)
of which lean: 0.24 kg (37%)
0.45 kg/week pure fat नहीं। असली number इस पर निर्भर करता है कि आप कहाँ से शुरू करते हैं।
35% body fat पर P-ratio 0.77 है: loss का लगभग 80% fat होता है। 12% body fat पर यह 0.54 तक गिर जाता है: लगभग आधा loss lean tissue का होता है। वही deficit, अलग body, अलग outcome।
P-Ratio कैलकुलेटर
शरीर संरचना
ऊर्जा विभाजन
अनुमानित कमी
Sources: Forbes, G.B. "Lean body mass-body fat interrelationships in humans." Nutrition Reviews, 1987. Hall, K.D. "Body fat and fat-free mass inter-relationships." British Journal of Nutrition, 2007.
आपको app में यह कहाँ दिखेगा
ये वे equations हैं जो Onyx Tenet के अंदर चल रही हैं। व्यवहार में ये ऐसे दिखती हैं।
TDEE card में formula estimate और adapted value दोनों दिखते हैं, साथ में confidence badge और data coverage stats होते हैं। TDEE Trajectory chart दिखाता है कि estimate समय के साथ कैसे बदला है। इस example में adaptive TDEE (2,163 kcal) formula estimate (2,172 kcal) से लगभग मेल खाता है, जिसकी पुष्टि 26 weigh-ins और 28 tracked days से होती है।

Weekly summary Layer 5 के energy balance equation को लागू करती है। Average intake (1,991 kcal) minus average TDEE (2,254 kcal) से daily deficit 263 kcal निकलता है, जो -0.24 kg/week weight change project करता है। नीचे breakdown में हर दिन के macros दिखते हैं।

हर number ऊपर दिए गए किसी न किसी equation से जुड़ता है। कोई black box नहीं।
Onyx Tenet में Adaptive TDEE मुफ़्त है। यह लगभग 4 हफ्तों की logging और weighing के बाद अपने आप activate हो जाता है। किसी subscription की ज़रूरत नहीं।