1
Chapter 4: Roundoff and Truncation Errors
Department of Mechanical Engineering
Choi Hae Jin
School of Mechanical
Engineering
Chapter Objectives
Roundoff Error
Understanding how roundoff errors occur because digital computers
have a limited ability to represent numbers.
Understanding why floating-point numbers have limits on their range
and precision.
Truncation Error
Recognizing that truncation errors occur when exact mathematical
formulations are represented by approximations.
Knowing how to use the Taylor series to estimate truncation errors.
Understanding how to write forward, backward, and centered finitedifference approximations of the first and second derivatives.
Recognizing that efforts to minimize truncation errors can sometimes
increase roundoff errors.
School of Mechanical
Engineering
Error Definitions
True error (Et): the difference between the true value and
the approximation.
Et = True value approximation
Absolute error (|Et|): the absolute difference between the
true value and the approximation.
True fractional relative error: the true error divided by
the true value.
True fractional relative error = (true value approximation)/true value
Relative error (t): the true fractional relative error
expressed as a percentage.
t=
true fractional relative error * 100%
School of Mechanical
Engineering
Error Definitions (cont)
The previous definitions of error relied on
knowing a true value. If that is not the case,
approximations can be made to the error.
The approximate percent relative error can be
given as the approximate error divided by the
approximation, expressed as a percentage though this presents the challenge of finding the
approximate error!
For iterative processes, the error can be
approximated as the difference in values between
successive iterations.
School of Mechanical
Engineering
Using Error Estimates
Often, when performing calculations, we may not
be concerned with the sign of the error but are
interested in whether the absolute value of the
percent relative error is lower than a prespecified
tolerance s. For such cases, the computation is
repeated until | a |< s
This relationship is referred to as a stopping
criterion.
School of Mechanical
Engineering
Example 4.1 (1)
Q. How many terms are required in calculation of
e0.5(=1.648721...) using a Maclaurin series expansion,
in which the result is correct to at least 3 significant figure?
2
3
n
x
x
x
x
e 1 x
2! 3!
n!
Maclaurin series
Error criterion for 3 significant figure
s (0.5 10 2n )% (0.5 10 23 )% 0.05%
(Scarborough, 1966)
School of Mechanical
Engineering
Example 4.1 (2)
Terms
Results
t (%)
a (%)
1
2
3
4
5
6
1
1.5
1.625
1.645800000
1.648437500
1.648697917
39.3
9.02
1.44
0.175
0.0172
0.00142
33.3
7.69
1.27
0.158
0.0158
Scarborough Error Criterion is Conservative!!
7
School of Mechanical
Engineering
Roundoff Errors
Roundoff errors arise because digital computers
cannot represent some quantities exactly. There
are two major facets of roundoff errors involved
in numerical calculations:
Digital
computers have size and precision limits on their
ability to represent numbers.
Certain numerical manipulations are highly sensitive to
roundoff errors.
School of Mechanical
Engineering
Computer Number Representation
Bit : binary number (0/1)
Byte : 8 bit
Word
Basic unit for expressing number
ex) 16 bit or 2byte word
Decimal expression (positional notation)
8642.9 (8 10 3 ) (6 10 2 ) (4 101 ) (2 10 0 ) (9 10 1 )
Binary expression (positional notation)
101.1 (1 2 2 ) (0 21 ) (1 2 0 ) (1 2 1 ) 4 0 1 0.5 5.5
9
School of Mechanical
Engineering
10
Integer Representation
For an n bit word, the range would be from -2n-1 + 2n-1-1
The numbers above or below the range cant be represented
Ex. 16 bit word
(10101101) 2 27 25 23 22 20 128 32 8 4 1
(173)10
School of Mechanical
Engineering
11
Integer Representation
Upper limit, Lower limit and zero for 16 bit word
(0111111)2 214 213 22 21 20 32,767 215 1
(0000 000) 2 0
(1111111) 2 214 213 22 21 20 32,767 (215 1)
(1000 000) 2 32, 768
-32768 (-2n-1)< integer < 32767 (2n-1-1)
11
School of Mechanical
Engineering
12
Floating Point Representation
The number is expressed as s x be
where, s: the mantissa (significand), b:base, e: exponent
Ex.) Base-10 computer with a 5 bit word
S1d1.d 2 10
S0 d 0
Range = +9.9X10+9 ~ +1.0 X 10-9
12
School of Mechanical
Engineering
13
Roundoff Errors
Base-10 computer with a 5 bit word
S0 d 0
1 1 2
S d .d 10
2-5= 0.03125 3.1 x 10-2
roundoff error =
(0.03125-0.031)/0.03125 = 0.008 = 0.8%
Because of the limited number of bits for significand and exponent,
Roundoff errors is occur.
= 3.141593for 16-bit word computer
= 3.14159265358979 for 32-bit word computer
Although adding significand digits can improve the approximation,
such quantities will always have some roundoff error when stored
in a computer
13
School of Mechanical
Engineering
14
Computer Number Representation
By default, MATLAB has adopted the IEEE
double-precision format in which eight bytes (64
bits) are used to represent floating-point numbers:
n=(1+f) x 2e
The sign is determined by a sign bit
The mantissa f is determined by a 52-bit binary
number
The exponent e is determined by an 11-bit binary
number, from which 1023 is subtracted to get e
School of Mechanical
Engineering
15
Floating Point Ranges
The exponent range is -1022 to 1023.
(11 bits including 1 bit for sign)
The largest possible number MATLAB can store has
- +1.111111111 X 21023 = (2-2-52)X 21023
- This yields approximately 21024 = 1.7997 X 10308
The smallest possible number MATLAB can store with full precision
has
- +1.0000000000 X 2-1022
- This yields 2-1022 = 2.2251 X 10-308
-1.7997 X 10308
-2.2251 X 10-308
2.2251 X 10-308
1.7997 X 10308
Note: Hole was greatly narrowed.
15
School of Mechanical
Engineering
Maximum, Minimum & Machine epsilon in
MATLAB
16
The 52 bits for the significand f correspond to about 15 to 16 base-10
digits.
The machine epsilon in MATLABs representation of a number
is thus 2-52=2.2204 x 10-16
>> format long
>> realmax
ans =
1.797693134862316e+308
>> realmin
ans =
2.225073858507201e-308
>> eps
(machine epsilon)
ans =
2.220446049250313e-016
16
School of Mechanical
Engineering
17
Numerical Problems
1.557+0.04341 = 0.1557 x 101+ 0.004341 x 101
= 0.160041 x 101 = 0.1600 x 101
The excess number of digits were chopped off,
leading to error.
36.41 26.86 = 0.3641 x 102 - 0.3641 x 102
= 0.0955 x 102 0.9550 x 101
The zero added to the end.
0.7642 x 1030.7641 x 103 = 0.0001 x 103 = 0.1000
Three zeros are appended.
17
School of Mechanical
Engineering
18
Truncation Errors
Truncation errors are those that result from using
an approximation in place of an exact
mathematical procedure.
Example 1: approximation to a derivative using a
finite-difference equation:
dv v v(t i1 ) v(t i )
dt t
t i1 t i
Example 2: The Taylor Series
School of Mechanical
Engineering
19
The Taylor Theorem and Series
The Taylor theorem states that any smooth
function can be approximated as a polynomial.
The Taylor series provides a means to express this
idea mathematically.
( x x0 ) 2
( x x0 ) n
x x0
f ( x) f ( x 0 )
f ( x 0 )
f ( x 0 )
f
1!
2!
n!
(n)
( x 0 ) Rn
School of Mechanical
Engineering
20
The Taylor Series
''
(3)
(n )
x
x
xi n
f
f
f
'
2
3
i
i
h
h
h Rn
f x i1 f x i f x i h
2!
3!
n!
School of Mechanical
Engineering
21
Truncation Error
In general, the nth order Taylor series expansion
will be exact for an nth order polynomial.
In other cases, the remainder term Rn is of the
order of hn+1, meaning:
The
more terms are used, the smaller the error, and
The smaller the spacing, the smaller the error for a given
number of terms.
School of Mechanical
Engineering
22
Numerical Differentiation
The first order Taylor series can be used to
calculate approximations to derivatives:
Given:
f (x i1 ) f (x i ) f ' (x i )h O(h 2 )
f (x i1 ) f (x i )
f (x i )
O(h)
h
This is termed a forward difference because it
utilizes data at i and i+1 to estimate the derivative.
Then:
'
School of Mechanical
Engineering
23
Differentiation (cont)
There are also backward difference and centered
difference approximations, depending on the points used:
Forward:
f (x i1 ) f (x i )
f (x i )
O(h)
h
'
Backward:
f (x i ) f (x i1 )
f (x i )
O(h)
h
Centered:
'
f (x i1 ) f (x i1 )
O(h 2 )
f (x i )
2h
'
School of Mechanical
Engineering
24
Total Numerical Error
The total numerical error is the summation of the
truncation and roundoff errors.
The truncation error generally increases as the
step size increases, while the roundoff error
decreases as the step size increases - this leads to a
point of diminishing returns for step size.
School of Mechanical
Engineering
25
Other Errors
Blunders - errors caused by malfunctions of the
computer or human imperfection.
Model errors - errors resulting from incomplete
mathematical models.
Data uncertainty - errors resulting from the
accuracy and/or precision of the data.
School of Mechanical
Engineering