## CS 450 Numerical Analysis

course description | time | location |
---|---|---|

Course catalog entry | 3:30-4:45pm TR | 1404 Siebel Center |

### Course staff

**Instructor**

name | office hours | office | |
---|---|---|---|

Prof. Paul Fischer | fischerp@illinois.edu | 11am-12pm Mondays, 10-11am Wednesdays | 4320 Siebel Center |

**Teaching assistants**

name | office hours | location | |
---|---|---|---|

Josh Bevan | jjbevan2@illinois.edu | 1:30-3:30pm Tuesdays | SC 0207 |

Erin Carrier | ecarrie2@illinois.edu | 9:30-11:30am Thursdays | SC 0207 |

Lishen He | lhe10@illinois.edu | 9:00-11:00am Fridays | SC 0207 |

Shelby Lockhart | sll2@illinois.edu | 2:00-4:00pm Wednesdays | SC 0207 |

### Textbook

*Scientific Computing: An Introductory Survey*
by Michael T. Heath, McGraw-Hill, 2nd edition, 2002

### Discussion forum

https://piazza.com/illinois/spring2017/cs450/home

### Video recordings of lectures

### Exams, quizzes, and homework

**Exams**: two midterms and a final exam, both of which will be offered in
the Computer-Based Testing Facility
(located in room 57 Grainger Library).

- Midterm Exam 1: Saturday, March 4, 2017 - Tuesday, March 7, 2017
- Midterm Exam 1 Retry: Saturday, March 11, 2017 - Tuesday, March 14, 2017
- Midterm Exam 2: Saturday, April 8, 2017 - Tuesday, April 11, 2017
- Midterm Exam 2 Retry: Saturday, April 15, 2017 - Tuesday, April 18, 2017
- Final Exam: Thursday, May 4, 2017 - Wednesday, May 10, 2017

You may have one retry for each of the midterm exams (not the final). See the detailed policies below for more information on exam retries.

**Quizzes**: approximately weekly, to be taken online on this website
(see detailed schedule below).
**Homework**: assignments due every two weeks (see detailed schedule
below). Homework will involve both written exercises and computer problems.
The latter must be done in Python.
**Projects**: students taking the course for 4 credit hours must complete
a term project. See detailed schedule below for various due dates. More
project details can be found at the bottom of this page.

More detailed policies on exams, quizzes, and homework are given below.

### Course Policies

**Homework Policies**:

- Homeworks have
**one**graded attempt. Once your assignment is submitted, you cannot change your solutions. Homework submissions will not be reopened. - As soon as you start the homework, you should make sure that the desired option for "At deadline" is selected. If "Submit session for grading" is selected, your assignment will be automatically submitted at the deadline. If you wish to work on the assignment after the deadline and submit late, you must select "Do not submit session for grading". Otherwise, your assignment will automatically be submitted at the deadline and your session will not be reopened.
- Late Policy: Homeworks are due at 5pm on the due date. Homework submitted after the deadline will receive half-credit (i.e., your work will be graded and multiplied by 0.5). You can submit homework for half-credit for up to one week. You must "submit your assignment" (the green check box in the upper right) and "confirm" before the deadline or have the "At deadline" option set to "Submit session for grading"; if you start a homework before the deadline, but finish after the deadline, then you will receive half-credit. No credit will be awarded for homework more than one week late.
- Solutions to the homework are viewable (and reviewable) after the due date. If you are submitting homework for the half-credit due date, you can look at the solutions, but you cannot directly copy the sample solution. What you submit must still be written by you, not just copied.
- A homework is considered either all late or all on-time. If any portion of the homework is submitted after the deadline then the entire homework will be graded as late.
- The work you submit in your homework must be your own. Collaboration among students is not permitted. General discussion among students is acceptable, but detailed sharing of code or solutions is prohibited.
- For any homework problems requiring file submissions, the uploaded file must be in PDF format, clearly legible, with all problem parts clearly labeled. For non-coding problems with file upload submissions, you must show your work (showing how you arrived at your answer and/or explaining your answer as appropriate). For these problems, an answer without appropriate work will receive little or no credit.
- For coding problems, it is your responsibility to ensure that the code runs
without errors and produces the desired output on Relate. The course staff will
**not**change your code or reopen your homework submission to correct mistakes. - All plots should be clearly titled, labeled, and have legends as appropriate. Failure to do so will result in loss of points.

**Quiz Policies**:

- Quizzes have
**one**graded attempt. Once you submit a quiz, you cannot change your answers. - Quizzes are due 10 minutes before the start of class on the day they are due (see schedule below).
- Unlike homework, you must
**fully**submit your quiz (there is no automatic submission at the deadline). If you do not submit your quiz (by pressing the green check box in the upper right and confirming submission), you will receive no credit for the quiz (regardless of whether or not answers were saved for individual questions). - No late quiz submissions will be accepted.

**Piazza Policies**:

- Piazza will be used for important class communications. It is your responsibility to monitor Piazza for Instructor notes.
- The course staff will not debug source code via Piazza. If you would like help debugging your code, you will need to come to office hours.
- It's okay to ask questions regarding homework problems, but please do not post your solutions (e.g. large blocks of code, handwritten solutions, etc).
- Before posting a question, search for keywords from your question. This helps minimize duplicate questions, making it easier for other students to search for answers to their questions.
- Please ensure that your name on Piazza is set to your actual name.

**Exam Policies**:

