Age adjustments for lifting weights: Comparisons and 1RM

[2021-10-18: Added Sinclair’s Bodyweight Correction formula]

Since  almost exactly 5 years, I have been strength training (Powerlifting), e.g. deadlift, squat, bench press, etc. As I’m not very strong, I was very happy to learn that there are formulas for age adjustments of the weights lifted which combines weight, repetitions and age . 

Together with formulas for converting the number of repetitions of a weight lifted to estimating a 1RM (estimated one repetition maximum),  I use this  for:
*  for comparing different number of repetition for an exercise.  
*  how much a PR (Personal Record) corresponds to - say - a 30 years old person of the same body weight as me

Below are some different (and mostly real world) “applications” for these kind of comparisons.

The formulas for estimating 1RM  are from the book Maud & Foster  "Physiological Assessments of Human Fitness" (2nd ed), page 140,  as well as Wikipedia page https://en.wikipedia.org/wiki/One-repetition_maximum . The age adjustment coefficients (e.g. 1.514 for age 60) are from “Meltzer-Faber Age coefficients”: http://www.mastersweightlifting.org/forms/meltzer.htm

The text that inspired all this was Brooks Kubik’s post “The Difference Between Age 30 and Age 60” (or rather a similar text in one of this books): http://dinosaurtraining.blogspot.se/2016/12/the-difference-between-age-30-and-age-60.html
“””
What’s the difference between a serious, hard charging weight trainer at age 30 and the same trainee at age 60?

And to clarify, I’m talking about someone who keeps training from age 30 to age 60 -- not someone who stops training somewhere along the road.

The difference is 1.514.

That’s the difference in the age-coefficient formula used in Masters Weightlifting to compare the relative performance of athletes of different ages.

The coefficient for a 30 year old lifter is 1.00.
“””

Notes:
* Here I compare not only with one person of different ages, but also with two persons of different ages.
* However, all these calculations assume that the person(s) in the comparison are of the same weight. See below for some sites that also includes body weight and gender in the comparisons.

Age adjustment coefficients
From “Meltzer-Faber Age coefficients”: http://www.mastersweightlifting.org/forms/meltzer.htm

coeffs ={
{30,1},{31,1.016},{32,1.031},{33,1.046},{34,1.059},{35,1.072},{36,1.083},{37,1.096},{38,1.109},{39,1.122},{40,1.135},{41,1.149},{42,1.162},{43,1.176},{44,1.189},{45,1.203},{46,1.218},{47,1.233},{48,1.248},{49,1.263},{50,1.279},{51,1.297},{52,1.316},{53,1.338},{54,1.361},{55,1.385},{56,1.411},{57,1.437},{58,1.462},{59,1.488},{60,1.514},{61,1.541},{62,1.568},{63,1.598},{64,1.629},{65,1.663},{66,1.699},{67,1.738},{68,1.779},{69,1.823},{70,1.867},{71,1.91},{72,1.953},{73,2.004},{74,2.06},{75,2.117},{76,2.181},{77,2.255},{78,2.336},{79,2.419},{80,2.540},{81,2.597},{82,2.702},{83,2.831},{84,2.981},{85,3.153},{86,3.352},{87,3.58},{88,3.843},{89,4.145},{90,4.493}};
ListPlot[coeffs,AxesLabel->{"Age","Coefficient"}]
Transpose[coeffs];
ageCoeffs =Thread[%[[1]]->%[[2]]]//Association;

Here are some explorations of this.  Though I have not pursued the model fits more.

myAge = 64 (* as of writing, soon 65 *)
ageCoeffs[myAge]
fit1 = LinearModelFit[coeffs,x,x]
fit1["ANOVATable"]
Plot[fit1[x],{x,30,90}]
fit2 = NonlinearModelFit[coeffs,a + Exp[x b],{a,b},x]
fit2["ANOVATable"]
Plot[fit2[x],{x,30,90}]
fit3 = NonlinearModelFit[coeffs,a + b*x+c*x^2 + d*x^3,{a,b,c,d},x]
fit3["ANOVATable"]
ListPlot@Table[{fit3[x],ageCoeffs[x]},{x,30,90,1}]

1 RM formulas
The following  formulas for calculating 1RM (1 repetition max)  from a lifted weight and number of repetitions are from https://en.wikipedia.org/wiki/One-repetition_maximum  .  
Note: There are two different versions of  Epley’s formula, and I prefer the first one.

brzycki[weight_,reps_] :=  weight * (36./(37-reps))
epley[weight_,reps_] := 0.033*weight *reps + weight;
epley2[weight_,reps_] := weight (1+reps/30.);
oconner[weight_,reps_] := weight*(1+0.025*reps);
lombardi[weight_,reps_] := weight * reps^0.10;
mcglothin[weight_,reps_] := 100*weight/(101.3 - 2.67123*reps);
wathan[weight_,reps_] := 100*weight/(48.8+ 53.8 Exp[-0.075*reps]);

