Scientific Computation with Python in Jupyter Notebooks

Faculty Commons material developed by Mark Matlin - Published July 19, 2023

A suite of Jupyter notebooks ("modules") using Python to teach scientific computing. The modules can be used as part of a formal course or for self study. An introductory document ("Module 0") motivates learning scientific computation and provides general resources. The first notebook ("Module 1," in three parts) teaches the basics of Python programming. Subsequent modules introduce different topics in scientific computation: numerical errors, iteration, numerical differentiation and integration, the solution of linear equations, the solution of eigenvalue equations, the basics of Pandas and data analysis, Fourier analysis, the solution of ordinary and partial differential equations, Monte Carlo methods, symbolic computing, object-oriented programming, parallel computing, and machine learning. Each module contains exercises, solutions to which can be provided to adopting instructors. Adopters should read the Instructor's Guide first for instructions on using the modules, details on the underlying pedagogy, and information on the modules' contents and dependencies.

This material is freely available to registered verified educators.

Login or register as a verified educator for free to access instructor-only material.