G63.2010.001 (math) / G22.2420-001 (computer science)

Numerical Methods I

Warren Weaver Hall, room 101, Thursdays, 5:10 - 7 pm
Courant Institute of Mathematical Sciences
New York University
Fall Semester, 2010

Final Project and Presentations

The final presentations will take place on the following three dates:
  1. Thursday Dec. 16th 5-7pm (there will be no class on Legislative Day, Tuesday Dec. 14th)
  2. Tuesday Dec. 21st 5-7pm (in room 102!)
  3. Thursday Dec. 23rd 4-7pm (note the earlier start time!)
The final report (5-10 page writeup of PDF, presentation, and any codes) is due Sunday Dec. 26th.

Notes about Homework Submissions

Logistics

  1. Submit a PDF of your writeup and all of the source codes in an archive (zip/tar/rar etc.), and name files sensibly (e.g., not "A.m" or "script.m" but also not "Solution of Problem 1 by Me.m"). Email them to me (donev@cims.nyu.edu) only (no need to copy the grader).
  2. In general, one should be able to grade without looking at all the codes. The reports should be mostly self-contained, e.g., the figures should be included in the writeup along with legends, explanations, calculations, etc. Do not include MATLAB codes in the writeup, only the results. Put your name on the writeup.
  3. Package the files so that the MATLAB codes can be run by us -- do not put all the sources in one long text file, for example. Also, we do not need your tex, lyx, Word, svn files etc., only a PDF of the final product. Please make it easy for us to find and examine the files quickly (there is 30 of you and one grader!).
  4. If you are using Octave, do not use double quotes for strings, use single quotes instead for compatibility with MATLAB.
  5. For pen-and-pencil problems you can submit hand-written solutions if you prefer.
  6. If you use any external source, even Wikipedia, make sure you acknowledge it by referencing all help.

Present your information effectively

  1. Plot figures with thought and care! For example, errors should be plotted on a logarithmic scale, not linear, so you can see it going down instead of flat lines. In problem 2 of Assignment 1, for example, you should have gotten the hint to plot n*y_n or something related instead of , or in problem 3.3, plotting \log(1+x)/x is better than \log(1+x). The plots should have axes labels and be easy to understand at a glance.
  2. A picture is worth a thousand words! Some gave tables, or printouts of Matlab matrices, where a plot would be much more effective. Do not submit pages of numbers unless there is a really good reason -- it is not an effective way to present the information.
  3. If you do print things, use fprintf to format the output nicely instead of printing large matrices. Also use format compact and other format commands to control how MATLAB prints things.

Quality over Quantity

  1. You need to demonstrate, in addition to a code and plot, that you understand what the numerical problem is. For example, the roundoff error in problem 3.1 or 3.2 comes because of cancellation of significant digits (read the title of the Section heading!). Just reporting "error is smallest for h=\dots" without an explanation will not get full points. I do not expect theorems, but some understanding is crucial.
  2. Do not substitute true understanding/exploration with trivial work: Solve a few problems well instead of handing in quarter solutions to all the problems. Demonstrate that you are intellectually-curious about the material.

Assignments

0. (Due ASAP) Questionnaire

Please log into Blackboard (email me for access if not registered or there is a problem) and submit the following information (also under Assignments on Blackboard and course webpage):
  1. Name, degree, and class, any prior degree(s) or professional experience.
  2. List all programming languages/environments that you have used, when and why, and your level of experience (just starting, beginner, intermediate, advanced, wizzard).
  3. Why did you choose this course instead of Scientific Computing (spring)? Have you taken or plan to take any other course in applied mathematics or computing (e.g., Numerical Methods II)?
  4. Was the first lecture at a reasonable level/pace for your background?
  5. What are your future plans/hopes for activities in the field of applied and computational mathematics? Is there a specific area or application you are interested in (e.g., theoretical numerical analysis, finance, computational genomics)?

1. (Due Sept. 23rd, lecture on Sept. 9th) Numerical Computing

Take a look at lecture 1 for some examples and possible hints.

2. (Due Oct. 7th, lectures on Sept. 16th and 23rd) Square Linear Systems

Take a look at lecture 2 and lecture 3 for some examples and possible hints.

3. (Due Oct. 21st, lectures on Sept. 30th and Oct 7th) Eigen and Singular Values

Take a look at lecture 4 and lecture 5 for some examples and possible hints.

4. (Due Nov. 4th, lectures on Oct. 14th and 21st) Non-Linear Equations and Optimization

Take a look at lecture 6 and lecture 7 for some examples and possible hints.

5. (Due Nov. 28th, lectures on Oct. 29th, Nov. 4th and 11th) Interpolation and Approximation

Here is the MATLAB script to compute the Gauss-Legendre nodes on [-1,1]. Take a look at lecture 8 and lecture 9 for some examples and possible hints.