By: Jiří Lebl
(website #1 https://www.jirka.org/ (personal), website #2 https://math.okstate.edu/people/lebl/ (work: OSU), email: )
A first course on differential equations, aimed at engineering students. The prerequisite for the course is the basic calculus sequence. This free online book (OER more formally) should be usable as a stand-alone textbook or as a companion to a course using another book such as Edwards and Penney, Differential Equations and Boundary Value Problems: Computing and Modeling or Boyce and DiPrima, Elementary Differential Equations and Boundary Value Problems (section correspondence to these two is given). I developed and used this book to teach Math 286/285 at the University of Illinois at Urbana-Champaign (one is a 4-day-a-week, the other a 3-day-a-week semester-long course). I also taught Math 20D at the University of California, San Diego with this book (a 3-day-a-week quarter-long course). There is enough material to run a two-quarter course, and even a two-semester sequence depending on lecturer speed.
The aim is to provide a low cost, redistributable, not overly long, high-quality textbook that students will keep rather than selling back after the semester is over. Even if the students throw it out, they can always look it up on the net again. You are free to have a local bookstore or copy store make and sell copies for your students. See below about the license.
Another aim of the book is to allow modification and customization for a specific purpose if necessary. If you do modify the book, make sure to mark it prominently as such to avoid confusion. This aspect is also important for the longevity of the book. The book can be updated and modified even if I happen to drop off the face of the earth. You do not have to depend on any publisher being interested as with traditional textbooks.
Furthermore, errata are fixed promptly, meaning that if you teach the same class next term, all errata that are spotted are most likely already fixed. No need to wait several years for a new edition. Every once in a while I make some major addition and a new major version (edition), and then in between as errata are fixed I make minor version updates (like a corrected printing) usually once or twice a year, depending on the errata discovered. Exercise, chapter, and section numbers are preserved as much as humanly possible. What's added is added at the end with new numbers, so the book is generally compatible even if students (or the instructor) have an older printed copy. The minor updates are totally interchangeable and have very minimal changes, essentially nothing new.
The graphs in the book were created using the Genius software.
MAA published a review of the book (they looked at the December 2012 edition).
1. First order equations
2. Higher order linear ODEs
3. Systems of ODEs
4. Fourier series and PDEs
5. More on eigenvalue problems
6. The Laplace transform
7. Power series methods
8. Nonlinear systems
A. Linear algebra
There are currently 740 exercises throughout the book (November 7th 2019 edition), 247 of which have a solution in the back (those numbered 101 and above). A few exercises are within the section text, but most are in their own subsection at the end of every section. Each section should have enough exercises for homework even for a demanding class.
Please let me know at if you find any typos or have corrections, extra exercises or material, or any other comments.
Do let me know () if you use the book for teaching a course! The book was used, or is being used (other than my courses at UIUC, UCSD, and OSU), at over a dozen universities including Dartmouth College, University of Tennessee, University of Toledo, University of British Columbia, University of California at Irvine, University of Kentucky, University of Hawaii, and many others. The Saylor Foundation is using it as one of the books for their online Math 221 course.
See a list of classroom adoptions for more details.
Download the book as PDF
(July 21st, 2020, version 6.1, 466 pages, approximately 4.1 MB download)
Version 6.0 added Appendix A, and sections 1.9 and 6.5.
Look at the errata in the current revision (if any).
Look at the change log to see what changed in the latest version.
If you need the old version, version 5.5, for some reason, you can find it here.
I get a bit of money when you buy these (depending on where exactly they are bought). Probably enough to buy me a coffee, so by buying a copy you will support this project. You will also save your toner cartridge. The difference between these two versions is essentially just the cover art. I have seen printed versions from both and they are both good quality.
(The older edition 5 has ISBN-13: 978-1541329058, if you really need the old version)
Browse the web version of the book (for easier reading on the web). This version uses PreTeXt and so should be easier to browse and read. The PDF version is the canonical version and should be the one used for printing.
Search this site, including the web version:
Section 1.6: Several interactive demos on autonomous equations in one variable.
Section 1.7: An interactive demo of Euler's method.
Section 2.4: Several animations of mechanical vibrations.
Section 2.6: Interactive demo of forced oscillations and resonance.
Section 3.5: Interactive demos of two-dimensional autonomous systems.
Section 3.6: A second order system (two carts with springs between them) interactive demo.
WeBWorK: I put together a set of problems for WeBWorK, containing currently 486 problems. Download the set as a tgz file (or see the github repository). You just upload the tgz file to your course, and it should automatically unpack in your templates directory. You'll have a directory called diffyqs-webwork. It has predefined problem sets for the relevant sections as "def" files, that you can "import" as new homework. There are currently problems for chapters 0, 1, 2, 3, 4, 6, 7, 8, A. Majority of the problems come from OPL, but have been edited to fit the course or generally improved, some have been edited or changed quite heavily and new problems added. Hopefully there should be enough problems for most types of courses but let me know if anything is missing, or if there are other OPL problems that I think I should include.
Edfinity: Essentially the same set of problems is available on Edfinity. Edfinity is quite a bit easier to use than WeBWorK, you don't have to install anything, it is hosted by Edfinity, and is student-paid (on the order of $2-$4 per month). The Edfinity will be updated with the working copy above every once in a while. You can still add other OPL problems into your class, or create your own.
Let me know () if you use the problem set. I'm also interested to know any feedback on what's missing, what should be changed, etc.
I set up a discussion forum for the book on Google Groups. I expect this to be a low volume forum, but it might be a good place for instructors to interact, where to post extra material, ask a question of the other instructors, discuss the WeBWorK problems, and I will send announcements there, such as when a new version is out.
I put together all the figures as PDFs as one big zipfile. This should make it easier to create computer slides using the figures if you want without messing with the source tarball below. If a figure appears in multiple places, its filename only refers to the first such place.
There's tons of extra materials (including longer modeling projects) at SIMIODE.
The IODE software is a free software package for experimenting with basic ODEs developed at University of Illinois specifically for teaching this kind of course. IODE works both with Matlab (proprietary) and Octave (free, but no GUI). The IODE website has several extra projects for the students to work through as homework.
Prof. Charles Bergeron has created a modified version of the book based heavily on Notes on Diffy Qs. The title is Differential Equations: Including Linear Algebra Topics And Computer-Aided Problem-Solving. The book removes some topics (e.g. PDEs), but adds an entire linear algebra chapter. Also the book covers the use of the computer algebra system Maxima in the context of the material.
The source is hosted on GitHub: https://github.com/jirilebl/diffyqs
You can get an archive of the source of the released version on github, look under https://github.com/jirilebl/diffyqs/releases, though if you plan to work with it, maybe best to look at just the latest working version as that might have any errata or new additions. Though these might be a work in progress. Perhaps best is to let me know.
The main file is diffyqs.tex, which includes the chapters that are in separate files ch-*.tex. I compile the pdf with pdflatex diffyqs. You also want to run makeindex to generate the index (I generally run pdflatex diffyqs three times, then makeindex diffyqs, and then finally pdflatex diffyqs again). The setup file with all the preamble you may want to edit is diffyqssetup.sty.
The github 'master' version is the current working version, so it will have whatever new changes I make in my tree.
During the writing of this book, the author was in part supported by NSF grant DMS-0900885 and DMS-1362337.
This work is dual licensed under a Creative Commons Attribution-Noncommercial-Share Alike 4.0 License and Creative Commons Attribution-Share Alike 4.0 License. You can use, print, copy, and share this book as much as you want. You can base your own book/notes on these and reuse parts if you keep the license the same (that is, as long as you use at least one of the two licenses).