Round-off error
<templatestyles src="Module:Hatnote/styles.css"></templatestyles>
A round-off error,[1] also called rounding error,[2] is the difference between the calculated approximation of a number and its exact mathematical value due to rounding. This is a form of quantization error.[3] One of the goals of numerical analysis is to estimate errors in calculations, including round-off error, when using approximation equations and/or algorithms, especially when using finitely many digits to represent real numbers (which in theory have infinitely many digits).[4]
When a sequence of calculations subject to rounding error is made, errors may accumulate, sometimes dominating the calculation. In ill-conditioned problems, significant error may accumulate.[5]
Representation error
The error introduced by attempting to represent a number using a finite string of digits is a form of round-off error called representation error.[6] Here are some examples of representation error in decimal representations:
Notation | Representation | Approximation | Error |
---|---|---|---|
1/7 | 0.142 857 | 0.142 857 | 0.000 000 142 857 |
ln 2 | 0.693 147 180 559 945 309 41... | 0.693 147 | 0.000 000 180 559 945 309 41... |
log10 2 | 0.301 029 995 663 981 195 21... | 0.3010 | 0.000 029 995 663 981 195 21... |
∛ 2 | 1.259 921 049 894 873 164 76... | 1.25992 | 0.000 001 049 894 873 164 76... |
√ 2 | 1.414 213 562 373 095 048 80... | 1.41421 | 0.000 003 562 373 095 048 80... |
e | 2.718 281 828 459 045 235 36... | 2.718 281 828 459 045 | 0.000 000 000 000 000 235 36... |
π | 3.141 592 653 589 793 238 46... | 3.141 592 653 589 793 | 0.000 000 000 000 000 238 46... |
Increasing the number of digits allowed in a representation reduces the magnitude of possible round-off errors, but any representation limited to finitely many digits will still cause some degree of round-off error for uncountably many real numbers. Additional digits used for intermediary steps of a calculation are known as guard digits.[7]
Rounding multiple times can cause error to accumulate.[8] For example, if 9.945309 is rounded to two decimal places (9.95), then rounded again to one decimal place (10.0), the total error is 0.054691. Rounding 9.945309 to one decimal place (9.9) in a single step introduces less error (0.045309). This commonly occurs when performing arithmetic operations (See Loss of Significance).
See also
- Precision (arithmetic)
- Truncation
- Rounding
- Loss of significance
- Floating point
- Kahan summation algorithm
- Machine epsilon
- Wilkinson's polynomial
References
- ↑ Lua error in package.lua at line 80: module 'strict' not found..
- ↑ Lua error in package.lua at line 80: module 'strict' not found..
- ↑ Lua error in package.lua at line 80: module 'strict' not found..
- ↑ Lua error in package.lua at line 80: module 'strict' not found..
- ↑ Lua error in package.lua at line 80: module 'strict' not found..
- ↑ Lua error in package.lua at line 80: module 'strict' not found..
- ↑ Lua error in package.lua at line 80: module 'strict' not found..
- ↑ Lua error in package.lua at line 80: module 'strict' not found..
External links
- Roundoff Error at MathWorld.
- Lua error in package.lua at line 80: module 'strict' not found. ([1], [2])
- 20 Famous Software Disasterssv:Avrundningsfel