spin:esc201_hs2019

**This is an old revision of the document!**

**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**):

- The working
**python source code** - The
**requirements.txt**file for your virtual environment - A
**.pdf**or**.png**image or animation of the output of your program

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.

spin/esc201_hs2019.1575899528.txt.gz · Last modified: 2019/12/09 14:52 by stadel

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International