Presentation is loading. Please wait.

Presentation is loading. Please wait.

259 Lecture 16 Numerical Differentiation and Integration in MATLAB; Function M-files.

Similar presentations


Presentation on theme: "259 Lecture 16 Numerical Differentiation and Integration in MATLAB; Function M-files."— Presentation transcript:

1 259 Lecture 16 Numerical Differentiation and Integration in MATLAB; Function M-files

2 22 Derivatives and Integrals  We can use MATLAB to numerically differentiate or integrate functions!  The key is to remember the definitions of derivative and definite integral:

3 3 Numerical Differentiation  For small x, we have the following estimate for f’(x):  Using the MATLAB commands “linspace” and “diff”, we can find reasonable approximations to f’(x), provided x is small and f is differentiable!

4 4 Numerical Differentiation  Example 1:  Use MATLAB to find the numerical derivative of y = sin(x) on the interval [0, 2].  Compare this estimate for dy/dx to the actual derivative of y.

5 5 Numerical Differentiation  Example 1 (cont.):  Try each of the following commands with a = 0, b = 2*pi, and n = 50. linspace(a, b, n) a:(b-a)/(n-1):b  What do you notice?  Try “linspace(a,b)”.  What happens in this case?

6 6 Numerical Differentiation  Example 1 (cont.):  Next, try these commands: x = linspace(1, 10, 10) diff(x)  What happens?  In general, for x = [a, b, c, d], diff(x) = [b-a, c-b, d-c].  Now we are ready to estimate dy/dx!

7 7 Numerical Differentiation  Example 1 (cont.):  Enter the following commands to create an estimate for dy/dx, which we’ll call yprime: x = linspace(0, 2*pi, 1000); y = sin(x); deltax = diff(x); deltay = diff(y); yprime = deltay./deltax;

8 8 Numerical Differentiation  Example 1 (cont.)  To compare our estimate to the actual derivative, let’s look at a table of the first 10 values of yprime and cos(x), via concatenation: [yprime(1:10); cos(x(1:10))]’.  Note the use of the colon (:) and transpose (‘) commands!

9 9 Numerical Differentiation  Example 1 (cont.)  Let’s also compare graphically!  One way to do this is with the “subplot” command.  Try the following commands: subplot(1,2,1) plot(x(1:999), yprime, 'r‘) title(‘yprime = \Deltay/\Deltax’) subplot(1,2,2) plot(x(1:999), cos(x(1:999)),‘b') title(‘dy/dx = cos(x)’)  Why can’t we just use “x, yprime”, etc. in our plot commands?

10 10 Numerical Integration  For integrable function f(x), choosing x i = (b-a)/n and x i * to be the right endpoint of the ith subinterval, i.e. x i * =a+i*(b-a)/n, we get the following estimate for large n:  Using the “sum” command, we can find an estimate for definite integrals via Riemann sums!

11 11 Numerical Integration  Example 2:  Use MATLAB to numerically estimate the definite integral  Compare this estimate as n gets larger to the actual value for the integral.

12 12 Numerical Integration  Example 2 (cont.)  Enter the following commands to compute Riemann sums for our integral! a = 0; b = 1; n = 50; deltax = (b-a)/n; xstar = a+deltax:deltax:b; Rn = sum((xstar.*xstar) *deltax)

13 13 Function M-Files  In addition to using M-files to run scripts, we can use them to create functions!  Function M-files can accept input and produce output. One example of a function defined by a function M-file is “linspace”.  Let’s make a function via an M-file!

14 14 Function M-Files  Within the M-file script editor, type the following: function y = Sample1(x) %Here is where you put in information about how the function is used. %The syntax and variables can be outlined here as well. y = x + x.^2 – x.^4;  Save the file as Sample1.m on the Desktop and make sure the Path is set to see the file!

15 15 Function M-Files  To use the new function, for example to find the value of Sample1(x) at x = 3, type: Sample1(3)  Find the numerical derivative of Sample1(x) and plot both y = Sample1(x) and its numerical derivative on [-1,1].

16 16 References  Using MATLAB in Calculus by Gary Jenson


Download ppt "259 Lecture 16 Numerical Differentiation and Integration in MATLAB; Function M-files."

Similar presentations


Ads by Google