- Start of semester survey
- Office hours poll
- Introduction
- What we hope to learn, what we expect to cover
- Meeting each other
- Why modeling?
- discovery (choose better experiments [sensitivity and uncertainty analyses]; do the impossible [ask "what if?"])
- design (predict and simulate)
- Project scope
- Install Python (conda)
- Register at GitHub
-
Python
- 3.11 faster (10-60% than 3.10), better error messages. upgrade
-
Github
-
Python books
-
Project planning
- inputs, black box, outputs
-
Python
- notebook
- types (int, float, str)
- libraries
- Anaconda
- Jupyter notebook
- Jupyter lab
- VSCode
The projector wasn't working which was annoying. But there is a zoom recording.
- Python
- Numpy. Arrays
- Loops
- Functions
- ODE solving
- Differential equations, Simple Euler method to solve
- Numerical Convergence. How and why and when.
- Some book reviews
- Learn some Python
- Project scope and planning
- Attend Research showcase
- ODE solving - convergence.
- Finish book reviews.
- Discussion of book reviews
- Two-step Adams–Bashforth
- https://twitter.com/richardhwest/status/1434869862887723008
- https://en.wikipedia.org/wiki/Linear_multistep_method#Two-step_Adams–Bashforth
- trying to make code more re-usable
- Adams-Bashforth
- Project planning - making slide summaries
- Runge Kutta 4 ? (not assigned)
- ODE solving.
- Numpy array bugs
- Convergence of Adams Bashforth
- Using SciPy's solve_ivp method
- Kinetic Monte Carlo
- how the rejection free algorithm works
- Debugging! The 10 indispensible rules
- Kinetic Monte Carlo - talking through the assignment
- (at ECS conference)
- Pair-coding
- (at ECS conference)
- Linear regression (
scipy.stats.linregress
) - Nonlinear regression (
scipy.optimize.curve_fit
) - Polynomial regression
- Regression with uncertain x values (eg.
scipy.odr
)
- Discussion of the regression homework
- Start of PDEs and BVPs
- PDEs and BVPs
- Sensitivity analysis
- Submarine problem
- Submarine sensitivity analysis
- Many people away at AIChE
- Projects discussion.
- LaTeX
Assignment: read the git parable
The 2022 schedule is at https://github.com/CHME5137/Syllabus/blob/main/schedule2022.md
This is a list of possible homework assignments that I might pick from.
- Bash
- Book reviews
- Rabbits and foxes diffusing
- CodingBat Python practice
- Runge-Kutta RK4 and convergence
- Flesh out a project
- Improve a project outline
- Kinetic Monte Carlo
- Regression
- Git and github
- Register for discovery
- Sensitivity
- [ ]
This is not a manifesto or contract, but a reminder list of things it would be cool to cover. i.e. it's too long and we won't cover them all.
- Python
- CodingBat
- Convergence
- ODEs
- Simple Euler
- RK4
- SciPy
- Kinetic Monte Carlo
- Code optimization
- PDEs
- Debugging
- Regression
- Bayesian Parameter Estimation
- Bash
- Discovery cluster
- LaTeX
- Population Balance Modeling
- Sensitivity Analysis
- Cantera
- Pandas (polyethylene?)
- Machine Learning
- VSCode
- Programming with GPT and LLMs