Math 56: Computational Methods

Instructor: Jonathan Lindbloom

Class Meetings

Meeting Location Time
Lecture Kemeny 004 MWF 10:10 - 11:15am
X-hour Kemeny 004 Thu 12:15 - 1:05pm
Office hours Kemeny 219 or Zoom M-F by appointment

About This Course

This is a first course in computational methods, with an emphasis placed on numerical linear algebra (NLA). Topics that will be covered include (but are not limited to):

  • Matrix factorizations and analysis
  • Floating point, conditioning, stability, and accuracy
  • Direct and sparse direct methods
  • Least squares problems
  • Iterative methods
  • Eigenvalue problems
  • Various applications in applied mathematics, natural sciences, engineering, data science

ORC course description

Course Learning Objectives

Over the course of this term, you will…

  • Gain familiarity with fundamental algorithms and paradigms for solving various problems in NLA.
  • Practice assessing the computational cost of a numerical method and selecting an appropriate solver for a given problem.
  • Appreciate the implications of floating point and the importance of stability in numerical computations.
  • Write and debug basic implementations of numerical linear algebra algorithms in Python.
  • Practice interpreting and explaining numerical results clearly and effectively.

Textbook

The course textbook is A First Course in Numerical Methods (Ascher and Greif), which is freely available online through the Dartmouth library.

Prerequisites

Math 22 or 24 (linear algebra). Some experience in Python or another programming language is expected.

Grading

The final course grade will be calculated from the following scheme:

Category Percentage
Weekly problem sets / computational assignments 70%
Midterm and final 20%
Participation 10%

Important Dates

See the 2024-2025 term calendar for a complete list.

  • 1/6/25: Winter term classes begin
  • 1/19/25: Last day to establish official course load
  • 1/20/25: Martin Luther King Jr. Day
  • 1/21/25: Final day for electing use of the Non-Recording Option (NRO)
  • 2/21/25: Final day to withdraw from a course
  • 3/7/25: Winter term classes end
  • 3/10/25: Final Examination period begins
  • 3/13/25: Scheduled Final Examinations end
  • 3/24/25: Final grades available

Course Policies

Honor Principle

Students are encouraged to work together to understand the course material, including working together on the problem sets and computational assignments. However, students should submit their own solutions resulting from their own understanding of the course material, as well as make a note at the top indicating any students that they collaborated with. Copying homework solutions is not allowed and will result in zero points for all parties involved. No collaboration with other students is allowed on the midterm or final exams.

Additionally, students are expected to adhere to Dartmouth’s Academic Honor Principle.

Student Accessibility Services

Students requesting disability-related accommodations and services for this course are required to register with Student Accessibility Services (SAS; Apply for Services webpage; student.accessibility.services@dartmouth.edu; 1-603-646-9900) and to request that an accommodation email be sent to me in advance of the need for an accommodation. Then, students should schedule a follow-up meeting with me to determine relevant details such as what role SAS or its Testing Center may play in accommodation implementation. This process works best for everyone when completed as early in the quarter as possible. If students have questions about whether they are eligible for accommodations or have concerns about the implementation of their accommodations, they should contact the SAS office. All inquiries and discussions will remain confidential.

Student Religious Observances

Dartmouth has a deep commitment to support students’ religious observances and diverse faith practices. Some students may wish to take part in religious observances that occur during this academic term. If you have a religious observance that conflicts with your participation in the course, please meet with me as soon as possible to discuss appropriate course adjustments.

Generative AI

You are welcome to utilize tools such as chatbots to assist with your learning (e.g., see the new AI Dartmouth webpage). AI-based assistance, such as ChatGPT and Github Copilot, will be treated the same way as collaboration with other people: you are welcome to talk about your ideas and work with other people, both inside and outside the class, as well as with AI-based assistants. However, all work you submit must be your own. You should never include in your assignments anything that was not written directly by you. Including anything you did not write in your assignment without proper citation will be treated as academic misconduct. An exception I will make for this class are “convenience code snippets” that accomplish simple tasks not particularly relevant to the material, e.g., asking ChatGPT to produce matplotlib code for a certain plot you have in mind. To help avoid misconduct, I request that you refrain from directly asking AI questions from the problem sets or computational assignments.

I will also offer the following advice: chatbots are best used for gaining a cursory understanding of new material and discovering new references, but may actually be an obstacle to your learning if relied on too heavily when trying to get a deeper understanding. In mathematics, it is particularly easy to trick yourself into thinking you understand concepts just by reading them — much of the real learning happens when you try to tackle questions about concepts using your own understanding. If you leave the second part to chatbots, then you will miss out on deepening your own understanding.

This policy is adapted from David Joyner’s policy.

Late Work

Late work incurs a 10% penalty for each day late, unless a prior extension has been granted.