Stuff you need to know.

Course General

Course Catalog Description

Fundamentals of numerical methods for students in science and engineering; floating-point computation, systems of linear equations, approximation of functions and integrals, the single nonlinear equation, and the numerical solution of ordinary differential equations; various applications in science and engineering; programming exercises and use of high quality mathematical library routines. Course Information: Same as MATH 357. Credit is not given for CS 357 if credit for CS 450 has been earned. (Counts for advanced hours in LAS).


A 100-level computer science course; MATH 225 or MATH 415; MATH 241.

Learning Objectives

  • Analyze the sources of errors in mathematical operations on the computer
  • Recognize major numerical methods and their merits and pitfalls
  • Calculate the computational cost of a range of numerical methods
  • Select and use software tools, based on their numerical methods, for a range of problems
  • Estimate the accuracy in approximated numerical solutions

Topic List

  • Numerical experiments, randomness, Monte Carlo simulations
  • Errors (rounding and truncation)
  • Taylor series
  • Floating point representation and operations
  • Linear system of equations
  • Sparse storage and computation
  • Eigenvalue problems
  • Singular value decomposition
  • Data fitting
  • Root finding
  • Optimization

Grading Policies

Grade Breakdown

Your grade is composed of the following components:

Component Contribution Notes
Quiz 350 points 50 points each
Final 300 points  
Homework 260 points 20 points each
MP 90 points 18 points each
Total 1000 points  

All grades will be available on Compass2g and will be updated periodically throughout the semester.

Grading Scale

Your assignment scores (quizzes, HW, MP and final exams) will be added up resulting in a single number. This number will determine your letter grade, according to the following grading scale:

Grade Point Range
A >= 930
A- [900, 930)
B+ [870, 900)
B [830, 870)
B- [800, 830)
C+ [770, 800)
C [730, 770)
C- [700, 730)
D+ [670, 700)
D [630, 670)
D- [600, 630)

Extra points

There is an opportunity for significant extra credit in this course. As you can see from the table below, you can get extra points for participation in some of the lectures (when we have collaborative activities using jupyter notebook) or completing an optional linear algebra quiz towards the end of week 1. I will also assign extra credit to some of the HWs, MPs or even quizzes. I will give a total of 120 points of extra credit. However, the total amount of extra credit you can earn is capped at 100 points, or one letter grade.

Component Contribution Notes
In-class Activity 50 points 5 points each
LA Quiz 20 points  
Others 50 points  
Total 120 points  

Note that class attendance is NOT required, and I have no objections if you prefer to never attend any of my lectures. Indeed, all the assignments are offered online, I record all my lectures and make them available to you, and also post slides and annotations from lecture.

The extra credit points that you can earn for in-class activities are not given based on attendance only. You will be expected to participate in the class activity. So please don’t come to the classroom to watch a video on your laptop, or work on a HW assignment.

To earn a A+ in the class, your total score should be greater than 1070 points.

General Rules

Any questions, concerns, or misgivings regarding a specific grade must be raised within one week of the release of the grade. After one week has passed, the assigned grade is considered accepted and no further complaints will be considered.


We will be using Piazza for communication. The course staff will post important announcements on Piazza and it is your responsibility to monitor Piazza for these announcements. If you have a question or a concern, please post it on Piazza. Most questions can be posted publicly. However, if you are asking a question about your grades specifically or some other private matter, you may post the question/note privately. Specifically, do not post answers (answers, plots, code etc.) publicly on Piazza.

Please do not email the course staff, but post on Piazza instead. This is both to assist other students who may have similar questions and to ensure you receive the fastest response possible by making it visible to the entire course staff.

We will not debug code via Piazza. If you need assistance debugging your code, please come to office hours.

Office Hours

Teaching and Course Assistants office hours are held in Siebel 0209, according to the schedule below. Office hours start on week 2.

Time Monday Tuesday Wednesday Thursday Friday
1-2pm         Raul
2-3pm   Tao   Vishal Raul
3-4pm Xiaoyan Tao Nicolas + Siyuan Peter + Hao Nicholas
4-5pm   Vishal(1) Nicolas + Siyuan Peter + Hao Nicholas
5-6pm Jerry/Yikai Vishal(1) Kaushik    
6-7pm Jerry/Yikai Vishal Kaushik    

