I’m curious about the calculation methods used in weight loss calculators within WA, specifically, how the weight loss progress graph is generated.
When I input unrealistic data, I observe overfitting artefacts and some jaggedness (maybe a behaviour of InterpolatingFunction). Could NDSolve / WhenEvent with be involved here?

I’d like to know what lies behind these calculations, but understand that BMR models are used in the formulas:
FormulaData[{"BasalMetabolicRate", "Female", "Harris-Benedict"}]
FormulaData[{"BasalMetabolicRate", "Female", "Mifflin"}]
FormulaData[{"BasalMetabolicRate", "Male", "Harris-Benedict"}]
FormulaData[{"BasalMetabolicRate", "Male", "Mifflin"}]
and Energy Expenditure involved (for example):
FormulaData[{"PhysicalActivityEnergyExpenditure", "Male"}]
but how exactly are the graph and the regimen duration calculated? I want to get code for local calculations