|
IV.2 Error Propagation
In the previous section it was shown that errors are inherent to numerical calculations. Unlike symbolic calculations, where the focus is on symbol manipulation, errors play an important role in numerical calculations. Errors may come from several sources:
modelling data computation
Modelling errors occur when assumptions on the model are not correct. For example, a classical approach is taken in a situation where a quantum approach is required, or a viscous component is left out of consideration. Data errors occur due to inaccuracies in the input data. The input data can be the result of (inaccurate) measurements or be the result of previous calculations. Computational errors occur due to inaccuracies in the computational procedure. Round-off due to finite precision is an example of a computational error. Other examples are truncation in which an infinite process is approximated by a finite process, like or . Also, bugs in the software or hardware errors fall in this category, but these will not be discussed here further.
The type of error that is of most interest to us is the last category: the computational error. This type of error is a necessary evil, responsible for almost never resulting in the exact answer. On the other hand, a high accuracy is feasible when desired, albeit at the expense of a large computational effort. In the previous section the definition was given for the absolute error as the difference of the exact value minus the approximated value, and for the relative error as the quotient of the absolute error and the exact value. From these definitions it follows immediately that the approximated value of an exact value can be written as , where is the relative error. It is important to distinguish data errors from computational errors. Let be some exact value, its machine representation (value with data error) and let be some computational procedure, which maps an input value to an output value. While would be the desired output value, the best result that can be obtained is . This is caused by data errors. The propagated data error is defined as
.
Just as the input value could not be represented exactly, the output value will suffer the same problem. Thus, even if the input value is exact, say , the output value will in general not be but . Instead of ending up with the result for the input value , the final result will be . The accumulated absolute error now becomes
.
The first term on the right hand side is called the computational error (). This type of error depends on the implementation. The second term on the right hand side is the propagated data error that depends on the condition of the problem. The condition will be discussed later in this section. The relation between these errors is shown in the picture below. The picture shows both the exact curve and the curve of computed values. The green dot indicates the intended (exact) function value, but due to different types of errors the result obtained is the one indicated by the red dot.
|
|