0% found this document useful (0 votes)
13 views27 pages

S03 Numerical Methods 2024 Fall

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views27 pages

S03 Numerical Methods 2024 Fall

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 27

Nesting and Indentation

• Structures can be placed within other structures. For


example, the statements portion of a for loop can be
comprised of an if...elseif...else structure.
• For clarity of reading, the statements of a structure are
generally indented to show which lines of controlled are
under the control of which structure.

See quadroots.m

1
Anonymous Functions
• Anonymous functions are simple one-line functions created
without the need for an M-file
fhandle = @(arg1, arg2, ...) expression

• Anonymous functions can use


the values of variables
upon creation in the workspace.
2
Function Functions
• Function functions are functions that operate on other
functions which are passed to it as input arguments. The
input argument may be the handle of an anonymous, the
name of a built-in function, or the name of a M-file function.
• Using function functions will allow for more dynamic
programming.

3
>> vel=@(t) ...
sqrt(9.81*68.1/0.25)*tanh(sqrt(9.81*0.25/68.1)*t);

>> fplot(vel,[0 12])

>> vel=@(t,m,cd) ...


sqrt(9.81*m/cd)*tanh(sqrt(9.81*cd/m)*t);

>> funcavg(vel,0,12,60,68.1,0.25)

See funcavg.m

4
• A new approach for passing parameters:

>> funcavg(@(t) vel(t,68.1,0.25),0,12,60)

5
Part 1
Chapter 4
Roundoff and
Truncation Errors

PowerPoints organized by Dr. Michael R. Gustafson II, Duke University


All images copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Chapter Objectives
• Understanding the distinction between accuracy and
precision.
• Learning how to quantify error.
• Learning how error estimates can be used to decide when
to terminate an iterative calculation.
• 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.

7
Objectives (cont)
• 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 finite-difference approximations of the first and
second derivatives.
• Recognizing that efforts to minimize truncation errors can
sometimes increase roundoff errors.

8
Accuracy and Precision
• Accuracy refers to how closely a computed or measured
value agrees with the true value, while precision refers to
how closely individual computed or measured values
agree with each other.
a) inaccurate and imprecise
b) accurate and imprecise
c) inaccurate and precise
d) accurate and precise

9
Error Definitions
• True error (Et): the difference between the true value and
the 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.
• Relative error (t): the true fractional relative error expressed
as a percentage.

10
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.

11
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.

12
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.

13
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
14
Floating Point Ranges
• Values of -1023 and +1024 for e are reserved for special
meanings, so the exponent range is -1022 to 1023.
• The largest possible number MATLAB can store has
– f of all 1’s, giving a significand of 2-2-52, or approximately 2
– e of 111111111102, giving an exponent of 2046-1023=1023
– This yields approximately 21024=1.7997 x 10308

• The smallest possible number MATLAB can store with full


precision has
– f of all 0’s, giving a significand of 1
– e of 000000000012, giving an exponent of 1-1023=-1022
– This yields 2-1022=2.2251x 10-308

15
Floating Point Precision
• The 52 bits for the mantissa f correspond to about 15 to 16
base-10 digits. The machine epsilon - the maximum relative
error between a number and MATLAB’s representation of
that number, is thus
2-52=2.2204 x 10-16

16
Roundoff Errors with
Arithmetic Manipulations
• Roundoff error can happen in several circumstances other
than just storing numbers - for example:
– Large computations - if a process performs a large
number of computations, roundoff errors may build up to
become significant
– Adding a Large and a Small Number - Since the small
number’s mantissa is shifted to the right to be the same
scale as the large number, digits are lost
– Smearing - Smearing occurs whenever the individual
terms in a summation are larger than the summation
itself.
• (x+10-20)-x = 10-20 mathematically, but
x=1; (x+1e-20)-x gives a 0 in MATLAB!
17
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 i1)  v(t i )
 
dt t t i1  t i

• Example 2: The Taylor Series

18
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.

19
The Taylor Series
f x i1   f x i   f x i h 
' f ''
x i  h 
2 f (3)
x i  h 
3 f (n )
xi  n
h  Rn
 2! 3! n!

20
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.

21
Numerical Differentiation
• The first order Taylor series can be used to calculate
approximations to derivatives:
– Given: f (x i1 )  f (x i )  f ' (x i )h  O(h 2 )

f (x i1 )  f (x i )
– Then: 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.

22
Differentiation (cont)
• There are also backward difference and centered difference
approximations, depending on the points used:
• Forward:
f (x i1 )  f (x i )
f ' (x i )   O(h)
h
• Backward:
f (x i )  f (x i1)
f ' (x i )   O(h)
h
• Centered:
f (x i1 )  f (x i1)
f ' (x i )   O(h 2 )
2h

23
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.

24
Total Numerical Error

25
Total Numerical Error

26
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.

27

You might also like