Computation and Problem Solving in Undergraduate Physics
Computation and Problem Solving in Undergraduate Physics (CPSUP) is a flexible text providing instruction in the use of computer-based symbolic and numerical approaches to problems in several areas of physics. The book includes descriptions of the main capabilities and features of several computational tools (IDL, MATLAB, OCTAVE, PYTHON, MAXIMA, MAPLE, MATHEMATICA, PROGRAMMING, FORTRAN, LSODE, MUDPACK, C, NUMERICAL RECIPES, LaTeX, and TGIF—though particular versions of CPSUP will typically include only a subset of these tools) and additional chapters illustrating the application of these tools to solving ordinary differential equations, evaluating integrals, finding roots, and solving partial differential equations via finite difference and finite element methods. Appendices introduce LaTeX, a sophisticated text-processing tool well adapted to preparing technical manuscripts, and TGIF, a UNIX-based program for creating elaborate two-dimensional figures. Physical examples are drawn from mechanics, electromagnetic theory, quantum mechanics, statistical mechanics, and several other areas.
The curricular development out of which this book has arisen has been guided since the mid 1970's by Professor David M. Cook and has been carried out in the Department of Physics at Lawrence University, a nationally-ranked liberal arts college and Conservatory of Music with about 1500 students located in Appleton, Wisconsin. A detailed description of that project can be found in Professor Cook's article "Computation in Undergraduate Physics: The Lawrence Approach," Am. J. Phys. 76, 321–326 (April–May, 2008). This theme issue of the American Journal of Physics was published in conjunction with a Gordon Conference held 8–13 June 2008 on the topic "Computation and Computer-Based Instruction."
Detailed Description of Project: Strengthening Computation in Undergraduate Physics Programs
Briefly, the primary aim of the project Strengthening Computation in Undergraduate Physics Programs is to produce flexible text materials that can be easily tailored for use in programs using a variety of different hardware platforms and software packages. To reflect the availability of a wide variety of software packages, this book can be assembled to include an arbitrarily chosen subset of the available components (IDL, MATLAB, OCTAVE, PYTHON, MAXIMA, MAPLE, Mathematica, FORTRAN, C, Numerical Recipes, LSODE, MUDPACK, LaTeX, and TGIF). With 14 components, each of which can be included or not, there are technically 214 = 16,384 versions, though the vast majority of those versions makes no sense. Most commonly a version containing one numeric and graphical tool (IDL, MATLAB, OCTAVE, or PYTHON) and one computer algebra system (MAXIMA, MAPLE, or Mathematica) with Programming, and LaTeX will be specified. Within that spectrum, only 24 different versions survive, all of which are available for download from this site, both in a linked version convenient for viewing on a computer monitor and in a non-linked version that is better if a printed copy is wanted.
Unfortunately, the level of customization involved poses severe problems for the publishing systems of commercial publishers. Prior to making CPSUP available for direct download, the author had endeavored to self-publish this book by receiving orders for customized assemblages of the materials, producing the required number of bound copies, and shipping them to the end user. As he has approached actual (as opposed to nominal) retirement, he has decided to provide several different assemblages of these materials for direct download to anyone who wishes them.
A more detailed description of the history of this project and of the structure of CPSUP is contained in the 216 KB-8 page PDF document Description of the Second Edition of CPSUP.
Preface and Table of Contents
The front matter in all assemblages of CPSUP contains
- the Preface,
- Acknowledgements,
- a Disclaimer in which the tested platform and tested versions of the software packages are identified, and
- the Table of Contents.
The first three items are the same in all assemblages of CPSUP. The fourth item in each version contains only those items relevant to the components of that assemblage. The first file below contains the Preface, Acknowledgements, and Disclaimer. The second file contains the full Table of Contents. To examine the Table of Contents as it is in a particular assemblage, visit the Download section, download whichever assemblage is of interest to you, open the file, and scroll to the Table of Contents.
The Table of Contents below includes all chapters and all sections within chapters. If only a subset of components is included in a particular assemblage, the chapters, sections and the occasional exercises related to omitted components will be omitted from the assemblage and also from the Table of Contents. Since chapter numbers, section numbers, subsection, and exercise numbers are preserved, there will then be gaps in those enumerations. Page numbers will, however, run continuously through each assemblage and equation, table, and figure numbers will run continuously through each chapter. References to different versions should be limited to chapter, section, and subsection numbers. References to pages, tables, equations, and figures will not translate accurately among assemblages.
Download Selected Assemblage
Each link (the PDF icon next to each item) in the following table will access the indicated version of CPSUP, either for viewing on a computer screen or downloading to your local storage. The linked and print versions are textually identical. In the linked versions, each internal reference (including those in the Table of Contents and Index) is hot-linked to the item to which the reference points. The print version contains no hot-links. The print versions are the better ones to download if you wish to print some or all of the version. The linked versions are better for viewing on the screen. All files are in PDF format.
The two files labeled "Full version except for FORTRAN and C components" contain all components except those involving FORTRAN and C. Each version labeled with two software packages contains the generic components, the components identified in the label, and the LaTeX appendix. The two files labeled "LaTeX only" contain only the LaTeX appendix, the two files labeled "TGIF only" contain only the TGIF appendix, two files labeled "C components only" contain the generic components and the C components, and the two files labeled "FORTRAN components only" contain the generic and FORTRAN components. While the FORTRAN and C versions do not contain the chapters on IDL, MATLAB, OCTAVE, PYTHON, MAXIMA, MAPLE, or MATHEMATICA, those tools are nonetheless used occasionally in the FORTRAN and C versions.
Update Record
The cover page of each version includes the date on which the version was created. That date is updated with each new printing, and the new printing incorporates all updates available on the date of its creation. The versions placed on this site and dated before 1 January 2021 were replaced in mid January 2021 with versions bearing dates in mid January 2021, the latter differing substantively from the former only in the addition of a section on animation to the OCTAVE chapter. The mid-January 2021 versions were themselves replaced on 22 February 2021 with versions dated 21 February 2021. On 20 February 2023, the February 2021 versions were themselves replaced with versions dated in the period 13-17 February 2023. The February 2023 versions differ from the February 2021 versions by a number of small edits and by the addition of Chapter 15 treating Partial Differential Equations (PDEs) and Chapter 16 introducing the FORTRAN PDE package MUDPACK.
A dated summary of edits made after 31 January 2021 is compiled in the final item in the list below.
-
Download the Full version except for FORTRAN and C components - linked (22.1 MB, 1377 pages):
-
Download the Full version except for FORTRAN and C components - print (18.4 MB, 1377 pages):
-
Download the IDL-MAPLE version - linked (5.3 MB, 547 pages):
-
Download the IDL-MAPLE version - print (3.9 MB, 547 pages):
-
Download the IDL-MATHEMATICA version - linked (5.2 MB, 545 pages):
-
Download the IDL-MATHEMATICA version - print (3.8 MB, 545 pages):
-
Download the IDL-MAXIMA version - linked (5.2 MB, 543 pages):
-
Download the IDL-MAXIMA version - print (3.7 MB, 543 pages):
-
Download the MATLAB-MAPLE version - linked (6.1 MB, 553 pages):
-
Download the MATLAB-MAPLE version - print (4.7 MB, 553 pages):
-
Download the MATLAB-MATHEMATICA version - linked (6.0 MB, 549 pages):
-
Download the MATLAB-MATHEMATICA version - print (4.6 MB, 549 pages):
-
Download the MATLAB-MAXIMA version - linked (6.0 MB, 547 pages):
-
Download the MATLAB-MAXIMA version - print (4.6 MB, 547 pages):
-
Download the OCTAVE-MAPLE version - linked (13.1 MB, 553 pages):
-
Download the OCTAVE-MAPLE version - print (11.7 MB, 553 pages):
-
Download the OCTAVE-MATHEMATICA version - linked (13.1 MB, 549 pages):
-
Download the OCTAVE-MATHEMATICA version - print (11.6 MB, 549 pages):
-
Download the OCTAVE-MAXIMA version - linked (13.0 MB, 551 pages):
-
Download the OCTAVE-MAXIMA version - print (11.6 MB, 551 pages):
-
Download the PYTHON-MAPLE version - linked (6.0 MB, 591 pages):
-
Download the PYTHON-MAPLE version - print (4.4 MB, 591 pages):
-
Download the PYTHON-MATHEMATICA version - linked (5.8 MB, 587 pages):
-
Download the PYTHON-MATHEMATICA version - print (4.2 MB, 587 pages):
-
Download the PYTHON-MAXIMA version - linked (5.8 MB, 587 pages):
-
Download the PYTHON-MAXIMA version - print (4.2 MB, 587 pages):
-
Download the LATEX only version - linked (908 KB, 58 pages):
-
Download the LATEX only version - print (733 KB, 58 pages):
-
Download the TGIF only version - linked (534 KB, 29 pages):
-
Download the TGIF only version - print (486 KB, 29 pages):
-
Download the C components only - linked (3.4 MB, 345 pages):
(includes IDL, MATLAB, OCTAVE, and PYTHON graphics) -
Download the C components only - print (2.6 MB, 345 pages):
(includes IDL, MATLAB, OCTAVE, and PYTHON graphics) -
Download the FORTRAN components only - linked (19.7 MB, 596 pages):
(includes IDL, MATLAB, OCTAVE, and PYTHON graphics) -
Download the FORTRAN components only -print (18.3 MB, 596 pages):
(includes IDL, MATLAB, OCTAVE, and PYTHON graphics) -
Download the dated list of edits made in the source files:
Download Program and Data Files
Through zipped files in two formats (.zip and .7z), this section provides access to all of the program and data files referred to at various points in CPSUP. Instructions for unzipping the files are laid out in the README file. When properly unzipped, the zipped files will install everything needed in the appropriate subdirectories of a newly created folder named CPSUP, which in turn is a subdirectory of a user-chosen and user-created directory somewhere in the user's system. The directory CPSUP will contain (a) a single EXCEL spreadsheet listing all of the files in the distribution, (b) the LaTeX source and PDF-formatted files for the README file, and (c) subdirectories named cc, data, fortran, idl, lsode, maple, mathematica, matlab, maxima, mudpack, octave, python, and tex. The resulting folder CPSUP will require about 41 MB of storage.
The downloadable README file below duplicates the one in the distribution and explains how to install the files in the local system. The downloadable EXCEL spreadsheet duplicates the spreadsheet in the zipped files.
Download Solutions to Selected Exercises
Each link in the following table will access the available solutions for the indicated tool, either for viewing on a computer screen or downloading to your local storage. The linked and print versions are textually identical. In the linked versions, each internal reference (including those in the Table of Contents) is hot-linked to the item to which the reference points. The print version contains no hot-links. The print versions are the better ones to download if you wish to print some or all of the version. The linked versions are better for viewing on the screen. All files are in PDF format.
Clicking on the PDF icon next to an item brings up a box in which you can choose to open the identified version in an appropriate reader or to download the version.
Each pair of files below contains all available solutions for the tool identified in the title. The C files include solutions using Numerical Recipes; the FORTRAN files include solutions using LSODE, Numerical Recipes, and MUDPACK.
The files below were created in the period 17-19 February 2023 and uploaded to this site on 20 February 2023. The files below replaced differently structured files uploaded to this site on 26 May 2021.
-
Download the solutions selected IDL exercises - linked (3.1 MB, 265 pages pages):
-
Download the solutions to selected IDL exercises - print (3.0 MB, 265 pages):
-
Download the solutions to selected MATLAB exercises - linked (4.2 MB, 274 pages):
-
Download the solutions to selected MATLAB exrcises- print (4.0 MB, 274 pages):
-
Download the solutions to selected OCTAVE exercises - linked (7.8 MB, 278 pages):
-
Download the solutions to selected OCTAVE exercises - print (7.7 MB, 278 pages):
-
Download the soutions to selected PYTHON exercises - linked (4.5 MB, 271 pages):
-
Download the solutions to selected PYTHON exercises - print (4.3 MB, 271 pages):
-
Download the solutions to selected MAXIMA exercises - linked (1.4 MB, 211 pages):
(includes IDL, MATLAB, OCTAVE, and PYTHON graphics) -
Download the solutions to selected MAXIMA exercises - print (1.3 MB, 211 pages):
(includes IDL, MATLAB, OCTAVE, and PYTHON graphics) -
Download the solutions to selected MAPLE exercises - linked (1.6 MB, 206 pages):
-
Download the solutions to selected MAPLE exercises - print (1.4 MB, 206 pages):
-
Download the solutions to selected MATHEMATICA exercises - linked (1.8 MB, 210 pages):
-
Download the solutions to selected MATHEMATICA exercises - print (1.7 MB, 210 pages):
-
Download the solutions to selected C exercises - linked (1.5 MB, 147 pages):
-
Download the solutions to selected C exercises -print (1.4 MB, 147 pages):
-
Download the solutions to selected FORTRAN exercises - linked (4.3 MB, 459 pages):
-
Download the solutions to selected FORTRAN exercises - print (4.1 MB, 459 pages):
The Local Guide
This section provides links to the Local Guide used at Lawrence in the recent past as well as a link to a zipped file containing
- the source code for the Lawrence version of the Local Guide and
- a README file explaining how to use the source files to create a version appropriate for your site.
The described procedure assumes that you have a reasonably updated version of LaTeX installed in your system.
The linked and print versions are textually identical. In the linked versions, each internal reference (including those in the Table of Contents and Index) is hot-linked to the item to which the reference points. The print version contains no hot-links. The print versions are the better ones to download if you wish to print some or all of the version. The linked versions are better for viewing on the screen. All files are in PDF format.
Clicking on the icon next to an item brings up a box in which you can select either to open the file in an appropriate reader or download the file.
Other contributions by Professor Cook:
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.