Presentation is loading. Please wait.

Presentation is loading. Please wait.

MA/CS375 Fall 2002 1 MA/CS 375 Fall 2002 Lecture 7.

Similar presentations


Presentation on theme: "MA/CS375 Fall 2002 1 MA/CS 375 Fall 2002 Lecture 7."— Presentation transcript:

1 MA/CS375 Fall 2002 1 MA/CS 375 Fall 2002 Lecture 7

2 MA/CS375 Fall 2002 2 Explanations of Team Examples

3 MA/CS375 Fall 2002 3 Consider: What should its behavior be as: Plot this function at 1000 points in: Explain what is going on. Recall Monster #1

4 MA/CS375 Fall 2002 4 Monster #1 ((large+small)-large)/small

5 MA/CS375 Fall 2002 5 when we zoom in we see that the large+small operation is introducing order eps errors which we then divide with eps to get O(1) errors !. Monster #1 ((large+small)-large)/small

6 MA/CS375 Fall 2002 6 when we zoom in we see that the large+small operation is introducing order eps errors which we then divide with eps to get O(1) errors !. Each stripe is a region where 1+ x is a constant ( think about the gaps between numbers in finite precision ) Then we divide by x and the stripes look like hyperbola. The formula looks like (c-1)/x with a new c for each stripe. Monster #1 ((large+small)-large)/small

7 MA/CS375 Fall 2002 7 Recall Monster #2 Consider: What should its behavior be as: Plot this function at 1000 points in: Explain what is going on in a text box, label everything, print it out and hand it in.

8 MA/CS375 Fall 2002 8 Limit of

9 MA/CS375 Fall 2002 9 Monster #2 (finite precision effects from large*small) As x increases past 30 we see that f deviates from 1 !!

10 MA/CS375 Fall 2002 10 As x increases past ~=36 we see that f drops to 0 !! Monster #2 cont (finite precision effects from large*small)

11 MA/CS375 Fall 2002 11 Consider: What should its behavior be as: Plot this function at 1000 points in: Explain what is going on. What happens at x=54? Recall Monster #3

12 MA/CS375 Fall 2002 12 Monster 3 (finite precision large*small with binary stripes)

13 MA/CS375 Fall 2002 13 As we require more than 52 bits to represent 1+2^(-x) we see that the log term drops to 0. Monster 3 (finite precision large*small with binary stripes)

14 MA/CS375 Fall 2002 14 Consider: What should its behavior be as: Plot four subplots of the function at 1000 points in: for Now fix x=0.5 and plot this as a function of for Explain what is going on, print out and hand in. Recall Monster #4

15 MA/CS375 Fall 2002 15 Monster 4 cont Behavior as delta  0 : or if you are feeling lazy use the definition of derivative, and remember: d(sin(x))/dx = cos(x)

16 MA/CS375 Fall 2002 16 Monster 4 cont ( parameter differentiation, delta=1e-4) OK

17 MA/CS375 Fall 2002 17 Monster 4 cont ( parameter differentiation, delta=1e-7) OK

18 MA/CS375 Fall 2002 18 Monster 4 cont ( parameter differentiation, delta=1e-12) Worse

19 MA/CS375 Fall 2002 19 Monster 4 cont ( parameter differentiation, delta=1e-15) When we make the delta around about machine precision we see O(1) errors !. Bad

20 MA/CS375 Fall 2002 20 Monster 4 cont ( numerical instablitiy of parameter differentiation) As delta gets smaller we see that the approximation improves, until delta ~= 1e-8 when it gets worse and eventually the approximate derivate becomes zero.

21 MA/CS375 Fall 2002 21 Approximate Explanation of Monster #4 1) Taylor’s thm: 2) Round off errors 3) Round off in computation of f and x+delta 4) Put this together:

22 MA/CS375 Fall 2002 22 i.e. for or equivalently approximation error decreases as delta decrease in size. BUT for round off dominates!.

23 MA/CS375 Fall 2002 23 Ok – so these were extreme cases Reiteration: the numerical errors were decreasing as delta decreased until delta was approximately 1e-8

24 MA/CS375 Fall 2002 24 Matlab Built-in Derivative Routines diff takes the derivative of a function of one variable sampled at a set of discrete points gradient takes the x and y derivatives of a function of two variables

25 MA/CS375 Fall 2002 25 diffdemo.m Using diff on F = x^3 diff

26 MA/CS375 Fall 2002 26

27 MA/CS375 Fall 2002 27 diff diffdemo.m Using diff on F = sin(x)

28 MA/CS375 Fall 2002 28

29 MA/CS375 Fall 2002 29 gradient gradientdemo.m Using gradient on F = x^2

30 MA/CS375 Fall 2002 30

31 MA/CS375 Fall 2002 31 Using gradient on F = x^2+y^2 gradientdemo1.m

32 MA/CS375 Fall 2002 32

33 MA/CS375 Fall 2002 33 Using gradient on F = (x^2)*(y^2) gradientdemo2.m

34 MA/CS375 Fall 2002 34

35 MA/CS375 Fall 2002 35 Using gradient on F = (sin(pi*x))*(cos(pi*y)) gradientdemo3.m

36 MA/CS375 Fall 2002 36

37 MA/CS375 Fall 2002 37 Comments Next time we will revisit the accuracy of taking derivatives…

38 MA/CS375 Fall 2002 38 Summary Ok – so in the far limits of the range of finite precision really dodgy things happen. But recall, the formula for the derivative of sine worked pretty well for a large range of numbers. Try to avoid working with two widely separated numbers.


Download ppt "MA/CS375 Fall 2002 1 MA/CS 375 Fall 2002 Lecture 7."

Similar presentations


Ads by Google