(* Set default to Epley formula and a 30 year old person *)
oneRM[weight_, reps_,age_:30,method_:epley] := Module[{rm=method[weight,reps]},
{rm,rm*ageCoeffs[age]}
]

Some examples/applications

Here are some applications of using these formulas. It is mostly to compare some weight + repetitions either for my self to compare what a 30 years old person should take (or a friend of different age), or how many repetitions of a weight corresponds to some other number of repetitions for some other weight.

Here’s a  personal record earlier this year: 117kg (deadlift) for 1 repetition, as a  64 years old.

What is the 1RM using Epley’s formula? The Age adjusted weight is about 197kg, i.e. what a 30 years old would have to lift be “as strong as” I am.

As mentioned above,  all these calculations assume that the two persons have the same body weight.

oneRM[117,1,myAge][[2]]

Here we test some different PR’s from the last year (also in deadlift), and use shows other 1RM methods as well. As can be seen, the methods might give quite different results.  Epley’s method  seems to be one of the most used formulas.

For example, 5 repetitions of 102kg for a 64 years old corresponds to 183kg using Brzycki’s formula.

methods = {brzycki,epley,epley2,oconner,lombardi,mcglothin,wathan};
"112 kg for 1 repetition:"
{#, oneRM[112,1,63,#][[2]]}& /@ methods // Column
"102 kg for 5 repetition:"
{#, oneRM[102,5,63,#][[2]]}& /@ methods // Column
"107 kg for 3 repetition:"
{#, oneRM[107,3,63,#][[2]]}& /@ methods // Column

Below is a plot showing Brzycki’s 1RM formula for 1..15 repetitions for 52kg..67kg.

Table[brzycki[weight,reps],{weight,52,67},{reps,1,15}] ;
ListLinePlot[%,AxesLabel->{"Reps","Weight"}]

How much must I (at age 64) bench press with 10 repetition to be “as strong” as a 30 years old person  bench pressing 70kg x 5:  37.6kg . 
Note: a 30 years old has the age coefficient 1, so 30 can be seen as the “baseline age”.

Solve[epley[x,10]*ageCoeffs[myAge] == epley[70,5]*ageCoeffs[30],x]

But let' s take a real case . 77 x 5 was actually the record of my (now former) colleague S who was then 37 yo. This corresponds to 49.3kg for me, then 60 years old. (Due to my shoulder problem I cannot lift 46kg in bench press, and my physio therapist has  forbidden me to do any bench press at all.)

Solve[epley[x, 5]*ageCoeffs[60] == epley[70, 5]*ageCoeffs[37], x]

What is the coefficient for 10 vs 5 repetitions?  10 repetitions corresponds to 1.14163 x 5 repetitions (using Epley’s formula)

Reduce[epley[x, 10] == epley[y, 5], {x, y}]

What would S (then aged 37) take in deadlift for 5 repetitions to match my 52kg x 10 at age 60?  He would have to lift 82.0kg x 5.
What would S (now 41 yo) lift in deadlift for 1 repetitions to match my 117kg x 1 from earlier this year (age 64)?  He  would have to lift one repetition of 165.9kg (which he don’t since he is not doing any deadlifts at all).

Solve[epley[52, 10]*ageCoeffs[60] == epley[x, 5]*ageCoeffs[37], x]
Solve[epley[117, 1]*ageCoeffs[myAge] == epley[x, 1]*ageCoeffs[41], x]

What should  S (aged 37)  take in Dumbbell row  x 5 to match my 22.5 kg x 12? : 40.1kg

Solve[epley[22.5, 12]*ageCoeffs[myAge] == epley[x, 5]*ageCoeffs[37], x]

What is my age adjusted value of 22.5kg x 10 (in biceps curl)? 48.7kg
What is my age adjusted value of 37.5kg x 5 (in dumbbell row)? 71.2kg

epley[22.5, 10]*ageCoeffs[myAge]
epley[37.5, 5]*ageCoeffs[myAge]

What corresponds to  37.5kg x 10 (dumbbell row) in 5 repetitions? 42.8kg
Age adjusted: 69.7kg

Solve[epley[37.5, 10] == epley[x, 5], x]
Solve[epley[37.5, 10]*ageCoeffs[myAge] == epley[x, 5], x]

How much should I (age adjusted) take x 10 to correspond to a 1 RM of 100kg (of a 30 yo)? 46.2kg
Not age adjusted:  75.2kg

Solve[epley[x, 10]*ageCoeffs[myAge] == 100, x]
Solve[epley[x, 10] == 100, x]

How much should I (age adjusted and not age adjusted) take x 12 to correspond to a 1 RM on 100 kg? 
Age adjusted: 44.0kg
Not age adjusted :  71.6kg

Solve[epley[x, 12]*ageCoeffs[myAge] == 100, x]
Solve[epley[x, 12] == 100, x]

What is 1RM for 30kg x 10? 39.9kg
Age adjusted? 65.0kg

xx = epley[30, 10]
xx*ageCoeffs[myAge]

How much should I (age adjusted) lift in 1 repetition that correspond to a 1 RM on 200 kg?  118.9kg 
(Almost there!)

Solve[epley[x, 1]*ageCoeffs[myAge] == 200, x]

What  corresponds to 47 kg with 10 reps if doing 6 reps? 52.2kg
What  corresponds to 52 kg with 10 reps if doing 6 reps? 57.8kg

Solve[epley[47, 10] == epley[x, 6], x]
Solve[epley[52,10]==epley[x,6],x]

Person P (age 30) lift 30 kg in bench press x 10. How much does that corresponds to 1RM and for a 60 yo?

epley[30, 10]
epley[30,10]*ageCoeffs[60]

Person P (still age 30) lifted 77kg in deadlift x 6. What does that corresponds to in 1RM (one repetition) and age adjusted (40 yo)?

epley[77, 6]
epley[77,6]*ageCoeffs[40]

Person P took 77kg in deadlift x 6. What does that correspond to x 12?

Solve[epley[77, 6] == epley[x, 12], x]

How much should I take x 6 to correspond to 67kg x 12 ?

Solve[epley[x, 6] == epley[67, 12], x]

What is the relation between X x 6 reps and Y x 12 reps?

Solve[epley[x, 6] == epley[y, 12], y]

What is the relation between weight and repetitions: What does the weight xw x xr corresponds to for yr reps?

Solve[epley[xw,xr]== epley[yw,yr],{yr}]
Solve[epley[xw,xr]== epley[yw,yr],{xr}]
Solve[epley[xw,xr]== epley[yw,yr],{xw}]
Solve[epley[xw,xr]== epley[yw,yr],{yw}]

1 RM vs reps and weight
Here are some relations between  weight lifted, number of repetitions, and 1RM. Basically it’s just the 1RM formula (Epley’s) in different forms.

Solve[epley[xw,xr] == oneRM,{xw}]
Solve[epley[xw,xr] == oneRM,{xr}]
Solve[epley[xw,xr] == oneRM,{oneRM}]

Sinclair’s Bodyweight Correction formula
“The Sinclair Coefficients for the Olympiad January 1, 2017 to December 31, 2020 
For Men’s and Women’s Olympic Weightlifting”
“””
The details about the formula http://www.iwf.net/downloads/?did=993
                                   http://www.iwf.net/downloads/?did=994
“””
The Answer to the question “What would be the total of an athlete weighing x kg if he/she were an athlete in the heaviest category of the same level of ability?” is given by the formula:
     Actual Total x Sinclair Coefficient = Sinclair Total
“””
via http://www.iwf.net/downloads/?category=68 
via http://www.mastersweightlifting.org/formulas.html

(* bodyWeight in kg *)
sinclairCoeff[bodyWeight_,gender_] := Module[{A,B,X,coeff},
A = If[gender=="male", 0.751945030,0.783497476];
B = If[gender =="male",175.508, 153.655];
X = Log10[bodyWeight/B];
coeff = If[bodyWeight <= B, 10^(A*X^2),1];
coeff
]

w = 117
epley[117,1]* ageCoeffs[64]
epley[117,1]* sinclairCoeff[76,"male"]
epley[117,1]* ageCoeffs[64]*sinclairCoeff[76,"male"]

* 117kg x 1 with Sinclair body weight adjustment: 147.0kg
* 117kg x 1 with both age adjustment and body weight adjustment is: 239.6kg

How much must S (aged 41, body weight 90, male) lift x 1 in order to match my 117 x 1 lift (age 64, body weight 76, male)

1) Without age adjustments, just body weight adjustments: S must lift 127.1kg since he weighs 14kg more than me
2) With age adjustment: S must do an (age adjusted) lift of 180.2kg

117* sinclairCoeff[76,"male"]
117* ageCoeffs[64]*sinclairCoeff[76,"male"]

Solve[epley[117,1]* sinclairCoeff[76,"male"] == 
epley[x,1]* sinclairCoeff[90,"male"],x]

Solve[epley[117,1]* sinclairCoeff[76,"male"]*ageCoeffs[64] == 
epley[x,1]* sinclairCoeff[90,"male"]*ageCoeffs[41],x]

Solve[epley[117,1]* ageCoeffs[64] == epley[x,1]* ageCoeffs[41],x]

S took 77kg x 5 in bench press when he was 37 yo weighing 90kg. How much would I have lift x 5 when 60 yo and with a body weight of 76kg? I would have to lift 51.3kg.

Solve[epley[x,5]* sinclairCoeff[76,"male"]*ageCoeffs[60] == epley[77,5]* sinclairCoeff[90,"male"]*ageCoeffs[37],x]

Say a 30 year old man with a body weight of 100kg lift 350kg x 1 in deadlift. What would I lift to be “as strong as” him? I must take 189.5kg!
Say a 30 year old man with a body weight of 100kg lift 250kg x 1 in deadlift. What would I lift to be “as strong as” him? I must take 135.4kg!

Solve[epley[x,1]* sinclairCoeff[76,"male"]*ageCoeffs[64] == 
epley[350,1]* sinclairCoeff[100,"male"]*ageCoeffs[30],x]
Solve[epley[x,1]* sinclairCoeff[76,"male"]*ageCoeffs[64] == epley[250,1]* sinclairCoeff[100,"male"]*ageCoeffs[30],x]

Wolfram | Alpha

Here is an example of Wolfram|Alpha for 1RM conversion . It uses Epley’s 1RM formula.

It would be really great if these queries would also include age adjustments and perhaps also some assessment. Here’s the above query to the Wolfram|Alpha site: https://www.wolframalpha.com/input/?i=weight+lifting+102+kg+for+5+repetitions+male+64+yo

Interestingly, it has support for showing the energy expenditure: https://www.wolframalpha.com/input/?i=weight+lifting+102+kg+for+5+repetitions+male+64+yo&assumption=%7B%22F%22%2C+%22WeightLiftingRepetitions%22%2C+%22H%22%7D+-%3E%22182+cm%22&assumption=%7B%22F%22%2C+%22WeightLiftingRepetitions%22%2C+%22W%22%7D+-%3E%2276+kg%22&assumption=%22FSelect%22+-%3E+%7B%7B%22WeightLiftingRepetitions%22%7D%7D&assumption=%7B%22FP%22%2C+%22WeightLiftingRepetitions%22%2C+%22exercise%22%7D+-%3E+%22Deadlift%22

Sites with comparison of age, body weight, gender, and strength level 
Note: In this section, I leave the Mathematica related stuff and recommend two great sites which has a lot of interesting information about comparing lifting given several parameters. 

The calculations in the previous sections just involve lifted weight, number of repetitions and age. This is a bit simplistic since there are at least two more variables that matters:
* body weight
* gender

(One other relevant parameter would be the number of years lifting.)

Then there is also a matter of assessment of the lifts: OK, I’ve manage to lift X kg for Y repetitions in deadlift and I am A years old, is that good in comparison to other lifters? In short: How strong am I for my body weight, age and gender?

There are two great sites which includes strength standards for different exercises which includes age adjustments as well as body weight and gender .
 
 * StrengthLevel : exercises, age, body weight, gender, strength level
My favorite site is StrengthLevel : https://strengthlevel.com/ which has a huge database of different lifts and compares not only weights, repetitions, and age  but also body weights . And it calculates a "strength level"  for each a lift . 

Here are my recorded lifts : https://strengthlevel.com/9153-hakankjellerstrand .

My best deadlift (1 x 117 kg at age 64, with a body weight 75.8 kg),  was graded as 66 %, i . e . stronger than 66 % of the lifters in the database after adjusting for body weight and age. Not too bad. See the full session that day:  https://strengthlevel.com/9153-hakankjellerstrand/2021/06/12 .

Unfortunately, right now I am just doing rehab lifts,  since I have problem with left shoulder (hence no bench press) and a golf elbow in my right arm.  But it' s getting better ...

One can play with this using the "Strength standards" calculations, and checking  https://strengthlevel.com/strength-standards  for different exercises .
    
Note :  the age coefficients used by the StrengthLevel site is not one of the one used in this notebook . I' m not sure exactly what formula they use .
      
* Lon Kilgore' s comparisons : exercises, body weight, age interval, gender and strength level
Lon Kilgore has created strength standards for different exercises for different body weights, age intervals and gender. 

The site  http://lonkilgore.com/freebies-things-to-buy.html  contains PDF files with strength standards for different exercises .  The strength levels are "Physical inactive", "Physically active", "Novice trainee", "Intermediate trainee", "Advanced trainee", and "Elite trainee" .
  
For example, here' s the strength standards for deadlift (in kg) : http://lonkilgore.com/freebies/DLFTSTDS-Metric.pdf (a large PDF file) which shows that a person in the age interval of 60 - 69 with a body weight of 75 kg (my current weight is 76 kg) that lifts 117 kg in deadlift is an Intermediate Trainee.