Numerical Analysis. Yutian LI. 2018/19 Term 1 CUHKSZ. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 1 / 41

Similar documents
Mathematical preliminaries and error analysis

Computer Arithmetic. MATH 375 Numerical Analysis. J. Robert Buchanan. Fall Department of Mathematics. J. Robert Buchanan Computer Arithmetic

Notes for Chapter 1 of. Scientific Computing with Case Studies

Chapter 1 Mathematical Preliminaries and Error Analysis

Round-off Errors and Computer Arithmetic - (1.2)

Floating Point Number Systems. Simon Fraser University Surrey Campus MACM 316 Spring 2005 Instructor: Ha Le

Can You Count on Your Computer?

Chapter 1: Introduction and mathematical preliminaries

Arithmetic and Error. How does error arise? How does error arise? Notes for Part 1 of CMSC 460

Chapter 1 Mathematical Preliminaries and Error Analysis

Elements of Floating-point Arithmetic

Numerical Analysis and Computing

Floating-point Computation

Chapter 1 Computer Arithmetic

Elements of Floating-point Arithmetic

Chapter 1: Preliminaries and Error Analysis

Introduction to Scientific Computing Languages

Notes on floating point number, numerical computations and pitfalls

Introduction to Scientific Computing Languages

Numerical Methods - Lecture 2. Numerical Methods. Lecture 2. Analysis of errors in numerical methods

Lecture 7. Floating point arithmetic and stability

Introduction CSE 541

Introduction and mathematical preliminaries

Jim Lambers MAT 610 Summer Session Lecture 2 Notes

Chapter 1 Error Analysis

EAD 115. Numerical Solution of Engineering and Scientific Problems. David M. Rocke Department of Applied Science

Math 411 Preliminaries

1 ERROR ANALYSIS IN COMPUTATION

Mathematics for Engineers. Numerical mathematics

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

Introduction to Numerical Analysis

Semester Review Packet

Tu: 9/3/13 Math 471, Fall 2013, Section 001 Lecture 1

Introductory Numerical Analysis

CME 302: NUMERICAL LINEAR ALGEBRA FALL 2005/06 LECTURE 5. Ax = b.

Introduction to Numerical Analysis

Numerical Methods. Dr Dana Mackey. School of Mathematical Sciences Room A305 A Dana Mackey (DIT) Numerical Methods 1 / 12

Numerical Methods in Physics and Astrophysics

Root Finding For NonLinear Equations Bisection Method

FLOATING POINT ARITHMETHIC - ERROR ANALYSIS

FLOATING POINT ARITHMETHIC - ERROR ANALYSIS

Compute the behavior of reality even if it is impossible to observe the processes (for example a black hole in astrophysics).

Parent Guide. Number System. Diocese of Cleveland

MAT 460: Numerical Analysis I. James V. Lambers

INTRODUCTION TO COMPUTATIONAL MATHEMATICS

Numerical Mathematical Analysis

Numerical Algorithms. IE 496 Lecture 20

MATH ASSIGNMENT 03 SOLUTIONS

Lecture Notes 7, Math/Comp 128, Math 250

Numerical Methods - Preliminaries

2. Review of Calculus Notation. C(X) all functions continuous on the set X. C[a, b] all functions continuous on the interval [a, b].

Essential Mathematics

Chapter 4 Number Representations

Tenth Bit Bank Mathematics Real Numbers

NUMERICAL MATHEMATICS & COMPUTING 6th Edition

Introduction to Finite Di erence Methods

Binary floating point

Math 411 Preliminaries

Complex Numbers: Definition: A complex number is a number of the form: z = a + bi where a, b are real numbers and i is a symbol with the property: i

Applied Numerical Analysis (AE2220-I) R. Klees and R.P. Dwight

ALGEBRA+NUMBER THEORY +COMBINATORICS

Midterm Review. Igor Yanovsky (Math 151A TA)

Introduction to Scientific Computing

ECS 231 Computer Arithmetic 1 / 27

1 Floating point arithmetic

Lesson 7.1 Polynomial Degree and Finite Differences

Math 471. Numerical methods Introduction

Notes: Introduction to Numerical Methods

Homework and Computer Problems for Math*2130 (W17).

Lecture 1. Introduction to Numerical Methods. T. Gambill. Department of Computer Science University of Illinois at Urbana-Champaign.

ACM 106a: Lecture 1 Agenda

