This repository contains all the Python scripts from the book:
by Vasilis Pagonis and Christopher Wayne Kulp
CRC Press, 2024
This book will be released on May 14, 2024
Book website at Amazon: https://www.amazon.com/Mathematical-Methods-using-Python-Applications/dp/1032278366
ABOUT THIS BOOK
This advanced undergraduate textbook presents a new approach to teaching mathematical methods for scientists and engineers. It provides a practical, pedagogical introduction to utilizing Python in Mathematical and Computational Methods courses. Both analytical and computational examples are integrated from its start. Each chapter concludes with a set of problems designed to help students hone their skills in mathematical techniques, computer programming, and numerical analysis. The book places less emphasis on mathematical proofs, and more emphasis on how to use computers for both symbolic and numerical calculations. It contains 182 extensively documented coding examples, based on topics that students will encounter in their advanced courses in Mechanics, Electronics, Optics, Electromagnetism, Quantum Mechanics etc.
An introductory chapter gives students a crash course in Python programming and the most often used libraries (SymPy, NumPy, SciPy, Matplotlib). This is followed by chapters dedicated to differentiation, integration, vectors and multiple integration techniques. The next group of chapters covers complex numbers, matrices, vector analysis and vector spaces. Extensive chapters cover ordinary and partial differential equations, followed by chapters on nonlinear systems and on the analysis of experimental data using linear and nonlinear regression techniques, Fourier transforms, binomial and Gaussian distributions. The book is accompanied by a dedicated GitHub website, which contains all codes from the book in the form of ready to run Jupyter notebooks. A detailed solutions manual is also available for instructors using the textbook in their courses.
Key Features:
· A unique teaching approach which merges mathematical methods and the Python programming skills which physicists and engineering students need in their courses.
· Uses examples and models from physical and engineering systems, to motivate the mathematics being taught.
· Students learn to solve scientific problems in three different ways: traditional pen-and-paper methods, using scientific numerical techniques with NumPy and SciPy, and using Symbolic Python (SymPy).
Vasilis Pagonis is Professor of Physics Emeritus at McDaniel College, Maryland, USA. His research area is applications of thermally and optically stimulated luminescence. He taught courses in mathematical physics, classical and quantum mechanics, analog and digital electronics and numerous general science courses. Dr. Pagonis’ resume lists more than 200 peer-reviewed publications in international journals. He is currently associate editor of the journal Radiation Measurements. He is co-author with Christopher Kulp of the undergraduate textbook “Classical Mechanics: a computational approach, with examples in Python and Mathematica” (CRC Press, 2020). He has also co-authored four graduate-level textbooks in the field of luminescence dosimetry, and most recently published the book “Luminescence Signal analysis using Python” (Springer, 2022).
Christopher W. Kulp is the John P. Graham Teaching Professor of Physics at Lycoming College. He has been teaching undergraduate physics at all levels for 20 years. Dr. Kulp’s research focuses on modelling complex systems, time series analysis, and machine learning. He has published 30 peer-reviewed papers in international journals, many of which include student co-authors. He is also co-author of the undergraduate textbook “Classical Mechanics: a computational approach, with examples in Python and Mathematica” (CRC Press, 2020).
TO OUR READERS
We have kept the number of required external Python packages intentionally at a minimum, so that newcomers to Python can follow the codes easily.
All figures in this book were produced using the scripts in this repository, so that users know immediately what to expect when they run the scripts.
Experienced programmers will find out that they can improve the codes given here, and it is of course possible to make the codes more compact and elegant. However, we chose to provide codes which are simple and clear, and which can be easily modified for the purposes of the reader, rather than attempting to create compact codes which may be difficult to follow and modify.
We hope you will find the scripts useful and that you will enjoy running and modifying the various files. If you find that some script is not clear or has inaccuracies, kindly let me know at vpagonis@mcdaniel.edu
Enjoy!
Vasilis Pagonis
Professor of Physics Emeritus, McDaniel College, USA
Christopher W. Kulp
Professor of Physics, Lycoming College, USA