A Simple General Purpose Technique for Interfacing Between Computer Algebra and Numerical Analysis Systems
暂无分享,去创建一个
We commonly wish to solve a mathematical problem using a mixture of analytical and numerical techniques. An effective approach is to use a computer algebra system to perform the analytical stage (solution of simultaneous equations, substitution of variables, determination of higher derivatives and so on) and then to use a standard numerical analysis package for the numerical stage (solution of differential equations, fitting to experimental data and so on). Numerical analysis packages are invariably written in languages such as FORTRAN and Pascal, with a rather different input syntax to that of the computer algebra system. To achieve an interface it is necessary for the results from the computer algebra system to be output in a suitable form—FORTRAN expressions for example. Most computer algebra systems now provide fairly sophisticated packages to do this, for example REDUCE's GENTRAN package [Hearn, 1987; Gates, 1987]). There is a problem with this approach in that the computer algebra system may generate massive expressions (we have a practical example of 4000 terms in 20 variables). On evaluation with specific values in floating point by the numerical analysis package such expressions are prone to serious rounding, overflow and underflow errors. Work is in progress elsewhere to allow expressions to be evaluated minimising such errors. However we demonstrate an alternative approach, where we get the computer algebra system to evaluate the expressions analytically for the numerical analysis package as and when they are needed.
[1] H. Bock. Numerical Treatment of Inverse Problems in Chemical Reaction Kinetics , 1981 .
[2] B. Efron. Bootstrap Methods: Another Look at the Jackknife , 1979 .
[3] H. M. Sauro,et al. Solution of Some Equations in Biochemistry , 1988 .
[4] M. Bayram,et al. Using computer algebra to determine rate constants in biochemistry , 1993, Acta biotheoretica.