CHAPTER EIGHT: SOLVING QUADRATIC EQUATIONS Review April 9 Test April 17 The most important equations at this level of mathematics are quadratic

Romberg Integration and Gaussian Quadrature

We say that a polynomial is in the standard form if it is written in the order of decreasing exponents of x. Operations on polynomials:

1 Solutions to selected problems

x x2 2 + x3 3 x4 3. Use the divided-difference method to find a polynomial of least degree that fits the values shown: (b)

SECTION 9.2: ARITHMETIC SEQUENCES and PARTIAL SUMS

Math 110 (S & E) Textbook: Calculus Early Transcendentals by James Stewart, 7 th Edition

Numerical Methods. King Saud University

2.29 Numerical Fluid Mechanics Fall 2011 Lecture 2

Lecture 28 The Main Sources of Error

How do computers represent numbers?

Chapter P. Prerequisites. Slide P- 1. Copyright 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

MyMathLab for School Precalculus Graphical, Numerical, Algebraic Common Core Edition 2016

Chapter Generating Functions

QUADRATIC PROGRAMMING?

MTH303. Section 1.3: Error Analysis. R.Touma

Homework 2 Foundations of Computational Math 1 Fall 2018

INTRODUCTION, FOUNDATIONS

2. Motivation and Introduction: Numerical Algorithms in CSE Basics and Applications

3 Polynomial and Rational Functions

1.1 COMPUTER REPRESENTATION OF NUM- BERS, REPRESENTATION ERRORS

Accurate polynomial evaluation in floating point arithmetic

THE TEACHER UNDERSTANDS THE REAL NUMBER SYSTEM AND ITS STRUCTURE, OPERATIONS, ALGORITHMS, AND REPRESENTATIONS

Algebra II with Trig 3 rd Nine Weeks Pacing Guide Grade 11

Solution of Algebric & Transcendental Equations

Mathematics Review. Sid Rudolph

The numerical stability of barycentric Lagrange interpolation

1. Motivation and Introduction. Numerical Algorithms in Computer Science Basics and Applications

Analysis of California Mathematics standards to Common Core standards Algebra I

Transcription:

Numerical Analysis Yutian LI CUHKSZ 2018/19 Term 1 Yutian LI (CUHKSZ) Numerical Analysis 2018/19 1 / 41

Reference Books BF R. L. Burden and J. D. Faires, Numerical Analysis, 9th edition, Thomsom Brooks/Cole, 2010. At K. E. Atkinson, An Introduction to Numerical Analysis, 2nd edition, John Wiley, 1989. DMN D. Kahaner, C. Moler and S. Nash, Numerical Methods and Software, Prentice-Hall, 1989. St G. W. Stewart, Afternotes on Numerical Analysis, SIAM, 1996. Software Matlab Python Julia Yutian LI (CUHKSZ) Numerical Analysis 2018/19 2 / 41

Contents 1 Introduction 2 Nonlinear Equations 3 Interpolation 4 Numerical Integration 5 Numerical Differentiation 6 Linear System of Equations Yutian LI (CUHKSZ) Numerical Analysis 2018/19 3 / 41

Chapter 1: Introduction 1 Overview & Motivation 2 Computational Errors 3 Computer Arithmetic 4 Convergence and Stability 5 Some basic algorithms and Matlab codes Yutian LI (CUHKSZ) Numerical Analysis 2018/19 4 / 41

Overview & Motivation 1. Solve Nonlinear Equations (Chapter 2) The LambertW function is the inverse function of fpwq we w : that is z : wpzqe wpzq. One needs to solve a nonlinear equation to find the value of wpzq. e.g., to fnid wp1q, we need solve we w 1. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 5 / 41

2. Interpolation (Chapter 3) (a) piecewise linear function (b) polynomials Yutian LI (CUHKSZ) Numerical Analysis 2018/19 6 / 41

3. Numerical Integration (Chapter 4) The c.d.f. (cumulative distribution function) of the standard normal distribution is given by Npxq? 1» x e t2 1 2 dt 2π 8 2» 1 x? e t2 2 dt 2π 0 To find the (approximate) values of Npxq, we need perform a numerical method to evaluate the above integral. This is the quadrature rules. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 7 / 41

4. Solve linear system (Chapter 5) In solving the application problems, the last step is often to find the solution of a linear system of equations AX b. (e.g., when we use finite difference or finite element methods to solve a differential equation) When A is large, it is necessary to use some numerical method and to solve it on a computer. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 8 / 41