(1) On Sep 3, Oct 1, Oct 15 and Nov 12, office hours are scheduled from 5-7pm. On the other Tuesdays, they will be split from 4-5pm and 6-7pm.

If you need to help debugging your code, you are encouraged to attend office hours where two people are assigned on that slot. One of the assistants will be using the queue for students that need more individualized assistance.

I will be having office hours on Mondays 11-12pm, Siebel 2213. Note that I will not be available every Monday. Check Piazza for updated information about my office hours. You should come to my office hours if you want to talk about general course topics, discuss content from lectures and ask questions regarding the quizzes. You should try to attend the office hours listed above when you have specific questions about HW or need help debugging your code (these type of questions usually require more time, and I want to make sure I can give attention to all students that stop by my office hours.)


Lecture attendance is not required but strongly encouraged. You will be asked to work on small activities during lecture using Jupyter notebooks.

Students that attend lecture and participate in these activities can earn extra points. Note that your physical presence is not sufficient for earning extra credit.


Weekly online homework sets will be assigned via PrairieLearn (PL). The due dates are indicated in the lecture schedule (the schedule may be subjected to changes during the semester). Each homework is due at 8pm on the due date.

The weekly homework assignments will alternate between two types:

  • Machine Problems (labeled with MP inside PL): longer programming assignments
  • “Traditional” HWs (labeled with HW inside PL): mixture of short questions such as multiple-choice, checkbox and fill-in the blank and short coding questions.

The short questions place an emphasis on mastery. The idea is to keep doing questions until you master the underlying concept or method. Once you do, you should be able to answer these questions very quickly. The way this works in PrairieLearn is that each question has a value, a point total, and a point maximum. If you answer a question correctly, two things happen:

  1. The point total increases by the value, until you reach the point maximum.
  2. The value increases (2x, 3x, 4x, etc.).

If you answer a question incorrectly, one thing happens:

  1. The value goes back to what it was originally (1x).

This system rewards repeated correct answers, which tend to demonstrate mastery. There is no penalty (other than resetting the value) for answering a question incorrectly, so don’t be afraid to submit an answer. Similarly, don’t be afraid to keep doing a question after you reach the point maximum - your point total will never go down!

If you click on the “?” just to the right of the line about available credit, you’ll see all the dates associated with this homework. In particular, it could say:

* You can receive 100% until Main End Date
* You can receive 50% until Extended End Date (two days later)
* You can receive 0%, but can keep doing problems as practice
  for the rest of the semester.

Note that your score will never go down. For example, if you achieve 90% by the Main End Date, you won’t be able to increase your score after that time, but you won’t be penalized for not reaching 100% - your score will remain 90% forever. On the other hand, if you achieve only 30% by the Main End Date you will be able to increase your score after that time (to a maximum of 50%) until the Extended End Date.


Collaboration on Homework Assignments (especially coding questions)

You may discuss your approach (but not your code) with your peers. All parts of each homework set or machine problem must be your own work. You must have typed/written every part of your homework yourself. In some cases, code/pieces of work from elsewhere may be allowed–if so, this will be stated in the instructions. In that case, you must acknowledge the source.

If we notice that your work has considerable overlap with someone else’s (and we do check), the both of you should be ready to have an unpleasant conversation and face penalites as provided by campus rules regarding academic honesty.

Quizzes & Exams

Quizzes and Final Exam

Throughout the semester, you will take 7 quizzes (50-minute) that will have a mixture of short questions and short coding questions (similar to the questions that appear in your HW). You will also take a 3-hour final exam at the end of the semester. This course uses the College of Engineering Computer-Based Testing Facility (CBTF) for its quizzes and final exam, all offered via PrairieLearn.

Please familiarize yourself with the policies of the CBTF. The policies of the CBTF are the policies of this course, and academic integrity infractions related to the CBTF are infractions in this course.

Any problem with testing in the CBTF must be reported to CBTF staff at the time the problem occurs. If you do not inform a proctor of a problem during the test then you forfeit all rights to redress.

Quiz 0 (Linear Algebra Review)

In the second week of the semester, there will be a review quiz over linear algebra topics. You will be able to earn extra points if you decide to take this optional quiz.

There will also be a practice quiz0 that is not for credit. The purpose of the practice quiz0 is for you to review background course material before quiz0 and to learn more about what a PL quiz will look like in the CBTF and how they function.

Note: as there will be homework assignments before later quizzes, there will not be practice quizzes for the other quizzes.

Taking Quizzes / Final Exam

  • You must take your quizzes as scheduled with the CBTF, and only on the scheduled day and time. If you do not take the quiz (e.g. by not scheduling an appointment, by not reporting to the facility at the scheduled time, or by not performing the required work), the quiz will be counted as a zero.

  • There will be no exceptions to this scheduling policy except in cases of severe emergency (e.g., loss of life or limb). Examples of events that do not qualify as emergencies include (but are not limited to): transportation problems, conflict with work schedule, important family vacation, or computer problems. The policies of the facility apply during each quiz for aspects such as late arrival and emergency closures.

  • See the below section for appropriate documentation required for quizzes missed due to university-approved activities.

  • If you miss a quiz for any reason and you realize you missed it while it is still within the quiz period, then you must contact the CBTF proctors immediately. If it is sill within the quiz period, then depending on the circumstances and pending availability, you may be able to reschedule. If you fail to contact the proctors immediately, then you forfeit the opportunity to take the quiz.

  • No aids other than a writing utensil and paper provided by the facility are allowed in the CBTF. In particular: If you are seen near a phone, MP3 player or other digital device (turned on or not–it does not matter) during an quiz/exam, you will receive a grade of zero for the assessment.

  • Extended illnesses or emergencies should follow the policies outlined by the Office of the Dean of Students.

  • Only quizzes taken in accordance with these rules will receive credit. Any deviation from these rules will lead to the quiz in question being assinged a grade of zero.

  • You are not allowed to discuss the quiz with other students during the quiz period. Please refrain from discussing the questions until after the quiz period ends.

Reviewing Quizzes

When you finish your quiz, you will see the correct answers and your score on the quiz. As you are reviewing your quiz at the end, please take a mental note and memorize any questions you have regarding the quiz as you will not have access to the quiz once you leave the CBTF.

After the quiz period has ended, you may come come to office hours the following week (Monday-Friday) and ask specific questions regarding the quiz. After the Friday following the end of a specific quiz period, no additional questions regarding the quiz will be addressed. You will need to bring specific questions about the quiz as the TAs and CAs will not open your quiz and go through it with you.


  1. Excuses from assessments will only be given in the following circumstances:

    A. Illness

    B. Personal crisis (e.g. car accident, required court appearance, death of a close relative).

    C. Required attendance at an official UIUC activity (e.g. varsity athletics, band concert).

  2. In all cases you must fill out the excused absence request form and upload the appropriate documenation.

  3. In cases (A) or (B) an official excuse letter from the (Dean on Duty) must be uploaded with the form within 2 weeks of the due date of the missed assessment, no later than reading day. In cases of extended or unusual illness, late submission of excuse documentation will be considered.

  4. In case (C) an official letter from the designated university official must be uploaded at least one week prior to the due date of the missed assessment.

  5. Notwithstanding the above, at your professor’s discretion you may be required to make up any excused work or attend substitute instruction or assessment.


If you are interested in taking the course, please officially register for the course. If there are no open seats, but you intend to register once seats become available, you can still complete the HW assignments on PrairieLearn. You can also get provisional registration to take quizzes at CBTF during the first 10 days of classes.

If you choose to make use of the provisional registration, you will be held to the same standard as every other student that is officially registered for the class, and, at the discretion of the instructor, work you do as part of this ‘unofficial’ participation may be eligible for class credit if you later become officially registered.

However, please keep the following two things in mind:

  1. While it is quite likely that spots will open up as the semester continues, we are unable to promise that this will happen.

  2. As long as you are not officially signed up (check with the academic office in 1210 Siebel if you’re not sure), you will not receive university credit for the work you are doing.


If you have accommodations identified by the Division of Rehabilitation-Education Services (DRES), please post a private note on Piazza with your DRES LOA.

If you have accommodations for exams, please take your Letter of Accomodation (LOA) to the CBTF proctors in person before you make your first quiz reservation. The proctors will advise you as to whether the CBTF provides your accommodations or whether you will need to make other arrangements with your instructor.

Academic Integrity

Academic integrity, harassment, and discrimination: Academic integrity infractions, harassment, and discrimination of any kind will not be tolerated. See the University’s Student Code, Article 1, Part 4. Please see the Students’ Quick Reference Guide to Academic Integrity for more details.

Please see the departmental Honor Code for details on integrity and procedures.