ESC201: Fall 2019: Monday Lecture: 13:00-14:00 Exercises: 14:00-17:00 in Room 36 J 33
TAs: Onur Catmabacak and Tine Colman
16. Sept. 2019: Floating Point and Round-off Error
23. Sept. 2019: Newton's Method and Kepler's Equation
30. Sept. 2019: Ordinary Differential Equations
7. Oct. 2019: Symplectic Integrators
14. Oct. 2019: Gravitational Many Body Problem: The Solar System
21. Oct. 2019: Population Growth, Chaos and Fractals
28. Oct. 2019: 3-D Graphics, Lorenz Attractor
4. Nov. 2019: Laplace Equation, Jabobi and SOR Methods
11. Nov. 2019: Bi-linear(cubic) Interpolation, Electron Beams!
18. Nov. 2019: Diffusion Equation and Numerical Stability
25. Nov. 2019: Hyperbolic PDEs: LAX & CIR Upwind Schemes
2. Dec. 2019: Finite Volume Methods in 1-D and 2-D
9. Dec. 2019: 2-D Hydrodynamics: Sedov Blast Wave
Should be handed in every Sunday night by 21:00 following the Monday lecture. Assignments should be individual and should be in python and provide a correct virtual environment!
For help getting started with virtual environments, please read carefully Python Virtual Environments for Pip and Python Virtual Environments for Conda.
You should email 3 things to Onur (onurc@physik.uzh.ch, office: Y11-F74):
Template: template.zip
Instructions:
Please add the names of the people you work together (if you do) to the comment section of your python scripts.
Create a virtual environment using
Pip
- run virtualenv yourenv_name to create a virtual environment
- run source yourenv_name/bin/activate to activate yourenv_name
- install necessary libraries that you want using pip install package_name
- work in that directory, get your outputs (*.pdf, *.png, *jpeg, *.mp4, etc…)
- run pip freeze > requirements.txt to get your list of libraries
Conda
- run conda create -n yourenvname python=x.x anaconda to create a virtual environment
- run source activate yourenvname to activate yourenv_name
- install necessary libraries that you want using conda install -n yourenv_name package_name
- work in that directory, get your outputs (*.pdf, *.png, *jpeg, *.mp4, etc…)
- run conda list –export > requirements.txt to get your list of libraries
1. Newton's Method and Kepler Problem, until 29.09.2019
2. Predator-prey behavior with Forward Euler Method, Midpoint Runge-Kutta and (optional for comparison) Runge-Kutta, until 06.10.2019
3. Make a phase space plot for the Simple Pendulum using Symleptic Leapfrog and Midpoint Runge-Kutta, compare both methods until 13.10.2019
4. Solar System Orrery Initial Conditions , Loading Script until : Sunday 20.10.2019 (21:00)
5. Logistic Equation Plots (optional), Feigenbaum Plot, Julia Set Plot (optional), Mandelbrot Set Plot, due until : Sunday 27.10.2019 (21:00)
6. 3D Graphics and Lorenz Attractor due Sunday 03.11.2019 (21:00)
7. Electrostatics in vacumm due Sunday 10.11.2019
8. Bi-linear(cubic) Interpolation, Electron Beams due 17.11.2019
9. Design Competition: Time-of-Flight Instrument, due 24.11.2019
10. Compare Finite Difference Upwind and Corner Transport Upwind (finite volume) in 2-D using a Gaussian on a 2-D periodic mesh. due 8.12.2019
11. Last exercise: 2-D Sedov Taylor Blast Wave. Define a 2-D periodic grid of variables (rho, rho_u, rho_v, E). Set P = e = 1e-5, rho_u = rho_v = 0, and rho = 1.0 everywhere (Note: gamma = 2). Set one cell (either in the corner, or center of the grid) to have e = 1. Adapt the timestep delta_t at each step to satisfy the Courant condition (given by the maximum of D_max across the grid). The timestep should be very small at first and increase with time as the shock wave expands. You should use the corner transport upwind method with the predictor-corrector scheme outlined in the lecture. However, you can make a test using the 2-D basic LAX scheme.