5. Least squares Figure: The result of fitting a set of data points with a quadratic function Yutian LI (CUHKSZ) Numerical Analysis 2018/19 9 / 41

Computational Errors Truncation error the error made by numerical algorithms that arises from taking finite number of steps in computation. Round-off error the error produced when a computer is used to perform real number calculations. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 10 / 41

Truncation error: Consider Taylor s theorem fpxq P n pxq R n pxq, where P n pxq f px 0 q f 1 px 0 qpx x 0 q R n pxq f pn 1q pξq pn 1q! px x 0q n 1. f 2 px 0 q px x 0 q 2 2! f pnq px 0 q px x 0 q n, n! If we use P n pxq to approximate fpxq, the error R n pxq is called the truncation error. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 11 / 41

Round-off error: In the computational world, each representable number has only a fixed and finite number of digits. Only a small subset of the real number can be represented in a typical computer So for example, 1{3, π,? 2, these numbers cannot be represented exactly in the computation by a computer. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 12 / 41

Round-Off Error Can Be Fatal. On February 25, 1991 an Iraqi Scud missle hit an American Army barracks and killed 28 soldiers. The Patriot Missle System that was supposed to intercept and destroy the Scud failed. The General Accounting Office report, GAO/IMTEC-92-26, Patriot Missile Defense: Software Problem Led to System Failure at Dhahran, Saudi Arabia gave the reason as round-off error. See www.math.psu.edu/dna/455.f97/notes.html. When we do computations using computers, the round-off errors are inevitable. But we can try to minimize the negative impact of these errors by rewriting the formula you wish to compute. This must be done on a case-by-case basis. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 13 / 41

Computer Arithmetic Binary Floating Point Number. In 1985, the IEEE (Institute for Electrical and Electronic Engineers) published a report called Binary Floating Point Arithmetic Standard 754 1985. An updated version was published in 2008 as IEEE 754-2008. A 64-bit (binary digit) representation is used for a real number. The first bit is a sign indicator, denoted s. This is followed by an 11-bit exponent, c, called the characteristic, and a 52-bit binary fraction, f, called the mantissa. The base for the exponent is 2. p 1q s 2 c 1023 p1 fq Yutian LI (CUHKSZ) Numerical Analysis 2018/19 14 / 41

e.g., 0 10000000011 1011100100010000000000000000000000000000000000000000 s 0, c 2 10 0 2 9 0 2 8 2 1 2 0 1027, f 1 2 1 2 3 2 4 2 5 2 8 2 12 and the machine number precisely represents the decimal number p 1q s 2 c 1023 p1 fq 27.56640625. Numbers occurring in calculations that have a magnitude less than 2 1022 p1 0q 0.22251 10 307 result in underflow and are generally set to zero. Numbers greater than 2 1023 p2 2 52 q 0.17977 10 309 result in overflow and typically cause the computations to stop. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 15 / 41

Decimal floating-point number 0.d 1 d 2 d k 10 n, 1 d 1 9, 0 d 2, d 3 9. Any positive real number within the numerical range of the machine can be normalized to the form y 0.d 1 d 2 d k d k 1 d k 2 10 n. The floating-point form of y, denoted f lpyq, is obtained by terminating the mantissa of y at k decimal digits. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 16 / 41

There are two common ways of performing this termination Chopping: simply chops off the digits d k 1 d k 2 This produces the floating-point form flpyq 0.d 1 d 2 d k 10 n. Rounding: adds 5 10 n pk 1q to y and then chops the result to obtain a number of the form flpyq 0.δ 1 δ 2 δ k 10 n. For rounding, when d k 1 5, we add 1 to d k to obtain flpyq; that is, we round up. When d k 1 5, we simply chop off all but the first k digits; that is, round down. The error that results from replacing a number with its floating-point form is called round-off error regardless of whether the rounding or the chopping method is used. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 17 / 41

Example Determine the five-digit (a) chopping and (b) rounding values of π. The number π has an infinite decimal expansion of the form π 3.14159265. Written in normalized decimal form, we have π 0.314159265 10 1. The floating-point form of π using five-digit chopping is flpπq 0.31415 10 1 3.1415. Since the sixth digit of the decimal expansion of π is a 9, the floating-point of π using five-digit rounding is flpπq p0.31415 0.00001q 10 1 3.1416. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 18 / 41

Definition Suppose that p is an approximation to p. The actual error is p p, the absolute error is p p, and the relative error is p p p, provided that p 0. Definition The number p is said to approximate p to t significant digits (or figures) if t is the largest nonnegative integer for which p p p 5 10 t. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 19 / 41

Example Determine the actual, absolute, and relative errors when approximating p by p when (a) p 0.3000 10 1 and p 0.3100 10 1 ; (b) p 0.3000 10 3 and p 0.3100 10 3 ; (c) p 0.3000 10 4 and p 0.3100 10 4. As a measure of accuracy, the absolute error can be misleading and the relative error more meaningful because the relative error takes into consideration the size of the value. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 20 / 41

Inaccurate representation of numbers. We see that the floating-point representation flpyq for the number y has the relative error y flpyq y. If k decimal digits and chopping are used for the machine representation of y 0.d 1 d 2 d k d k 1 10 n, then y flpyq y 0.d k 1 d k 2 10 n k 0.d 1 d 2 10 n 1 0.1 10 k 10 k 1. In a similar manner, a bound for the relative error when using k-digit rounding arithmetic is 0.5 10 k 1. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 21 / 41

Inaccurate calculation. Assume that the floating-point representations f lpxq and f lpyq are given for the real numbers x and y and that the symbols `, a, b, c represent machine addition, substraction, multiplication and division operations, respectively. We will assume a finite-digit arithmetic given by x ` y flpflpxq flpyqq, x a y flpflpxq flpyqq, x b y flpflpxq flpyqq, x c y flpflpxq flpyqq. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 22 / 41

Example Suppose x 5 7 and y 1 3 x and y. we want to do arithmetic calculations involving x 0.714285714 10 0, y 0.333333333 10 0. Five-digit chopping x ` y flpflpxq flpyqq flp0.71428 10 0 0.33333 10 0 q flp1.04761 10 0 q 0.14076 10 1 Five-digit rounding x ` y flpflpxq flpyqq flp0.71429 10 0 0.33333 10 0 q flp1.04762 10 0 q 0.14076 10 1 Yutian LI (CUHKSZ) Numerical Analysis 2018/19 23 / 41

Absolute Error 22 21 0.10476 101 0.190 10 4, 0.190 10 Relative Error 4 0.182 10 4, 22 21 Yutian LI (CUHKSZ) Numerical Analysis 2018/19 24 / 41

How to avoid loss of accuracy due to round-off error? Reformulate the problem. One of the most common error producing calculations involves the cancelation of significant digits due to subtraction of nearly equal numbers. So we should reformulate the problem to avoid subtracting nearly equal numbers. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 25 / 41

Example The two roots of ax 2 bx c 0 are given by x 1 b? b 2 4ac 2a, x 2 b? b 2 4ac, 2a Consider the equation x 2 62.10x 1 0. The two roots are x 1 0.01610723, x 2 62.08390. In this equation, b 2 is much larger than 4ac, so the numerator of x 1 is a subtraction of two nearly equal numbers. Use 4-digit rounding we get flpx 1 q 62.10 62.06 2.000 0.02000. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 26 / 41

which is a poor approximation to x 1 with the large relative error 0.01611 0.02000 0.01611 0.24 100. To improve the accuracy of the calculation, we change the formula by rationalizing the numerator, x 1 b Using this we get? b 2 4ac b? b 2 4ac 2a b? b 2 4ac 2c? b b 2 4ac. flpx 1 q 2.000 62.10 62.06 0.01610, which has the small relative error 6.2 10 4. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 27 / 41

Rewrite polynomials into nested form. Example Evaluate fpxq x 3 6.1x 2 3.2x 1.5 for x 4.71. Using 3-digit arithmetic we have, x x 2 x 3 6.1x 2 3.2x Result Relative error Exact 4.71 22.1841 104.487111 135.32301 15.072-14.263899 Chopping 4.71 22.1 104. 134. 15.0-13.5 0.05 Rounding 4.71 22.2 105. 135. 15.1-13.4 0.06 Yutian LI (CUHKSZ) Numerical Analysis 2018/19 28 / 41

In both cases, large relative errors occur. To improve the calculation, we change the polynomial to the following nested form, fpxq x 3 6.1x 2 3.2x 1.5 ppx 6.1qx 3.2qx 1.5 Then using chopping we have f p4.71q pp4.71 6.1q4.71 3.2q4.71 1.5 14.2 The relative error is 14.263899 14.2 14.263899 0.0045 Yutian LI (CUHKSZ) Numerical Analysis 2018/19 29 / 41

Using rounding we have f p4.71q pp4.71 6.1q4.71 3.2q4.71 1.5 14.3. The relative error is 14.263899 14.3 14.263899 0.0025 Polynomials should always be expressed in nested form before performing an evaluation, because this form minimized the number of arithmetic calculations. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 30 / 41

Avoid large numbers eat small numbers. We should add those numbers with small magnitude first when we do the summation Example fl ņ i1 flpx i q x 1 100.5 and x i 0.01, i 2,, 101, using 4-digit arithmetic, we have flpx 1 q 100.5 and flpx i q 0.0100, i 2,, 101. So after doing the summation s 101 flp i1 flpx iqq, we have s 100.5. If we define x i 0.01, i 1,, 100 and x 101 100.5, then we have s 101.5 which is the true value of the summation.. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 31 / 41

Convergence and Stability Convergence Definition Suppose tβ n u 8 n1 is a sequence known to converge to zero, and tα nu 8 n1 converges to a number α. If a positive constant K exists with α n α K β n for large n, then we say that tα n u 8 n1 converges to α with the rate (or, order) of convergence Opβ n q (big oh of β n ), and written as α n α Opβ n q. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 32 / 41

In most cases, β n 1{n p, (p 0), so we have α n α Op1{n p q Similarly, if a function F phq satisfies F phq L Kh p for small positive h, we write F phq L Oph p q. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 33 / 41

Stability. If small changes in the initial data produce correspondingly small changes in the final results, then we say that the algorithm is stable. Otherwise, the algorithm is said unstable. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 34 / 41

Example The solution of the recursive equation is p n 10 3 p n 1 p n 2, n 2, 3, p n c 1 1 3 n c 2 3 n. If p 0 1 and p 1 1{3, we have c 1 1 and c 2 0, then p n p1{3q n. If we use 5 digit rounding to compute p n, then the computed sequence ˆp 0 1.0000, ˆp 1 0.33333, which corresponding to ĉ 1 1.0000 and ĉ 2 0.12500 10 5, and 1 n ˆp n 1.0000 0.12500 10 5 3 n. 3 The round-off error is p n ˆp n 0.12500 10 5 p3 n q This error grows exponentially, so the algorithm is unstable. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 35 / 41

Example The solution of the recursive equation p n 3 4 p n 1 1 8 p n 2, n 2, 3, is p n c 1 1 2 n 1 n c 2. 4 If the computed values for c 1 and c 2 are ĉ 1 and ĉ 2, due to round-off errors, then we have the round-off error in computing p n is p n ˆp n 1 n 1 n pc 1 ĉ 1 q pc 2 ĉ 2 q c 1 ĉ 1 1 c 2 ĉ 2 1 2 4 4 16 Small changes in the initial errors c 1 ĉ 1 and c 2 ĉ 2 will result in a small change in p n ˆp n, the algorithm is stable. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 36 / 41

Relation between convergence and stability. The concept of convergence is about the theoretical errors (truncation errors) between the exact value and the true value of an algorithm. The concept of stability is about the computational errors (round-off error) between the true value of an algorithm and the computed value from the algorithm. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 37 / 41

Consider the algorithm p n 10 3 p n 1 p n 2, n 2, 3, When p 0 1 and p 1 1{3, we have p n p1{3q n. Clearly, However, for the computed value lim p n 0. nñ8 lim ˆp n 8. nñ8 Yutian LI (CUHKSZ) Numerical Analysis 2018/19 38 / 41

Some basic algorithms and Matlab codes Sum n i1 x i s = 0; % initialize for i = 1 : n s = s + x(i); % A common mistake is forget the s here! end Or we can use Matlab command sum(x). Yutian LI (CUHKSZ) Numerical Analysis 2018/19 39 / 41

Product ± n i1 x i s = 0; % initialize for i = 1 : n s = s * x(i); % A common mistake is forget the s here! end Or we can use Matlab command prod(x). Yutian LI (CUHKSZ) Numerical Analysis 2018/19 40 / 41

Matrix-vector multiplication y A x for i = 1 : n y(i) = 0; % initialize for j = 1 : n y(i) = y(i)+a(i, j) x(j); end end % Use ; to compress the outputs. Or we can use Matlab command y = A*x. Yutian LI (CUHKSZ) Numerical Analysis 2018/19 41 / 41