Revue de l Institut Francais du Petrole, Vol.48, No.5, 545-575, 1993
QUALIFICATION OF NUMERICAL SOFTWARE - APPLICATION TO A SOFTWARE FOR ANALYZING COMBUSTION IN SPARK-IGNITION ENGINES
For analyzing physical phenomena, numerical simulation is used more and more frequently. Starting with a mathematical model describing the phenomenon being analyzed, this simulation consists in creating a scientific computing program expressing this model by implementing the numerical methods required for solving it. Simulation is considered to be valid when the results its provides are in agreement with the results issuing from experimenting with the phenomenon. However, to conclude in the possible validity of the simulation, the numerical results provided by the computer must be previously validated. Yet, these results contain a computing error resulting from the propagation of round-off errors caused by the floating-point arithmetic used by the computer. They also contain an error coming from the uncertainties concerning the data of the problem. Hence it is first indispensable to assess the influence of these errors. This article is made up of two parts. The first part concerns the validation of numerical software results. After making a brief review of the floating-point arithmetic and highlighting the serious consequences it mnay have on the results obtained, we describe a probabilistic approach to the analysis of round-off errors, the CESTAC (Controle et Estimation STochastique des Arrondis de Calculs) method, from the standpoint of both its theoritical bases and its practical implementation. This method has given rise to a new arithmetic, called stochastic arithmetic, the principal properties of which are summed up. Likewise, a probabilistic approach estimating the influence of data errors is described. A software called CADNA (Control of Accuracy and Debugging for Numerical Applications) able to automaticaly implement stochastic arithmetic in any Fortran program, is described in this paper. When used in programs implementing the three classes of numerical computing methods (finite, iterative and approximate methods), it can detect numerical instabilities, control branchings and provide accuracy of the results considering the propagation of roundoff errors and data errors. It is an efficient tool for validating the results of numerical software. The second part is devoted to the use of the CADNA software for qualifying the simulation software, ANALCO (ANALyse de COmbustion) which analyses combustion in spark-ingnition engines. After a description of the normal model of the phenomenon being analyzed and after mathematical model has been deduced, the ANALCO simulation software is described. The results obtained with ANALCO, not using CADNA, reveal the disagreement between the simulation results and the experimental results. The use of the CADNA software eliminates the numerical instabilties, controls the execution of the program and demonstrates that the disagreement between the simulation results and the results observed is due only to numerical problems. Likewise, the CADNA software brings out both the validity range of the model in the light of the data errors and the data that make the mathematical model the most sensitive. From this analysis, we propose to improve the accuracy of the most influential data so as to widen the validity range of the model. This study shows that: (a) The ANALCO software not associated with CADNA; does not detect the end of the combustion; leads to results that are contrary to physical reality (oscillations of the mass of burned gases at the end of the combustion); provides values of the CA50 and HLC without giving their accuracy. (b) The ANALCO software associated with CADNA can be used: to analyse the influence of data uncertainty. Hence with current sensors, the CA50 and HLC are respectively provided with thre