1. Home
  2. MICHAELISMENTEN procedure


Fits the Michaelis-Menten equation for substrate concentration versus time data (M.C. Hannah).


PRINT = string tokens What to print (model, deviance, summary, estimates, correlations, fittedvalues, monitoring); default mode, summ, esti
PLOT = string tokens What to plot (concentration, rate); default conc
WINDOW = scalar Window in which to plot the graphs; default 1
TITLE = text Title for the graphs; default 'Michaelis-Menten process'
TTIMES = text Title for the times axis; if this is unset, the identifier of the TIMES variate is used
TCONCENTRATIONS = text Title for the concentrations axis; if this is unset, the identifier of the CONCENTRATIONS variate is used if available, otherwise 'Concentration'
TRATES = text Title for the rates axis; if this is unset, the identifier of the RATES variate is used if available, otherwise 'Rate'
WEIGHTS = variate Weights for the observations, to use in the fit, if required; default * i.e. all observations with weight one


TIMES = variates Times at which substrate concentration data were measured
CONCENTRATIONS = variates Substrate concentration data
STEPLENGTHS = variates Variate with four values defining initial step lengths for the parameters S0, Vmax, Km and K1 (in that order)
INITIAL = variates Variate containing initial values for the parameters, similarly to STEPLENGTHS
RESIDUALS = variates Saves the residuals from each fit
FITTEDVALUES = variates Saves the fitted concentration values
ESTIMATES = variates Saves the parameter estimates
SE = variates Saves the standard errors of the estimates
VCOVARIANCE = symmetric matrix Saves the variance-covariance matrix of the estimates
OBSRATES = variates Saves reaction rates, calculated from the observed concentrations
FITRATE = variates Saves fitted reaction rates


The Michaelis-Menten equation, for biochemical reaction rate v, versus substrate concentration S

v(t) = dS(t) / dt = Vmax S(t) / ( Km + S(t) )

can be fitted in Genstat using


with v as the response variate, and 1/S as the explanatory variate. However, in practice, data are available only for substrate concentration S at time t, and not for the reaction rate v. Instead of attempting to derive rate data, it is better statistically to fit S(t) to the directly observed concentration data. The solution to the above differential equation, S(t), has a characteristic hockey-stick shape where the response decreases linearly initially, and then curves to become horizontal as it approaches the x-axis. However, no closed form expression for S(t) exists. The procedure thus uses Golicnik’s (2010) method to fit the model.

So, the procedure fits the curve S(t) to observed concentration versus time data, obtaining parameter estimates for Vmax and Km. It can also estimate the initial concentration S0, and an additive constant K1 representing the concentration of non-reactive substrate (i.e. a lower asymptote). This generalized Michaelis-Menten curve is given by

v(t) = dS(t) / dt = Vmax ( S(t) – K1 ) / ( Km + S(t) – K1 )

The substrate concentration data and the corresponding time values must be supplied, in variates, using the CONCENTRATIONS and TIMES parameters. Weights can be supplied using the WEIGHTS option.

You can supply initial values for the parameters, in a variate, using the INITIAL parameter. The variate should have four values, corresponding to the parameters S0, Vmax, Km and K1 (in that order). If INITIAL is unset, or if any of the values in the variate is missing, the procedure finds its own starting values for those not supplied. The STEPLENGTHS parameter can supply step lengths, again in a variate. You can fix a parameters at a specific value by specifying that value as the initial value, and defining a step length of zero. When doing this, it is usually simplest to fill the positions of the other, non-fixed, parameters with missing values, in both the INITIAL and STEPLENGTHS variates.

Printed output is controlled by the PRINT option. The settings all operate as in the FITNONLINEAR directive (which is used to fit the model). The default is to print a description of the model, the analysis summary and the estimated parameters.

The PLOT option controls the graphs that are plotted, with settings

    concentration to plot the curve fitted to the concentrations, and
    rate to plot the estimated reaction rates against the concentrations, and against time.

By default, PLOT=concentration.

The WINDOW option specifies the window to use for the graphs (default 1). The TITLE option can specify an overall title, and the TTIMES, TCONCENTRATIONS and TRATES options can specify titles for the axes for times, concentrations and rates, respectively.

You can save the fitted concentrations using the FITTEDVALUES parameter, and the residuals from the fit using the RESIDUALS parameter. The parameter estimates, their standard errors and variance-covariance matrix can be saved using the ESTIMATES, SE and VCOVARIANCE parameters. You can also save “observed” reaction rates (calculated from the observed concentrations) with the OBSRATES parameter, and fitted reaction rated with the FITRATES parameter.

You can use the post-regression directives, RCHECK, RKEEP etc., in the usual way to display or save additional output. You can also use an associated procedure, MMPREDICT, to predict S(t) and v(t) for a new time vector, given the parameter values estimated by MICHAELISMENTEN.




The procedure uses Golicnik’s (2010) method to fit the model.

Action with RESTRICT

The data variates must not be restricted.


Golicnik, M. 2010. Explicit reformulations of time-dependent solution for a Michaelis-Menten enzyme reaction model. Analytical Biochemistry, 406, 94-96.

See also


Procedure: MMPREDICT.

Commands for: Regression analysis.


" Read in concentration and time data."
READ            Concentration
  25.89   26.12   24.43   24.13   23.74   23.48
  23.33       *   21.82   20.94   19.13   17.77
  15.11   13.23   10.24    7.85    7.57    6.08
  4.53     3.40    3.35    3.26    2.72    2.67
  2.00     1.74   :
READ            Time
   0.00    0.60    4.70    5.00    5.50    6.00
   6.70    7.50    9.90   12.40   15.30   19.40
  25.30   30.10   37.10   43.40   45.30   48.70
  54.50   60.60   62.20   63.60   64.80   66.90
  72.60   81.10   :
" Fit standard Michaelis-Menten model with asymptote, K1, fixed at zero."
MICHAELISMENTEN [PLOT=concentration,rate] TIME=Time;\
                CONCENTRATION=Concentration; INITIAL=!(3(*),0); STEP=!(3(*),0)
" Fit generalized Michaelis-Menten model with asymptote, K1, estimated."
MICHAELISMENTEN [PLOT=concentration,rate] CONCENTRATION=Concentration; TIME=Time 
" Predict the curves at new times using companion procedure MMPREDICT."
RKEEP           ESTIMATES=final
VARIATE         [VALUES=0...90] newTimes
MMPREDICT       [PLOT=concentration,rate] PARAMETER=final; TIME=newTimes;\
                CONCENTRATIONS=predConc; RATES=predRate
PRINT           newTimes,predConc,predRate; DECIMALS=0,4,4
Updated on March 7, 2019

Was this article helpful?