226 Gray Hall

michaelr at american {dot} edu

Office hours: Mondays 1:15-2pm, Tuesdays 11:30am-2pm, Wednesdays 9:30-10:15am, Thursdays 9:30-10:15am, or by appointment (please contact me 24 hours in advance to make arrangements)

My research website http://www.drmichaelrobinson.net/

Feel free to contact me with any questions (course-related or not)

Homework assignments

Course schedule

Concerning programming in this course

Information about exams

Some useful links

Course policies

Prerequisite(s): ability to program a computer (see below), or permission of instructor.

The course textbook is

Isaacson and Keller, *Analysis of Numerical Methods*, Dover edition.

In this course, students will

- Examine the kinds of effects that arise from the discretization of functions and operators on them,
- Reveal the centrality of interpolation by deriving several kinds of approximations to derivatives, integrals, and solutions to equations,
- Calculate precise bounds on the error performance of these approximations, and
- Gain practical experience in the implementation of these approximations.

The programming projects will consist of some preliminary and background theory questions along with a set of guided programming exercises. **Instructions and submission of all assignments will be elecronic via the course BlackBoard page! Check there often for updates.**

Read the Matlab tutorial and get started on Project 1 early!

Homework 1 due September 6: p. 16: 2, 4; p. 96: 1, 2; p. 108: 1, 2

Homework 2 due September 20: p. 123, 1, 2, 3; p. 182: 1; p. 186: 1, 2

Homework 3 due October 4: p. 193: 1, 3; p. 218: 3, 5; p. 229: 1, 2

Homework 4 due October 18: p. 242: 1, 2, 3, 4

Homework 5 due November 1: p. 255: 3, 5; p. 260: 1, 2; p. 279: 1, 2

Homework 6 due November 15: p. 294: 1, 2; p. 21: 1, 2; p. 318: 2, 3

Homework 7 due December 6: p. 383: 1, 3; p. 394: 1, 3; p. 405: 1, 3

- Outline two kinds of methods that can be used to solve systems of equations on a computer
- Discuss the performance of these methods in terms of discretization error
- Implement one of these algorithms in Matlab to solve equations that arise in a physical application

August 28: Chapter 1, section 1: Vectors, matrices, and Matlab

August 30: Chapter 3, section 1: Single equation iterations

September 4: Chapter 3, section 2: Single equations, Newton's method

September 6: Chapter 3, section 3: Systems of equations

September 11: No class (I am at a conference)

September 13: Chapter 3, section 3: Convergence for Newton's method

- Explain what interpolation means for sets of data
- Describe the difference between interpolation and curve fitting
- Compute interpolation polynomials for small sets of data (by hand) and larger ones (by implementing a computer program)

September 18: Chapter 5, sections 0 and 1: Weierstrass approximation

September 20: Chapter 5, section 2: Interpolation with polynomials

September 25: Chapter 5, section 3: Least-squares polynomials

September 27: Chapter 5, section 3: continued

October 2: Chapter 5, section 4: Chebyshev polynomials

- Explain what features of a function are enhanced by the Fourier transform
- Explain the crucial insight that lead to the Fast Fourier transform
- Define the band pass, low pass and high pass filters
- Use the already-implemented functions in Matlab to develop an audio filtering processing chain

October 4: Chapter 5, section 5: Fourier series

October 9: Discrete Fourier transforms

October 11: Fast Fourier transforms

October 16: Filters for signals

**October 18: Midterm Exam**

- Discuss the benefits and costs of high-degree polynomials for interpolation in terms of functional variation
- Explain how the precise definition of interpolation methods leads to approximations of derivatives
- Discuss roundoff error and its implications for interpolation

October 23: Chapter 6, section 1: Newton's interpolation polynomial

October 25: Chapter 6, section 2: Iterative linear interpolation

October 30: Chapter 6, section 3: Forward differences: formulae

November 1: Chapter 6, section 5: Numerical differentiation

November 6: Chapter 1, section 2: Floating point representation

November 8: Hacking session!

- Discuss how interpolation methods can be used to derive approximations for definite integrals
- Define Euler's method for solving first order differential systems
- Explain how difference method solvers are constructed, and how they propagate errors

November 13: Chapter 7, section 1: Introduction to quadrature

November 15: Chapter 7, section 1: General error bounds for quadrature

November 27: Chapter 8, section 1: Euler's method

November 29: Chapter 8, section 2: Multistep solvers

December 4: Chapter 8, section 3: One-step solvers

December 6: Review for final exam

**Final exam: December 13, 5:30-8:00pm**

If you don't have a strong preference, I will suggest that you learn
some Matlab or Octave. I've heard that students can obtain Matlab relatively cheaply, though Octave is free to use. If you do have a strong preference for another programming language, you may be permitted to use it, but you **must** contact me first about it early in the course.

Matlab: http://www.matlab.com/

Cleve Moler (the original author of Matlab) has written two books (

25% Projects

25% Biweekly homework assignments

25% Midterm Exam

25% Final exam

Late homeworks will not be accepted, unless there is an official (University-approved) reason for doing so.