Predicting maximal strength

From JSXGraph Wiki
Revision as of 09:04, 18 August 2009 by A WASSERMANN (talk | contribs)
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

This little application tries to predict the maximal strength (1RM) based on a repetitions to fatigue (RTF) value.

The calculation is based on the so called KLW formula:

[math]\displaystyle{ 1RM = w\cdot(0.988+0.0104\cdot x+0.00190\cdot x^2-0.0000584\cdot x^3) }[/math]

The horizontal axis denotes the number of repetitions, the vertical axis denotes the ratio 1RM/RTF.

How to use this graphical calculator? Suppose you managed to do 9 repetitions with a weight of 80 kilograms. In the graphical calculator below you have to drag the black dot to r=9 and the blue dot to weight=80. Now, you can read of the 1RM prediction of 95.43.

References

  • W. Kemmler, D. Lauber, J. Mayhew, and A. Wassermann: "Predicting Maximal Strength in Trained Postmenopausal Woman", Journal of Strength and Conditioning Research 20(4), (2006), pp. 838-842.

The underlying JavaScript code

<jsxgraph width=700 height=500>
var brd = JXG.JSXGraph.initBoard('jxgbox',{boundingbox:[-1,1.8,30,0.8]});
bx = brd.createElement('axis', [[0,0.9], [1,0.9]], {});
by = brd.createElement('axis', [[0,0], [0,1]], {});

var w = brd.createElement('slider',[[24,0.92],[24,1.7],[0,50,200]],{name:'weight w',snapWidth:1});

f = function(x){ return (0.988+0.0104*x+0.00190*x*x-0.0000584*x*x*x); };

var c = brd.createElement('functiongraph',[
             f,
             1,22
             ], {strokeColor:'black', highlightStrokeColor:'black'}
             );

var r = brd.createElement('glider',[10,1,c],{name:'',fillColor:'black',strokeColor:'black',style:6});
var t = brd.createElement('text',[function(){return r.X()+1;}, 
                                  function(){return r.Y();}, 
                                  function(){return "repetitions r = " + Math.floor(r.X());}]);

brd.createElement('text',[5,1.6, 
                          function(){return "predicted 1RM = " + (w.Value()*f(Math.floor(r.X()))).toFixed(2);}],
                         {fontSize:'24px',strokeColor:'red'});

</jsxgraph>