- All exams must be taken in the CBTF during the designated testing period.
- No exams will be administered outside of the CBTF.
- Because we allow a multiple day period for you to schedule your exam, no makeup or conflict exams will be given except in cases of severe emergencies. We recommend not signing up for last day, particularly if you are likely to get sick.

**Exam Retry Policies**:

- You may have one retry for each midterm exam (not the final).
- The retry exam will not be the same exam as the first try.
- The retry exam must also be taken in the CBTF during the designated retry period.
- If you elect to retake an exam, your score will be $\max(S_1, 0.8*S_2)$, where $S_1$ is the score on your first try and $S_2$ is the score on the second try. (In efffect, the highest grade you can get on the retry is $80/100$)

### Class schedule

|date|topic|homework|quiz|project (4-credit only)| |---|---|---|---|---|---| |Tue Jan 17|Scientific computing| | | | |Thu Jan 19|Scientific computing|HW1 assigned|Quiz 0 due (no credit quiz)| | |Tue Jan 24|Linear systems| |Quiz 1 due| | |Thu Jan 26|Linear systems| | | | |Tue Jan 31|Linear systems|HW1 due Wed. Feb 1| | | |Thu Feb 2|Linear least squares| |Quiz 2 due| | |Tue Feb 7|Linear least squares|| | | |Thu Feb 9|Eigenvalue problems| |Quiz 3 due| | |Tue Feb 14|Eigenvalue problems|HW2 due Wed. Feb 15| | | |Thu Feb 16|Eigenvalue problems| | | | |Tue Feb 21|Nonlinear equations| | | | |Thu Feb 23|Nonlinear equations| |Quiz 4 due| | |Tue Feb 28|Nonlinear equations|HW3 due Wed. Mar 1| | | |Thu Mar 2|Optimization| |Quiz 5 due| | |Tue Mar 7|Optimization| | |Proposal due| |Thu Mar 9|Optimization| | | | |Tue Mar 14|Interpolation| HW4 due Wed. Mar 15|Quiz 6 due| | |Thu Mar 16|Interpolation| | | | |Tue Mar 21|Spring break| | | | |Thu Mar 23|Spring break| | | | |Tue Mar 28|Numerical quadrature| |Quiz 7 due| | |Thu Mar 30|Numerical quadrature| | | | |Tue Apr 4|IVPs for ODEs|HW5 due Wed. Apr 5|Quiz 8 due| | |Thu Apr 6|IVPs for ODEs| | | | |Tue Apr 11|IVPs for ODEs| | |Progress report due| |Thu Apr 13|BVPs for ODEs| |Quiz 9 due| | |Tue Apr 18|BVPs for ODEs| HW6 due Fri. Apr 21 | | | |Thu Apr 20|PDEs| |Quiz 10 due| | |Tue Apr 25|PDEs| | | | |Thu Apr 27|PDEs| | | | |Tue May 2|PDEs|HW7 due Wed. May 3|Quiz 11 due|Final report due|

### Grading Information

#### Grade Breakdown

Weight | |
---|---|

HW | 30% |

Quiz | 10% |

Midterm 1 | 15% |

Midterm 2 | 15% |

Final | 30% |

#### Grade Scale

Academic Grading System in the US

Course Grade | Total Score as weighted above |
---|---|

A+ | [97,100) |

A | [93,97) |

A- | [90,93) |

B+ | [87,90) |

B | [83,87) |

B- | [80,83) |

C+ | [77,80) |

C | [73,77) |

C- | [70,73) |

D+ | [67,70) |

D | [63,67) |

D- | [55,63) |

F | [ 0,55) |

### 4 Credit Hour Project Details

All students taking the course for 4 credit hours must complete a project. This project is chosen by the student with the consent of the instructor.

To ensure that a given project is appropriate in scope and content, students must submit a brief description of the proposed project for approval before beginning implementation. The instructor may suggest modifications or alternatives, if appropriate. Projects are evaluated for both correctness and creativity. Projects are graded as satisfactory/unsatisfactory and make no contribution to the final grade, only to the hours of credit received.

Progress proposals, reports and final reports will be submitted on Relate (the course website). Additional details regarding expectations for the progress report and the final project report will be given in the individual submission spots. Due dates for each portion are shown in the schedule above.

Possible types of projects include:

- An education module that illustrates or demonstrates an important concept or algorithm covered in the course.
- A research project on some general numerical method.
- A research project in which a student applies a numerical method to solve a specific problem arising in the student's own research area.
- If none of the previous categories is appealing, then a project consisting of extra homework (assigned by the instructor) is acceptable. In this case, the project proposal should specify a preferred topic (e.g. textbook chapter) on which the homework will be chosen.

If you are unsure about what project to propose or what sort of project is acceptable, feel free to consult the instructor.

### Python Resources

Python is the required programming language for completing the homework problems for this course. Listed below are many good resources available for Python, Numpy/Scipy, and Matplotlib.

#### General Python Help

- Python tutorial
- Facts and myths about Python names and values
- Dive into Python 3
- Learn Python the hard way
- CSE workshop training material

#### Numpy/Scipy Help

- Introduction to Python for Science
- Numpy for MATLAB Users
- The SciPy lectures
- The Numpy MedKit by StÃ©fan van der Walt
- Numpy/Scipy documentation
- More in this reddit thread
- An introduction to Numpy and SciPy
- 100 Numpy exercises

#### Matplotlib Help

- Pyplot Tutorial
- Matplotlib Gallery These example plots with corresponding code can be quite helpful.
- Matplotlib Tutorial by Nicolas P. Rougier