Yorgunluk İndeksi Hesaplayıcı
EŞİK kitabının tezine dayanan özgün bir araç: antrenman yorgunluğunuzu tahmin edin.
Verilerinizi Girin
5
document.getElementById(‘fc-rpe’).oninput = function() {
document.getElementById(‘fc-rpe-val’).textContent = this.value;
};
function calculateFatigue() {
var hours = parseFloat(document.getElementById(‘fc-hours’).value);
var sleep = parseFloat(document.getElementById(‘fc-sleep’).value);
var rpe = parseInt(document.getElementById(‘fc-rpe’).value);
var hr = parseInt(document.getElementById(‘fc-hr’).value);
// Fatigue Index formula (Sporeus original)
// Training load factor: hours/7 normalized (0-1)
var loadScore = Math.min(1, hours / 14) * 30;
// Sleep deficit factor: 8h optimal
var sleepScore = Math.max(0, (8 – sleep) / 8) * 25;
// RPE factor
var rpeScore = (rpe / 10) * 25;
// HR elevation: every bpm above baseline 50 = fatigue signal
var hrScore = Math.max(0, (hr – 50) / 50) * 20;
var fatigueIndex = Math.round(loadScore + sleepScore + rpeScore + hrScore);
fatigueIndex = Math.min(100, Math.max(0, fatigueIndex));
var color, label, advice;
if (fatigueIndex < 30) {
color = '#2ecc71'; label = 'DÜŞÜK'; advice = 'Bugün yoğun antrenman yapabilirsiniz. Yük artışı için uygun gün.';
} else if (fatigueIndex < 55) {
color = '#f39c12'; label = 'ORTA'; advice = 'Orta yoğunlukta çalışabilirsiniz. Zone 2 koşu veya teknik çalışma önerilir.';
} else if (fatigueIndex < 75) {
color = '#e67e22'; label = 'YÜKSEK'; advice = 'Toparlanma günü. Hafif yürüyüş veya mobilite çalışması yapın.';
} else {
color = '#e74c3c'; label = 'ÇOK YÜKSEK'; advice = 'Tam dinlenme gerekli. Antrenman yapmayın, uyku ve beslenmeye odaklanın.';
}
var result = document.getElementById('fc-result');
result.style.display = 'block';
result.style.background = color + '15';
result.style.borderLeft = '4px solid ' + color;
result.innerHTML = '
‘
‘ +
‘
‘ +
‘
‘ +
‘
‘ + advice + ‘
‘;
}
Bu sonuçları anlamlandırmak için EŞİK’i okuyun.
Yorgunluk indeksi, merkezi vali teorisi ve algılanan çaba kavramlarına dayanır.