(617d) Design and Validation of a Numerical Problem Solving Environment for Ordinary Differential Equations | AIChE

(617d) Design and Validation of a Numerical Problem Solving Environment for Ordinary Differential Equations


Shacham, M. - Presenter, Ben Gurion University of the Negev
Brauner, N. - Presenter, Tel-Aviv University
Elly, M. - Presenter, Intel Corp.

In the last decade, two distinct directions have emerged in the way Ordinary Differential Equation (ODE) solver software is being used (Enright, 2002). These include Large Scale Scientific Computation and Problem Solving Environments (PSE). Most practicing engineers and scientists as well as engineering and science students use numerical software for problem solving, while only a few very specific research applications require large scale computing. Consequently, this work is limited to PSEs. We have carried out an extensive study of the requirements for a PSE intended for solving ODE's arising in Chemical and Biochemical engineering applications. In this study we have collected a ?Library? of 100 sample problems and solved these problems which contain between one to 50 ordinary differential equations. Many of the problems were taken from the book of Cutlip and Shacham (2006), the rest from our previous publications (Brauner et al., 1996, Shacham et al. 1995, 2001) as well as from other sources. Mainly initial value problems were considered in this study. Polymath 6.1 (http://www.polymath-software.com) and MATLAB (http://www.mathworks.com) were used for solving the problems and validation the results. Stiff and non-stiff algorithms were used as needed. All the algorithms used included error estimation and step-size control in order to achieve solution of a pre-specified error tolerance. The specific needs for a PSE dealing with ODE's that were identified in this study were the following.

1. Providing Approximations to the Solution at "Off-Mesh" Points - Most ODE solvers provide approximations to the solution on a discrete, adaptively chosen mesh (determined by the step-size control algorithm). There are many applications where off-mesh values of the variables are needed. These applications include, for example, output of the results at equal intervals, plotting an oscillatory solution in a form of a continuous curve instead of "broken lines", output of the results for pre-specified values of the independent variable (as required in parameter estimation problems) and finding minimal and maximal values of variables. 2. Enabling Event Control - Often the value of an independent variable controls the solution process and the independent variable may reach a critical value (event) at an off-mesh point. A typical example of such situation in a biochemical problem, where the integration must be stopped when the amount of biomass reaches zero as the model equations are not valid for negative biomass values. 3. Dealing with Discontinuities - Most numerical algorithms assume continuity of the derivatives, but often there is a need to change the derivative function during the integration.(A typical example for this is an exothermic reactor which should be heated until the reaction starts and then should be cooled). Such a change may not be properly taken care by the integration algorithm and erroneous solution may result. 4. Implementation of Delays - Delays that often appear in control related problems may require off-mesh points of historical data for selected variables. 5. Validation of Approximate Solutions - Numerical solutions of ODE's are always considered "approximate", while the error estimation and step size control provide "some confidence in the numerical solution" (Shampine, 2004). In many cases further validation is required to bring the confidence to an acceptable level.

The identified needs required many improvements to the capabilities of traditional ODE solvers. Many of the requirements can be met if the solution is stored as a vector of piecewise interpolating polynomials. Such polynomials will enable the generation of off mesh points of the dependent variables both in the current integration step and in previous steps (history). It is also essential to stop and restart the integration at points of discontinuity, so that the integration algorithm has to deal only with continuous functions. The validity of the solutions can be verified by solving the same problem using several different algorithms and by considering the error tolerances and preparing "residual plots" of the results obtained by the different methods. The problem ?Library? can be of significant benefit to users and developers of ODE solvers for verifying the robustness and reliability of their solvers. This paper will provide a detailed comparison of the solutions that will address the most effective techniques for dealing with the requirements of the PSE environment for ODE's. The details of public access to the problem ?Library? via the Internet will be provided.


1. Brauner, N., Shacham, M. and M. B. Cutlip, ``Computational Results: How Reliable Are They? A Systematic Approach to Modal Validation'', Chem. Eng. Educ., 30 (1), 20-25 (1996). 2. Cutlip, M. B. and Shacham, M. Problem Solving In Chemical and Biochemical Engineering with Polymath, Excel and MATLAB. Prentice-Hall, Upper Saddle River, New-Jersey, 2006. 3. Enright W.H., "The design and implementation of usable ODE software", Numerical Algorithms 31 (1-4): 125-137 (2002) 4. Shacham, M., N. Brauner and M. Pozin, "Potential Pitfalls in Using General Purpose Software for Interactive Solution of Ordinary Differential Equations", Acta Chimica Slovenica, 42(1), 119(1995) 5. Shacham, M., N. Brauner and M. B. Cutlip, "Prediction and Prevention of Chemical Reaction Hazards ? Learning by Simulation", Chem. Eng. Educ., 35(4), 268-273(2001) 6. Shampine L.F., "Error estimation and control for ODEs", Journal of Scientific Computing 25 (1): 3-16 (2005)


This paper has an Extended Abstract file available; you must purchase the conference proceedings to access it.


Do you already own this?



AIChE Members $150.00
AIChE Graduate Student Members Free
AIChE Undergraduate Student Members Free
Non-Members $225.00