Skip to content

CU-Denver-MathStats-OER/ODEs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Preface


This collection of interactive Jupyter notebooks are intended as a set of activities for exploring models of differential equations and understanding their solutions (numerical, graphical, and analytical). Topics covered by these materials include first and second order differential equations, Laplace transforms, and systems of equations (linear and nonlinear). These materials serves as the textbook for the "MATH 3200: Elementary Differential Equations" course at University of Colorado Denver.

A Virtual Lab for Experimenting with Differential Equations


These materials are intended as set of activities to experiment and explore differential equations. Each interactive Jupyter notebooks is a "virtual laboratory" where we perform our experiments and summarize the results. The objectives of experimental mathematics are generally to make mathematics more tangible, lively and fun.

The intent of introducing Python is not to avoid a deep and rigorous understanding of differential equations and simply use Python to solve differential equations. There are other sources that skim the concepts on the surface and focus on the coding side of things. These materials use Python as an additional tool for further exploring differential equations to gain a deeper insight into modeling with differential equations. Some of the objectives of implementing Python code cells into the materials are to:

  • Discover patterns and relationships.
  • Use graphical displays to investigate mathematical concepts.
  • Develop and test conjectures.
  • Explore results to help construct proofs.
  • Confirm analytically derived results.
  • Gain further insight and intuition.
  • Bridge the divide between theory and practice.<

How to Access, Edit and Save Notebooks


In addition to the each individual Jupyter notebook in this repo, there is a html version of the materials available at , https://aspiegler.github.io/Exploring-Differential-Equations/. You cannot edit the text or run code in the html version, but there is a link to each Jupyter notebook at the start of each section.

Open In Colab

  • At the top of each notebook is a "button" such as the one above.
  • Click the button to open an interactive Jupyter notebook version in Google Colaboratory (or Colab).
  • You can begin working with the notebook right away in Colab! There is no software to install (or purchase!).
  • You can also access the materials directly on GitHub at https://github.com/CU-Denver-MathStats-OER/ODEs.git.

Each Jupyter notebook contains both narrative text (in Markdown cells) and Python code cells that you can create, modify, and run. Although you do not need a Google account to interact with the notebooks, the Colab notebooks are "shared", meaning you cannot save any changes to the initial shared document that opens. If you would like to save your changes, you first need to save a copy to your Google Drive. Then you can edit and save changes to your own version.

What Programming Background is Required?


No prior experience or knowledge of Python, Markdown, LaTeX, or Colaboratory is assumed or required to begin working with these materials. After working with these materials, you will have some knowledge and experience with Python, Markdown, LaTeX, and Colaboratory!

What is Python?


We will be using Python as a tool for experimenting with differential equations. Python is a widely used programming language suited for many purposes and applications such as computational mathematics, data science, and app development. We will create, modify, and run Python code in Jupyter notebooks. No prior programming experience is required to begin working in Python in these materials.

The goal of these materials are to investigate differential equations, not learn how to be an expert Python coder. The hope is that we can use Python as a tool for experimenting and gaining insight into differential equations, and in the process, gain a familiarity with Python and coding so it is no longer a barrier. Have I mentioned no prior programming experience is required to begin working in Python in these materials?

There are two Python modules (ode_tools.py and mass_spring.py) that accompany these materials with scripts to perform certain tasks such as plotting slope fields, Euler's method, plotting phase planes, and widgets for experimenting with mass-spring systems. Whenever these modules are used, instructions are provided. There are more detailed instructions found:

What is LaTex?


LaTeX is a system for rendering nice looking mathematical symbols, expressions, and equations. All of the mathematical notation in these materials are created using LaTeX. You can view and edit all of the LaTeX code in the Markdown cells. You do not need to become an expert in LaTeX, but having a familiarity with LaTeX is quite helpful and LaTeX can be used to typeset math in a number of different applications.

A Remix of Inquiry-Oriented Differential Equations


Prior to creating these notebooks, I was teaching differential equation using Inquiry-Oriented Differential Equations (IODE) by Rasmussen, C., Keene, K. A., Dunmyre, J., & Fortune, N. IODE course materials are available at https://iode.sdsu.edu. The IODE content has been kindly shared by the authors for revising, remixing and redistributing.

  • Some notebooks in these collection are not based on IODE content.
  • Some notebooks are almost identical with IODE content.
  • Some sections are modifications of IODE materials.

Much gratitude and thanks to the IODE team for creating and sharing amazing content with instructors and students of differential equations!

Supplemental OER Texts


Below are two suggested Open Education Resources (OER) texts for a first course in differential equations for further reading.

How to Contact Me


If you have any questions, comments, or suggestions about these materials, please feel free to reach out to me (Adam) at adam.spiegler@ucdenver.edu.

  • Considering using these materials in your course? Please let me know if I can help.
  • If you do use some of these materials in your course, your feedback is welcome and appreciated.
  • If you materials that you would like to share or contribute to this project, great!

Table of Contents


Chapter 1: First Order Differential Equations


Chapter 2: Second Order Differential Equations


Chapter 3: Systems of Differential Equations


Chapter 4: Laplace Transforms


Acknowledgements


Colorado Department of Higher Education

This project was supported by the Colorado Department of Higher Education (CDHE) OER Grant Program. A big thank you to Troy Butler, Jonathon Hirschi, and Dmitry Ostrovskiy for their feedback various contributions to these materials. Lastly, thanks to my students at CU Denver for all the feedback and encouragement in developing these materials!

Creative Commons License Information


Creative Commons License

Exploring Differential Equations by Adam Spiegler (University of Colorado Denver) is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. This work is funded by an Institutional OER Grant from the Colorado Department of Higher Education (CDHE). Based on a work at https://github.com/CU-Denver-MathStats-OER/ODEs and original content created by Rasmussen, C., Keene, K. A., Dunmyre, J., & Fortune, N. (2018). Inquiry oriented differential equations: Course materials. Available at https://iode.sdsu.edu.

For similar interactive OER materials in other courses funded by this project in the Department of Mathematical and Statistical Sciences at the University of Colorado Denver, visit https://github.com/CU-Denver-MathStats-OER.

About

Introduction to Ordinary Differential Equations.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •