Lectures, Recommended Reading and Problem Sets:

I. An Introduction to Fluid Mechanics, Lagrangian derivative, Conservation laws, the Stress Tensor, Hydrostatic equilibrium, Microphysical basis for continuum fluid equations II. Spherical flows, Bondi flow, Bernoulli's equation, Characteristics, Riemann invariants, Shock jump conditions, Blastwaves, Self-similar flows III. Viscous Flows, Accretion and Excretion Disks, Navier-Stokes equations, Viscous Dissipation, Alpha-disk structure, Kelvin's circulation theorem, Vorticity, Helmholtz equation, Geostrophic flows IV. Numerical methods for hydrodynamics. Finite Difference schemes, Truncation error, Numerical Stability, the CFL condition, Numerically generated dispersion and dissipation, the Riemann problem
V. Waves and Instabilities. Sound waves, Instability at an Interface (Rayleigh-Taylor and Kelvin Helmholtz instabilities), Jeans Instability, Convective Instability, Waves in a Plane-Parallel Atmosphere Numerical Project.
Choose an astrophysical problem involving hydrodynamic flow in 1 dimension. Numerically integrate the flow to explore the evolution of the flow.
April 18: be able to integrate something in python.
April 25: Choose an astrophysical setting for your project.
April 30: (Last class) talk for 5 minutes about your project in class!
May 9: Final write up due.
Project Requirements:
1) Cite astrophysical literature relevant to your project.
2) Describe your numerical implementation/scheme
3) Describe a test of your numerical scheme
4) Explore evolution of your flow. Show some plots! Discuss in terms of some astrophysical literature.

Some python examples
  • Numerical integration of the diffusion equation with a low order finite difference
  • Subroutines diffusion.py
    Calling these subroutines c_diffusion.py
  • Integration of the advective diffusion equation with Lax Wendroff scheme
  • Subroutines advec_diff.py
    Calling these subroutines c_advec_difff.py
  • Integrating a 1d version of Euler equations with a Lax Friedrichs scheme
  • Subroutines euler.py
    Calling these subroutines c_euler.py
  • Integrating a 1d wave equation
  • Subroutines wave.py
    Calling these subroutines c_wave.py