Institute for

Applied Mathematics 205 (Fall 2013)

Advanced Scientific Computing: Numerical Methods

Scientific computing has become an indispensable tool in many branches of research, and is vitally important for studying a wide range of physical and social phenomena. In this course we will examine the mathematical foundations of well-established numerical algorithms and explore their use through practical examples drawn from a range of scientific and engineering disciplines.
IACS banner
Instructor David Knezevic
Lectures Tuesday, Thursday 10am-11:30am, Room 330 at 60 Oxford St
Office Hours Tuesday 11:30am-1pm, Cruft 402
TFs Martin Blood-Forsythe (, Alexander Robel (
Sections TBD
Syllabus The AM205 syllabus is available here.

  • We will use Piazza to provide a discussion forum for this class. Sign up for the AM205 page on Piazza here.

  • The AM205 iSites page is here. We will use the iSites dropbox for assignment and project submission.

  • Download Matlab for Windows or Mac from Harvard here. Linux users will need to send an email to to download Matlab for Linux.

  • To view which Matlab Toolboxes you have installed, type "ver" at the Matlab command line. You will need to have the Optimization Toolbox.

Policy on Collaboration
There are three types of assessment for AM205. The collaboration policy for each type is given below.

Homework Assignments
Discussion and the exchange of ideas are essential to doing academic work. For assignments in this course, you are encouraged to consult with your classmates as you work on problem sets. However, after discussion with peers, make sure that you can work through the problem sets yourself and ensure that any answers you submit for evaluation are the result of your own efforts. In addition, you must cite any books, articles, websites, lectures, etc that have helped you with your work using appropriate citation practices. Similarly, you must list the names of students with whom you have collaborated on problem sets.

Mid-Term Exam
Take-home exam. Collaboration is not permitted.

Final Project
You will work in groups for the final project, hence collaboration within your group is required. You may discuss your project with others, but ensure that any work your group submits for evaluation is the result of your group's own efforts. You must also adhere to standard citation practices in this discipline and properly cite any books, articles, websites, lectures, etc. that have helped you with your work. If you receive any help with your writing (feedback on drafts, etc), you must also acknowledge this assistance.

Lecture Material
Course Logistics
Unit 0
Overview of Scientific Computing
Unit I: Data Fitting

Chapter I.1: Motivation
Chapter I.2: Polynomial interpolation
Chapter I.3: Linear least squares fitting
    nonpoly_linlsq.m    underdet_lsq.m
Chapter I.4: Nonlinear least squares   
Unit II: Numerical Linear Algebra

Chapter II.1: Motivation
Chapter II.2: LU and Cholesky factorizations
Chapter II.3: QR factorization, SVD
Unit III: Numerical Calculus and Differential Equations

Chapter III.1: Motivation
Chapter III.2: Numerical differentiation, numerical integration
Chapter III.3: ODE Initial value problems
Chapter III.4: Boundary value problems and PDEs
    Matlab code
Unit IV: Nonlinear Equations and Optimization

Chapter IV.1: Motivation
Chapter IV.2: Root finding
    Matlab code
Chapter IV.3: Conditions for optimality
Chapter IV.4: Survey of optimization methods
    Matlab code
Unit V: Eigenvalue Problems

Chapter V.1: Motivation    Matlab code
Chapter V.2: Fundamentals
    Matlab code
Chapter V.3: Algorithms for Eigenvalue Problems
    Matlab code
Chapter V.4: Krylov Subspace Methods
    Matlab code

Lecture Videos

Homework assignments are due electronically in the dropbox folders on the AM205 iSite page. All dropbox folders are timed and will close exactly on the deadline (late work will not be accepted, except in extenuating circumstances). Assignments 1-5 are to be completed individually, and each is worth 12% of the final grade. Submission of a written report (in .pdf format) and corresponding Matlab code will be required.

Assignment 0  Assignment 0 Solutions
(Not assessed)
Assignment 1  Assignment 1 Data
(Due: Monday, Sep 30, 5pm)
Assignment 2  Assignment 2 Data
(Due: Friday, Oct 18, 5pm)
Assignment 3 Assignment 3 Data
(Due: Monday, Nov 4, 5pm)
Assignment 4
(Due: Friday, Nov 22, 5pm)
Assignment 5
Assignment 5 Data
(Due: Wednesday, Dec 4, 5pm)

Final Project
The final project is to be completed in a group of either two or three students and will account for 30% of your final grade. All group members will receive the same grade.

Due date: 12noon on Monday, December 16.

You will need to submit a .pdf for your project write-up, and your Matlab code in the iSites dropbox for the project. Also, I request that you print out a hard copy of your project write-up and give it to me on the due date. The write-up needs to be done in latex or with a word-processing application, as would be required by an academic journal (you may not submit a handwritten report).

As usual, the dropbox will close exactly at the deadline, and (in the absence of extenuating circumstances) late work will not be accepted.

  • You should propose a project topic drawn from an application area of of interest to you. The project should make use of concepts covered in the course, and the topic must be approved by the instructor.
  • The project should be roughly equivalent in scope and quality to a section of a published research article. One option for a project topic is to reproduce and extend results from a published research article.
  • You will be required to develop software to solve your problem, and to submit a report that includes a mathematical discussion of your methodology in relation to the theory covered in the course.
  • Projects will be assessed based on a written report, and the quality and correctness of software. Code should be well-documented and should be organized so that figures submitted in the report can be easily reproduced by the graders.