Lab Manuals Student Materials Documentation
PythonEssentials.pdf Lab Descriptions
DataScienceEssentials.pdf Lab Materials Index
Volume1.pdf GettingStarted.pdf


Foundations of Applied Mathematics is a series of four textbooks developed for Brigham Young University’s Applied and Computational Mathematics degree program for beginning graduate and advanced undergraduate students. These are as follows:

The textbooks are being published by the Society for Industrial and Applied Mathematics. Volume 1 and Volume 2 are available now. The remaining volumes are in active development.

This site contains a collection of Python labs that go in tandem with the textbooks. These expose students to applications and numerical computation and reinforce the theoretical ideas taught in the text. The text and labs combine to make students technically proficient and to answer the age-old question, “When am I going to use this?”

The Python Essentials labs introduce Python and its scientific computing tools. The Data Science Essentials labs introduce common tools for gathering, cleaning, organizing, and presenting data in Python. The Volume 1 and Volume 2 labs are also currently available; labs for the other volumes are forthcoming.

The following supplementary materials are being developed in addition to the texts and lab materials.

Students: Getting Lab Materials

Get started by downloading the Python Essentials lab manual and the accompanying materials. The first appendix in the manual has instructions about how the lab materials are organized and how to get set up, including downloading the data.

Instructors: Teaching from the Labs

At BYU we normally have students do the first seven labs from Python Essentials before beginning the regular labs for Volume 1 and Volume 2, and the remaining Python Essentials labs are worked into the curriculum during the rest of the year. But students who have completed the first five essentials labs can probably get started on the regular labs, especially if they find a way to do the next two Python Essentials labs fairly soon thereafter.

Each lab has a specifications file—a Python file or a Jupyter Notebook with predefined functions for students to implement. Using these spec files allows instructors and teaching assistants to quickly test and grade student submissions.

Additional instructor materials, including solutions files and automated test drivers, are available for instructors and teaching assistants. Please contact us at if you would like access to these resources.


Managing Editors


Faculty Contributors


R. Jones, S. McQuarrie, M. Cook, A. Zaitzeff, A. Henriksen, R. Murray

Student Contributors

J. Adams, J. Bejarano, Z. Boyd, M. Brown, A. Carr, C. Carter, T. Christensen, M. Cook, R. Dorff, B. Ehlert, M. Fabiano, K. Finlinson, J. Fisher, R. Flores, R. Fowers, A. Frandsen, R. Fuhriman, T. Gledhill, S. Giddens, C. Gigena, M. Graham, F. Glines, C. Glover, M. Goodwin, R. Grout, D. Grundvig, E. Hannesson, K. Harmer, J. Hendricks, A. Henriksen, I. Henriksen, C. Hettinger, S. Horst, K. Jacobson, R. Jenkins, J. Leete, J. Lytle, E. Manner, R. McMurray, S. McQuarrie, D. Miller, J. Morrise, M. Morrise, A. Morrow, R. Murray, J. Nelson, E. Parkinson, M. Probst, M. Proudfoot, D. Reber, H. Ringer, C. Robertson, M. Russell, R. Sandberg, C. Sawyer, M. Stauffer, E. Steadman, J. Stewart, S. Suggs, A. Tate, T. Thompson, M. Victors, E. Walker, J. Webb, R. Webb, J. West, A. Zaitzeff


This work is licensed under the Creative Commons Attribution 3.0 United States License. To view a copy of this license please visit

This project is funded in part by the National Science Foundation, grant no. TUES Phase II DUE-1323785.

Last updated August 2018 (see the release notes).