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.



Instructor: David Knezevic

Lectures: Tuesday, Thursday 10am-11:30am, MD G125
Office Hours: Tuesday 11:30am-1pm, Cruft 403

TFs: Philip Mocz (pmocz@fas.harvard.edu), Bo Liu (bliu@physics.harvard.edu)

Sections: Announced during semester

Syllabus: The AM205 syllabus is available here.



Announcements:

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

  • Matlab Tutorials run by Mathworks will be in Pierce 209, on September 17 & 18, 6pm-8pm. More details and registration is here. Space is limited to be sure to register.

  • 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 rchelp@fas.harvard.edu 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.



Lecture Material:

Course Logistics

Unit 0: Overview of Scientific Computing

Unit I: Data Fitting

Unit II: Numerical Linear Algebra

Unit III: Numerical Calculus and Differential Equations

Unit IV: Nonlinear Equations and Optimization

Unit V: Eigenvalue Problems



Assignments:

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 14% 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: October 2, 10am)

Assignment 2    Assignment 2 Data
(Due: October 18, 10am)

Assignment 3    Assignment 3 Data
(Due: November 1, 10am)

Assignment 4    Useful test script for q3
(Due: November 20, 10am)

Assignment 5
(Due: December 4, 10am)


Collaboration Policy for Assignments (standard Harvard policy for "individual work"):
Students should be aware that in this course collaboration of any sort on any work submitted for formal evaluation is not permitted. This means that you may not discuss your problem sets, paper assignments, exams, or any other assignments with other students. All work should be entirely your own and must use appropriate citation practices to acknowledge the use of books, articles, websites, lectures, discussions, etc., that you have consulted to complete your assignments.



Final Project:
The final project is to be completed either individually or in groups of two and will account for 30% of your final grade.

Due date: 3pm on Friday, December 14.

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 Matlab-based 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.