Nemaplot hyperspectral data analysis and population modellingEvaluation reinvented


Modelling with differential equations (ODE's) and parameter fitting
using the Excel® Solver in multiexperiment regression problems

Example: temperature driven growth dynamics of melon seedlings.

Summary: Based on example data of the growth of melon seedlings at different constant temperature levels an ODE model is introduced, commonly covering experiments with several factor levels. The example describes the plant growth pattern at temperature levels from 25°C to 37.5°C, parameter estimation of different types of model, which have been tested with respect to the underlying data, has been performed with the Solver. While the models introduced before have been covering the horizontal regression problem (with time), the extension of this chapter is dealing with the vertical regression problem, covering different factor levels, temperature levels, etc. Focus is the comparison of two step fitting procedures versus simultaneous fitting of all factor levels.

The growth model is based on the data of melon seedlings, grwon at different constant temperature levels (Pearl et al., 1934, data taken from "Models in Biology", 1994)1. While Brown & Rothery demonstrated only the fitting possibility of different type of the Richards function, the data structure offers much more complexity including much more interesting challenges. In short, the data can be summarised to: growth rate as well as plant height vary with temperature, not surprising. But, temperature levels range far into supra-optimal degrees (fig. 1).

To model the basic dynamics a simple nonlinear ODE growth model with a switch off function is introduced (eq. 1). In words, the plant grow with the rate r until time t approaches and exceeds the critical time tc.

nonlinear growth with switch off function
Eq. 1: ODE of a nonlinear growth function with switch off function

Case 1: Parameter estimation of a two stage procedure

Eq. 1 has been separately fitted to the data of each temperature level as an initial step. Fig. 1 demonstrates the result graphically. Eq. 1 is commonly applicable, the fits resulted in an individual parameter vector for each temperature level (table 1). Contrary to the conclusions of Brown & Rothery (1994)1 the introduced model fits the data with sufficient precision (R2>0.99), fig. 1.

single growth model fits
Fig. 1: Single fits of eq. 1 to the data of each temperature level
Table 1 presents the estimators, but initial values and the form parameter α has been set constant for all temperature levels.
Table. 1: resulting estimates of the ODE model
Parameter 20°C 25°C; 30°C 35°C 37,5°C
r 0.81 1.48 1.59 1.70 1.55
tc 8.28 4.63 4.39 3.95 4.15

Parameter r (for growth) and 1/tc (for development) are fitted to related temperature response functions in the second analysis step. Usually, the O'Neill function is used. Due to its complexity and numerous repetition on this web site we refer to a related report, page 2 . Four parameter to estimate (rmax, Q10, Topt & Tmax) and 5 measurements (=primary parameter taken from the first fit) fulfill just the statistical basics.

Oneill function
Fig. 2: Resulting temperature response functionen for growth (left y-axis) and development (right y-axis) from single fits for each temperature level
Model validation graph
Fig. 3: Recalculation of the model by the estimated response functions

Fig. 2 shows graphically the fits to the chosen temperature response function. The O'Neill function is suitable to functionalize the biological impact of temperature. Please notice the different scales of the y-axeses in fig. 2. In theory, this estimated response function represents the common parameter vector for all temperature levels. To validate the findings so far, setting the estimated rate and development parameters back into the basic model ended up with the trajectories shown in figure 3. The results demonstrate more than obvious the failure of this strategy.
Hence, an alternative solution is introduced.

Case 2: Analysing all temperature levels by simultaneous parameter estimation

Introducing the topic of simultaneous parameter estimation two additional basics are presented: Eq. 2 introduces the minimising problem to solve:
Residual calculation over time and treatment levels
Eq. 2: Residual calculation of the simultaneous solving problem

with a=5 temperature levels available, and ni the number of measurements at temperature level i. The residual sum of squares are minimised with respect to the data j of temperature level i and the function values at time ti,i with given parameter vector θ.
The basic model is extended for the simultaneous fitting as follows: (Eq. 3):

Exponentielles Wachstum mit Stoppterm
Eq. 3: ODEs of a growth function with switch function of factor level i

while the growth rate r times the F(T)i is determined by the O'Neil function at temperature i. The time to switch off growth is also controlled by temperature and defines the Biological Time, bulding the sums of the fraction of the development rate of each temperature level, again based on the given temperature response function. Growth stops when the Biological Time approaches and passes the critical time point Bc.

To keep the models as parsimonious as possible, the simultaneous parameter estimation has been started with one common temperature response function for both, growth and development. Fig. 4 depicts the result. The solver approximated to that apparent "optimum", indicating false model assumptions.

Failed temperature model
Fig. 4: Simultaneous parameter fitting of eq. 3 to the measurement data with one common temperature response function for growth and development

The less than poor result has not been surprising. The single fit results indicated already that growth and development respond different to changes in temperature (fig. 2). But before extending the model type it has to be tested if the Solver is able to identify an average model compared to the observations. That has not been the case. The model has been extended for each process by its own temperature response function, introducing the indices g (~growth) and d (~development). The results are shown in fig. 5 and 6.

Double temperature model
Fig. 5: simultaneous fitting of eq. 3 to the all measurement data including a temperature response function for both, grwoth and development
Temperature response functions
Fig. 6: resulting temperature response functions for growth and development derived from simultaneous parameter estimation compared to the two stage procedure (pale lines)

In fact, Solver is able to find a solution for the extended model, which takes into account all measurement data from five temperature level for the fitting. The resulting trajectories fits the data well (fig. 5). Temperature affects the plant dynamics ( here melon seedlings) twice with different intensity, each of the processes(growth, development) require a temperature response function of its own. Comparing the estimated parameters of the temperature response functions from eq. 3 with the single fit results (fig. 6) the differences are marginal, probably not different in statistical terms. But, due to the nested non-linearity of growth model and embedded temperature response function, the differences are massive. Table 2 summarises for several reasons the resulting parameter vector of eq. 3:

Tabelle 2: resulting parameter values of the ODE model with 2 temperature response functions
Parameter y0 rg Q10g Toptg Tmaxg rd Q10d Toptd Tmaxd Bc α
Estimates 0.1 1.625 1.949 32.284 89.335 1.054 1.832 33.018 100.0 4.536 2.003
  • The initial values y0,i for all temperature levels have been set.
  • The estimators of table 2 present an extremely narrow parameter vector (~ perhaps some kind of "perfect" solution?)), but, tiny variation in this vector caused massive deviance in the trajectories. It indicates a certain type of instability, but, the data define the boundaries, not the underlying mathematics.
  • Solver does not approximates the Tmax-values. The given, very large boundary values have been approached by the algorithm. But, in case of choosing smaller boundary values, the whole model does not approximate, means, even the unrealistic Tmax values have their reasons.
  • The simultaneous fitting of non-linear systems has to be seen superior with respect to result and information value compared to the two stage procedure, especially if transferable knowledge should identified and analysed.
  • The use of Solver gains precisions of the parameter estimates, which are much more meaningful than any hand fitting techniques.
  • The question about the temperature optimum is answered much more precise by the procedures introduced here.


