{"id":37711137,"url":"https://github.com/jkglasbrenner/cds411-course-materials","last_synced_at":"2026-01-16T13:19:30.578Z","repository":{"id":87210064,"uuid":"187643476","full_name":"jkglasbrenner/cds411-course-materials","owner":"jkglasbrenner","description":"Course materials for CDS 411: Modeling and Simulation II, offered at George Mason University","archived":false,"fork":false,"pushed_at":"2019-05-20T14:13:03.000Z","size":10112,"stargazers_count":2,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-01-29T07:34:07.580Z","etag":null,"topics":["cds-411","cellular-automata","course-materials","data-science","george-mason-university","jupyter","jupyter-notebook","model-selection","modeling","python","random-walk","scikit-learn","simulation","stochastic-simulation","system-dynamics"],"latest_commit_sha":null,"homepage":null,"language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc-by-sa-4.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jkglasbrenner.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-05-20T13:14:25.000Z","updated_at":"2023-04-02T23:10:15.000Z","dependencies_parsed_at":"2023-03-18T02:35:51.796Z","dependency_job_id":null,"html_url":"https://github.com/jkglasbrenner/cds411-course-materials","commit_stats":{"total_commits":5,"total_committers":1,"mean_commits":5.0,"dds":0.0,"last_synced_commit":"1ec3f9ad43a3019a21dddb597c8ac8d1bcbf33f7"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jkglasbrenner/cds411-course-materials","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jkglasbrenner%2Fcds411-course-materials","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jkglasbrenner%2Fcds411-course-materials/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jkglasbrenner%2Fcds411-course-materials/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jkglasbrenner%2Fcds411-course-materials/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jkglasbrenner","download_url":"https://codeload.github.com/jkglasbrenner/cds411-course-materials/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jkglasbrenner%2Fcds411-course-materials/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28479024,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T11:59:17.896Z","status":"ssl_error","status_checked_at":"2026-01-16T11:55:55.838Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cds-411","cellular-automata","course-materials","data-science","george-mason-university","jupyter","jupyter-notebook","model-selection","modeling","python","random-walk","scikit-learn","simulation","stochastic-simulation","system-dynamics"],"created_at":"2026-01-16T13:19:30.018Z","updated_at":"2026-01-16T13:19:30.572Z","avatar_url":"https://github.com/jkglasbrenner.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"CDS 411 course materials\n================\n\n[![](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/jkglasbrenner/cds411-course-materials/master)\n\n  - [Topic schedule](#topic-schedule)\n  - [Readings](#readings)\n  - [Homeworks](#homeworks)\n  - [Final project](#final-project)\n  - [Resources and links](#resources-and-links)\n      - [Datacamp cheat\nsheets](#datacamp-cheat-sheets)\n      - [Software](#software)\n  - [License](#license)\n\n## Topic schedule\n\n| Class | Topic                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |\n| ----: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n|     1 | [Course toolbox](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class01/class01_slides.pdf)                                                                                                                                                                                                                                                                                                                                                               |\n|     2 | [Python fundamentals I](class_notes/class04/python_fundamentals.py)                                                                                                                                                                                                                                                                                                                                                                                                                                          |\n|     3 | [Python fundamentals II](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class03/class03_slides.pdf)                                                                                                                                                                                                                                                                                                                                                       |\n|     4 | [Python for scientific computing I](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class04/class04_slides.pdf)                                                                                                                                                                                                                                                                                                                                            |\n|     5 | [Python for scientific computing II](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class05/class05_notebook.ipynb)\u003cbr\u003e[*Demo file:* `scientific_computing_with_numpy.py`](class_notes/class05/scientific_computing_with_numpy.py)                                                                                                                                                                                                                        |\n|     6 | [Python for scientific computing III](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class06/class06_notebook.ipynb)                                                                                                                                                                                                                                                                                                                                      |\n|     7 | [System dynamics models: Growth and decay](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class07/class07_notebook.ipynb)                                                                                                                                                                                                                                                                                                                                 |\n|     8 | [System dynamics models: Growth and decay II](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class08/class08_notebook.ipynb)\u003cbr\u003e[*Source file:* `bacteria.py`](class_notes/class08/bacteria.py)                                                                                                                                                                                                                                                           |\n|     9 | [System dynamics models: Drug dosage I](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class09/class09_notebook.ipynb)\u003cbr\u003e[*Source file:* `aspirin.py`](class_notes/class09/aspirin.py)                                                                                                                                                                                                                                                                   |\n|    10 | [System dynamics models: Drug dosage II](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class10/class10_notebook.ipynb)\u003cbr\u003e[*Source file:* `dilantin.py`](class_notes/class10/dilantin.py)                                                                                                                                                                                                                                                                |\n|    11 | [System dynamics models: Damped oscillator and bungee jumping I](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class11/class11_notebook.ipynb)                                                                                                                                                                                                                                                                                                           |\n|    12 | [System dynamics models: Damped oscillator and bungee jumping II](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class12/class12_notebook.ipynb)\u003cbr\u003e[*Demo notebook:* Interactive undamped oscillator notebook](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class12/interactive_undamped_oscillator.ipynb)\u003cbr\u003e[*Source file:* `undamped_oscillator.py`](class_notes/class12/undamped_oscillator.py) |\n|    13 | [System dynamics models: Damped oscillator and bungee jumping III and shark competition model](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class13/class13_notebook.ipynb)\u003cbr\u003e[*Source file:* `oscillator.py`](class_notes/class13/oscillator.py)\u003cbr\u003e[*Source file:* `bungee.py`](class_notes/class13/bungee.py)\u003cbr\u003e[*Source file:* `sharks.py`](class_notes/class13/sharks.py)                                                                        |\n|    14 | [Data-driven modeling I](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class14/class14_notebook.ipynb)                                                                                                                                                                                                                                                                                                                                                   |\n|    15 | [Data-driven modeling II](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class15/class15_notebook.ipynb)                                                                                                                                                                                                                                                                                                                                                  |\n|    16 | [Data-driven modeling III](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class16/class16_notebook.ipynb)\u003cbr\u003e[*Source file:* `bootstrap.py`](class_notes/class16/bootstrap.py)                                                                                                                                                                                                                                                                            |\n|    17 | [Data-driven modeling IV](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class17/class17_notebook.ipynb)                                                                                                                                                                                                                                                                                                                                                  |\n|    18 | [Monte Carlo simulations I](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class18/class18_notebook.ipynb)\u003cbr\u003e[*Practice notebook:* Module 9.1: Quick Review Questions](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class18/module_9-1_practice_questions.ipynb)                                                                                                                                    |\n|    19 | [Monte Carlo simulations II](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class19/class19_notebook.ipynb)\u003cbr\u003e[*Source file:* `mc_integration.py`](class_notes/class19/mc_integration.py)                                                                                                                                                                                                                                                                |\n|    20 | [Monte Carlo simulations III](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/class20/class20_notebook.ipynb)                                                                                                                                                                                                                                                                                                                                              |\n|    21 | [Cellular automata I: Heat diffusion](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/heat_diffusion/heat_diffusion_notebook.ipynb)                                                                                                                                                                                                                                                                                                                        |\n|    22 | [Cellular automata II: Forest fire](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/forest_fire/forest_fire_notebook.ipynb)\u003cbr\u003e[*Source file:* `forest_fire.py`](class_notes/forest_fire/forest_fire.py)                                                                                                                                                                                                                                                   |\n|    23 | [Cellular automata III: Ants](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/ants/ants_notebook.ipynb)                                                                                                                                                                                                                                                                                                                                                    |\n|    24 | [Course wrap-up](https://nbviewer.jupyter.org/github/jkglasbrenner/cds411-course-materials/blob/master/class_notes/wrapup/wrapup_notebook.ipynb)                                                                                                                                                                                                                                                                                                                                                             |\n\n## Readings\n\n| Week | Book                                                                                                                          | Assignment                                                                                                                                                                                                      |\n| ---: | :---------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n|    1 | ![Introduction to Computational Science](img/shiflet_cover.gif)                                                               | Read all of chapters 1.1 and 1.2                                                                                                                                                                                |\n|    2 | [![Automate the Boring Stuff with Python by Al Sweigart](img/automate_cover_medium.png)](https://automatetheboringstuff.com/) | **Supplement**\u003cbr\u003eChapters 1 through 8 cover the material in the **Python fundamentals** classes in more depth and with a focus on helping beginners.                                                           |\n|    2 | [![Think Python by Allen Downey](img/think_python_medium.png)](http://greenteapress.com/thinkpython/html/index.html)          | **Supplement**\u003cbr\u003eChapters 2, 3, 5, 7, 8, 10, 11, 12, and 14 cover the material in the **Python fundamentals** classes. This book is a reference manual for Python, and covers things at a more advanced level. |\n|    3 | [An introduction to Numpy and Scipy by M. Scott Shell](https://engineering.ucsb.edu/~shell/che210d/numpy.pdf)                 | Read from the beginning up until the end of the Statistics section on page 19                                                                                                                                   |\n|    4 | ![Introduction to Computational Science](img/shiflet_cover.gif)                                                               | Read all of chapters 2.2 and 2.3                                                                                                                                                                                |\n|    5 | ![Introduction to Computational Science](img/shiflet_cover.gif)                                                               | Read all of chapter 2.5                                                                                                                                                                                         |\n|    6 | ![Introduction to Computational Science](img/shiflet_cover.gif)                                                               | Read all of chapter 3.2                                                                                                                                                                                         |\n|    9 | ![Introduction to Computational Science](img/shiflet_cover.gif)                                                               | Read all of chapters 8.2 and 8.3                                                                                                                                                                                |\n|   10 | ![Introduction to Computational Science](img/shiflet_cover.gif)                                                               | Read all of chapter 9.2                                                                                                                                                                                         |\n|   11 | ![Introduction to Computational Science](img/shiflet_cover.gif)                                                               | Read all of chapters 9.3 and 9.5                                                                                                                                                                                |\n|   12 | ![Introduction to Computational Science](img/shiflet_cover.gif)                                                               | Read all of chapter 10.2                                                                                                                                                                                        |\n|   13 | ![Introduction to Computational Science](img/shiflet_cover.gif)                                                               | Read all of chapter 10.3                                                                                                                                                                                        |\n\n## Homeworks\n\n| \\# | Description                                                                                        |\n| -: | :------------------------------------------------------------------------------------------------- |\n|  1 | [**Python fundamentals** and **Python for scientific computing** exercises](homework/homework1.md) |\n|  2 | [System dynamics: growth and decay models](homework/homework2.md)                                  |\n|  3 | [System dynamics: oscillatory motion models](homework/homework3.md)                                |\n|  4 | [Data-driven modeling](homework/homework4.md)                                                      |\n|  5 | [Monte Carlo simulations: integration and random number generation](homework/homework5.md)         |\n|  6 | [Monte Carlo simulations: random walk](homework/homework6.md)                                      |\n|  7 | [Cellular automata simulations](homework/homework7.md)                                             |\n\n## Final project\n\n**Instructions:** [project/final\\_project.md](project/final_project.md)\n\n## Resources and links\n\n### Datacamp cheat sheets\n\n[Datacamp](https://datacamp.com) has put together a series of [*Python\nfor Data Science* cheat\nsheets](https://www.datacamp.com/community/data-science-cheatsheets)\nthat you can use as a quick reference during the class. The most\nrelevant ones have been downloaded to this repository and are linked\nbelow:\n\n| Cheat sheet                                                                                                                                                     | Description                                   |\n| :-------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------- |\n| [![Python for Data Science Cheat Sheet - Jupyter Notebook](img/datacamp-numpy-basics.png)](cheatsheets/datacamp-numpy-basics.pdf)                               | Basics of the Jupyter Notebook                |\n| [![Python for Data Science Cheat Sheet - NumPy Basics](img/datacamp-matplotlib-data-visualization.png)](cheatsheets/datacamp-matplotlib-data-visualization.pdf) | NumPy Basics                                  |\n| [![Python for Data Science Cheat Sheet - SciPy - Linear Algebra](img/datacamp-scipy-linear-algebra.png)](cheatsheets/datacamp-scipy-linear-algebra.pdf)         | SciPy - Linear Algebra                        |\n| [![Python for Data Science Cheat Sheet - Matplotlib](img/datacamp-jupyter-notebook-basics.png)](cheatsheets/datacamp-jupyter-notebook-basics.pdf)               | Data visualization with Matplotlib            |\n| [![Python for Data Science Cheat Sheet - Seaborn](img/datacamp-seaborn-data-visualization.png)](cheatsheets/datacamp-seaborn-data-visualization.pdf)            | Data visualization with Seaborn               |\n| [![Python for Data Science Cheat Sheet - Importing Data](img/datacamp-importing-data.png)](cheatsheets/datacamp-importing-data.pdf)                             | Importing Data                                |\n| [![Python for Data Science Cheat Sheet - Pandas](img/datacamp-pandas-data-wrangling.png)](cheatsheets/datacamp-pandas-data-wranglings.pdf)                      | Data transformation and reshaping with Pandas |\n| [![Python for Data Science Cheat Sheet - Scikit-Learn](img/datacamp-scikit-learn.png)](cheatsheets/datacamp-scikit-learn.pdf)                                   | Machine learning with Scikit-Learn            |\n\n### Software\n\nThe following software is not required for participating in the course,\nbut may be useful in your\nworkflow.\n\n\u003ctable\u003e\n\n\u003cthead\u003e\n\n\u003ctr\u003e\n\n\u003cth style=\"text-align:left;\"\u003e\n\nSoftware\n\n\u003c/th\u003e\n\n\u003cth style=\"text-align:left;\"\u003e\n\nOS\n\n\u003c/th\u003e\n\n\u003cth style=\"text-align:left;\"\u003e\n\nDescription\n\n\u003c/th\u003e\n\n\u003c/tr\u003e\n\n\u003c/thead\u003e\n\n\u003ctbody\u003e\n\n\u003ctr\u003e\n\n\u003ctd style=\"text-align:left;\"\u003e\n\n[GitKraken\u003cbr\u003e![Gitkraken](img/gitkraken-logo.png)](https://www.gitkraken.com/git-client)\n\n\u003c/td\u003e\n\n\u003ctd style=\"text-align:left;\"\u003e\n\nWindows\u003cbr\u003emacOS\u003cbr\u003eLinux\n\n\u003c/td\u003e\n\n\u003ctd style=\"text-align:left;\"\u003e\n\nA graphical interface for using git. Cross-platform, works with GitHub,\nand free to use for educational purposes. Cheatsheets available:\n\n\u003cul\u003e\n\n\u003cli\u003e\n\n\u003ca href='cheatsheets/gitkraken-cheat-sheet.pdf'\u003eGitKraken cheat\nsheet\u003c/a\u003e\n\n\u003c/li\u003e\n\n\u003cli\u003e\n\n\u003ca href='cheatsheets/gitkraken-for-github-users-cheat-sheet.pdf'\u003eGitKraken\nfor GitHub users cheat sheet\u003c/a\u003e\n\n\u003c/li\u003e\n\n\u003c/ul\u003e\n\n\u003c/td\u003e\n\n\u003c/tr\u003e\n\n\u003ctr\u003e\n\n\u003ctd style=\"text-align:left;\"\u003e\n\n[GitHub Desktop\u003cbr\u003e![GitHub\nDesktop](img/github-desktop-logo.svg)](https://desktop.github.com)\n\n\u003c/td\u003e\n\n\u003ctd style=\"text-align:left;\"\u003e\n\nWindows\u003cbr\u003emacOS\n\n\u003c/td\u003e\n\n\u003ctd style=\"text-align:left;\"\u003e\n\nA graphical interface for interacting with GitHub, built by GitHub. User\ndocumentation from GitHub is\navailable:\n\n\u003cul\u003e\n\n\u003cli\u003e\n\n\u003ca href='https://help.github.com/desktop/guides/getting-started-with-github-desktop/'\u003eGetting\nStarting with GitHub\nDesktop\u003c/a\u003e\n\n\u003c/li\u003e\n\n\u003cli\u003e\n\n\u003ca href='https://help.github.com/desktop/guides/contributing-to-projects/'\u003eContributing\nto projects with GitHub Desktop\u003c/a\u003e\n\n\u003c/li\u003e\n\n\u003c/ul\u003e\n\n\u003c/td\u003e\n\n\u003c/tr\u003e\n\n\u003ctr\u003e\n\n\u003ctd style=\"text-align:left;\"\u003e\n\n[Visual Studio Code\u003cbr\u003e![Visual Studio\nCode](img/vscode-logo.png)](https://code.visualstudio.com/)\n\n\u003c/td\u003e\n\n\u003ctd style=\"text-align:left;\"\u003e\n\nWindows\u003cbr\u003emacOS\u003cbr\u003eLinux\n\n\u003c/td\u003e\n\n\u003ctd style=\"text-align:left;\"\u003e\n\nA cross-platform and open-source integrated development environment\n(IDE) for programming. Uses a plugin system called Extensions to add\nsupport for different languages and for interfacing with git and GitHub.\nAt a minimum, you should install the [official extension for\nPython](https://marketplace.visualstudio.com/items?itemName=ms-python.python).\nThere are also [introductory tutorial videos\navailable](https://code.visualstudio.com/docs/getstarted/introvideos).\n\n\u003c/td\u003e\n\n\u003c/tr\u003e\n\n\u003ctr\u003e\n\n\u003ctd style=\"text-align:left;\"\u003e\n\n[PyCharm\u003cbr\u003e![PyCharm](img/pycharm-logo.png)](https://jetbrains.com/pycharm)\n\n\u003c/td\u003e\n\n\u003ctd style=\"text-align:left;\"\u003e\n\nWindows\u003cbr\u003emacOS\u003cbr\u003eLinux\n\n\u003c/td\u003e\n\n\u003ctd style=\"text-align:left;\"\u003e\n\nA cross-platform integrated development environment (IDE) designed\nspecifically for programming in Python. Comes with many useful features\nenabled. Has a plugin ecosystem, but unlike Visual Studio Code they can\nbe treated as optional. There are [introductory tutorial videos\navailable](https://www.jetbrains.com/pycharm/documentation/pycharm-videos.html).\nAs a current student, you get a free professional license for the editor\nif you [fill out and submit this\nform](https://www.jetbrains.com/shop/eform/students).\n\n\u003c/td\u003e\n\n\u003c/tr\u003e\n\n\u003c/tbody\u003e\n\n\u003c/table\u003e\n\n## License\n\n[![Creative Commons\nLicense](https://i.creativecommons.org/l/by-sa/4.0/88x31.png)](http://creativecommons.org/licenses/by-sa/4.0/)\n\nUnless otherwise noted, the course materials in this repository are\nlicensed under a [Creative Commons Attribution-ShareAlike 4.0\nInternational License](http://creativecommons.org/licenses/by-sa/4.0/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjkglasbrenner%2Fcds411-course-materials","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjkglasbrenner%2Fcds411-course-materials","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjkglasbrenner%2Fcds411-course-materials/lists"}