Prof. Per-Olof Persson, Fall 2026
Department of Mathematics, UC Berkeley
Description: Basic concepts and methods in numerical analysis: solutions of equations in one variable; polynomial interpolation and approximation; numerical differentiation and integration; initial-value problems for ordinary differential equations; and direct methods for solving linear systems.
Prerequisites: Math 53 and Math 54, or equivalent. Basic programming experience is helpful (e.g., Math 98, Math 124, CS61A, Engin 7, or equivalent). An introductory MATLAB tutorial will be provided at the start of the course.
Lectures: MWF, 12:10pm–1:00pm, in Stanley 105.
Lecturer: Per-Olof Persson, persson@berkeley.edu.
Office hours: Mondays,
2:00pm–4:00pm, in Evans 1081.
Exams:
Required textbook: R. L. Burden and J. D. Faires, Numerical Analysis, 10th edition, Cengage Learning, 2015. ISBN-13: 978-1305253667. Note: The 9th edition is also supported.
Lecture slides
All in-class MATLAB code
The MATLAB programming language will be used for homework and programming assignments. There are several ways to use it:
If you have little or no prior programming experience, we highly recommend reviewing a previous offering of Math 98 (MATLAB for Math 128A).
Main course webpage: This page contains the official schedule, homework and programming assignments, and all other key course information.
bCourses: This site will be used for announcements and for posting solutions to homework and programming assignments. All official announcements, particularly those about policies and logistics, will be made exclusively on bCourses.
Gradescope: Gradescope will be used for submission of the homework and the programming assignments. For instructions on how to scan and upload work to Gradescope, see this video on submitting PDF homework and this handout with recommended scanning apps. You may also write your solutions on a tablet using note-taking software such as Notability, Goodnotes, or OneNote, or typeset the entire assignment using a word processor or LaTeX. Regardless of the method you choose, you must submit a clear, readable PDF.
For the programming assignments, you should submit a detailed and clean PDF report with your MATLAB code, plots, and comments. You may use any software to produce this PDF, such as Google Docs, Microsoft Word, LaTeX, or Overleaf. When you submit your work, make sure to indicate the page on which each problem appears.
All quizzes and exams will also be graded and returned to you via Gradescope.
Ed Discussion: This forum is for all discussions about the course material. We encourage you to ask and answer questions here. While instructors will monitor the forum, it is primarily a space for student-to-student collaboration.
Homework: The 12 weekly homework assignments are due on Wednesday mornings at 7:59am (before any discussion section meets). Homework is graded for completeness, with each submission receiving a score of 0, 1, or 2 based on the effort demonstrated. Correctness is not evaluated, so you are strongly encouraged to study the official solutions when they are posted. You may collaborate with classmates, but each student must write their own solutions independently. Your first two late homework submissions will be accepted without penalty if submitted within 48 hours of the deadline. Any additional late homework will receive a score of 0, and no submissions will be accepted more than 48 hours after the deadline. The lowest two homework scores will still be dropped. Approved extensions and DSP accommodations are handled separately and do not count toward these late-submission allowances.
Each homework submission should be self-graded on the first page according to the following guidelines:
Not all problems require equal effort. Use your best judgment; we will not be overly strict about borderline cases. We will conduct occasional spot checks. A substantially inaccurate self-assessment will trigger a review of all your homework submissions and may result in a substantial reduction in your homework grade.
Programming Assignments: There will be a total of four programming assignments, due at 11:59pm on the Fridays indicated in the course schedule. You must submit a detailed PDF report that includes your MATLAB code, plots, and comments. Reports will be graded using detailed rubrics in Gradescope. You may collaborate with classmates, but each student must write their own solutions, code, and report independently. Your first two late programming assignments will be accepted without penalty if submitted within 48 hours of the deadline. Any additional late programming assignment will receive a score of 0, and no submissions will be accepted more than 48 hours after the deadline. All four programming assignments count toward the course grade; no programming assignment scores are dropped. Approved extensions and DSP accommodations are handled separately and do not count toward these late-submission allowances.
Quizzes: There will be six pen-and-paper quizzes given in the Wednesday discussion sections. They will mostly cover the material from the last two homework assignments, but might include questions on any previous topic. There will be no makeup quizzes, but the lowest quiz score will be dropped when computing the grade.
Exams: Two pen-and-paper exams will be given. There will be one in-class midterm exam, scheduled for Friday, Oct 23, from 12:10pm–1:00pm. The final exam will be given on Friday, Dec 18, from 11:30am–2:30pm.
Grades: The final grade will be based on weekly homework assignments (10%), programming assignments (10%), quizzes (20%), the midterm exam (20%), and the final exam (40%). We will also calculate your grade with the midterm weighted at 0% and the final exam at 60%, and use whichever result is higher. Thus, you may miss the midterm without an automatic penalty, although taking it can only improve your course grade.
In this course, your goal is to master the material, not just produce correct answers. For the homework and the programming assignments, you are encouraged to learn from any available resource, including collaborating with classmates, consulting online materials (e.g., Stack Overflow), and using AI assistants (e.g., Gemini, ChatGPT). These are powerful tools for brainstorming, debugging, and understanding complex concepts. However, the fundamental rule is that the work you submit must be your own. You are responsible for understanding and being able to explain every part of your solutions and every line of your code from scratch.
Think of it this way: discussing mathematics and algorithms with a friend is valuable, and asking an AI to explain an error can be useful. However, simply copying a solution from any source without understanding it is academic dishonesty. You will be tested on these concepts in quizzes and exams, where these resources and collaborators will not be available. Homework is your opportunity to practice and genuinely learn the material, so make sure you are the one doing the learning.
| Lec | Date | Topic | Assignment Due |
|---|---|---|---|
| 1 | W 08/26 | Introduction | |
| 2 | F 08/28 | MATLAB Tutorial | |
| 3 | M 08/31 | MATLAB Tutorial | |
| 4 | W 09/02 | 1.1: Review of Calculus | |
| 5 | F 09/04 | 1.2: Round-off Errors and Computer Arithmetic | |
| M 09/07 | Labor Day — No lecture | ||
| 6 | W 09/09 | 1.3: Algorithms and Convergence | HW 1 |
| 7 | F 09/11 | 2.1: The Bisection Method | |
| 8 | M 09/14 | 2.2: Fixed-Point Iteration | |
| 9 | W 09/16 | 2.3: Newton’s Method and Its Extensions | HW 2, Quiz 1 |
| 10 | F 09/18 | 2.4: Error Analysis for Iterative Methods | |
| 11 | M 09/21 | 3.1: Interpolations and the Lagrange Polynomial | |
| 12 | W 09/23 | 3.3: Divided Differences | HW 3 |
| 13 | F 09/25 | 3.4: Hermite Interpolation | |
| 14 | M 09/28 | 3.5: Cubic Spline Interpolation | |
| 15 | W 09/30 | 4.1: Numerical Differentiation | HW 4, Quiz 2 |
| 16 | F 10/02 | 4.2: Richardson’s Extrapolation | PA 1 |
| 17 | M 10/05 | 4.3: Elements of Numerical Integration | |
| 18 | W 10/07 | 4.4: Composite Numerical Integration | HW 5 |
| 19 | F 10/09 | 4.5: Romberg Integration | |
| 20 | M 10/12 | 4.6: Adaptive Quadrature Methods | |
| 21 | W 10/14 | 4.7: Gaussian Quadrature | HW 6, Quiz 3 |
| 22 | F 10/16 | 4.8: Multiple Integrals | PA 2 |
| 23 | M 10/19 | 4.9: Improper Integrals | |
| 24 | W 10/21 | Review | HW 7 |
| 25 | F 10/23 | Midterm Exam (12:10pm–1:00pm) | |
| 26 | M 10/26 | 5.1: The Elementary Theory of Initial-Value Problems | |
| 27 | W 10/28 | 5.2: Euler’s Method | |
| 28 | F 10/30 | 5.3: Higher-Order Taylor Methods | |
| 29 | M 11/02 | 5.4: Runge-Kutta Methods | |
| 30 | W 11/04 | 5.9: Higher-Order Eqns and Systems of Differential Eqns | HW 8, Quiz 4 |
| 31 | F 11/06 | 5.6: Multistep Methods | |
| 32 | M 11/09 | 5.10: Stability | |
| W 11/11 | Veterans Day — No lecture | HW 9 | |
| 33 | F 11/13 | 5.11: Stiff Differential Equations | |
| 34 | M 11/16 | 6.1: Linear Systems of Equations | |
| 35 | W 11/18 | 6.2: Pivoting Strategies | HW 10, Quiz 5 |
| 36 | F 11/20 | 6.3: Linear Algebra and Matrix Inversion | PA 3 |
| 37 | M 11/23 | 6.4: The Determinant of a Matrix | |
| W 11/25 | Thanksgiving — No lecture | HW 11 | |
| F 11/27 | Thanksgiving — No lecture | ||
| 38 | M 11/30 | 6.5: Matrix Factorization | |
| 39 | W 12/02 | 6.6: Special Types of Matrices | HW 12, Quiz 6 |
| 40 | F 12/04 | Review | PA 4 |
| RRR week, 12/7–12/11 | |||
| F 12/18 | Final Exam (11:30am–2:30pm) |
| Section | Time (Wed) | Room | GSI | Email (@berkeley.edu) | Office hours |
|---|---|---|---|---|---|
| 110 | 8–9am | Evans 748 | Tomasz Schang | tom_schang | Tue 2–4pm, Evans 1041 |
| 101 | 9–10am | Evans 748 | Wanzhou Lei | wanzhou_lei | Tue 10am–12pm, room TBD |
| 102 | 10–11am | Evans 748 | Wanzhou Lei | wanzhou_lei | Tue 10am–12pm, room TBD |
| 103 | 11am–12pm | Evans 748 | Wanzhou Lei | wanzhou_lei | Tue 10am–12pm, room TBD |
| 104 | 1–2pm | Evans 748 | Julian Kaufmann | jkaufma | Tue 2:15–4:15pm, Evans 853 |
| 105 | 2–3pm | Evans 748 | Tomasz Schang | tom_schang | Tue 2–4pm, Evans 1041 |
| 106 | 3–4pm | Evans 748 | Tomasz Schang | tom_schang | Tue 2–4pm, Evans 1041 |
| 107 | 4–5pm | Evans B3A | Julian Kaufmann | jkaufma | Tue 2:15–4:15pm, Evans 853 |
| 111 | 5–6pm | Evans 748 | Julian Kaufmann | jkaufma | Tue 2:15–4:15pm, Evans 853 |