A simple data set, ancient, even trivial, extremely challenging. It is in fact of no interest, if the original authors have been truly able to maintain constant temperatures throughout the experiment. Even nowadays somewhat tricky. No problem at all. The result includes the real, but unknown temperature pattern of the 1934 trials. In the beginning of this exercise it was not clear whether satisfying results would be achievable, which would be worth to be taken into account in this chapter about parameter estimation in ODEs. The data including the analysis procedure offers a potential solution about the relevant question in canopy dynamics, how much is growth, how much is development. Without stressing the interpretation too much, the analysis procedures demonstrate furthermore the possibility, how the iterative technique of working hypothesis, model links and Solver solutions (or similar methods in Matlab, Python, etc.) can be performed until plausible results are achieved (if there are any). Summarising the tested model combinations revealed different response functions for the same data set. Minor differences are caused by the fitting procedure, but a single consideration of the identified temperature response function is not feasible for any application, as the parameters changes with the underlying model. As shown in this example, nested non linear processes must be seen as an inseparably unit. Hence, using such temperature response functions in a predictive mode, the underlying model has to be taken into account as well. Both, the growth model and the temperature response function must be seen as one unit for any application.

1Models in Biology, Mathematics, Statistics and Computing, D. Brown & P. Rothery, (1994), Seite 50.

back Back to ODE bacteria growth Continue to ODE download offer forward

Locations of visitors to this page

Nemaplot uses cookies to provide its services. By continuing to browse the site you are agreeing to our use of cookies. More information (in German only)