Skip to main content
Ctrl+K
AST 390: Computational Astrophysics - Home AST 390: Computational Astrophysics - Home
  • Computational Astrophysics

Logistics and Overview

  • Course Overview
  • Using These Notes

Tour of Python

  • Jupyter
  • Python Basics
    • Basic Python Datatypes
    • Advanced Datatypes
    • Control Flow
  • Functions and Classes
    • Functions
    • Classes
  • NumPy
  • matplotlib

Git and Github

  • Version Control
  • A Git Walkthrough
  • Git Branches
  • Git Remotes
  • github
  • Pull requests

Fundamentals

  • Floating Point Format
    • Numerical Errors: Roundoff and Truncation
  • Differentiation
  • Integration
    • Simpson’s Rule Derived
    • Composite Integration
    • Application: Blackbody Radiation
    • SciPy Integration
    • Going Further
  • Root finding
    • SciPy Root Finding
    • Application: Wien’s law
    • Application: Degenerate Electrons
  • Linear Algebra
    • Review of Matrices
    • Solving A System of Linear Equations
      • Gaussian Elimination
      • Implementing Gaussian Elimination
      • C++ Implementation
    • Libraries for Linear Algebra
    • Condition Number
    • Multivariate Root Finding
      • Application: Stationary State of Lorenz System
    • Going Further

Ordinary Differential Equations

  • Basic Methods for ODEs
    • 2nd Order Runge-Kutta / Midpoint Method
    • 4th-order Runge-Kutta
  • Adaptive Timesteps
    • Adaptive RK4 Orbits
    • SciPy ODE Integration
    • Application: Few Body Problem
  • In-Class Example
  • ODEs and Conservation
    • Time Symmetric Integration
    • Application: Stability of Planetary Systems
  • Stiff ODEs
    • Implicit Methods for Systems of ODEs
    • Implicit Methods and Nonlinear Systems
    • Application: Reaction Networks
  • More Applications

Working with Data Samples

  • Fourier Transforms
    • Discrete Fourier Transform
    • Testing our DFT
    • In-class Example: A Frequency Filter
    • In-class Example: The Pendulum
    • Fast Fourier Transform
    • Application: X-ray Burst Timing
    • FFT in Multiple Dimensions
    • Non-uniform Data
  • Interpolation
    • Linear Interpolation
    • Lagrange Interpolation
    • Conservative Interpolation
    • Going Further
  • Least Squares Regression
    • Fitting to a Line
    • General Linear Least Squares
    • Nonlinear Fitting
    • Fitting Function in SciPy
    • Application: Estimating \(H_0\) from Type Ia Supernovae

Partial Differential Equations

  • Partial Differential Equations
  • Advection
    • Linear Advection Equation
    • Upwinding
    • Measuring Convergence
    • Finite-Volume Discretization
    • Second-order advection
  • Burgers’ Equation
    • Burgers’ Riemann Problem
    • Solving Burgers’ equation
  • Poisson problem
    • Relaxation
    • Implementing Relaxation
    • Residual
    • Behavior of Single Modes
  • Multigrid
    • Restriction and Prolongation
    • Two Grid Correction
    • V-Cycles
  • Diffusion
    • Explicit Discretization of Diffusion
    • Implicit Methods for Diffusion
    • Solving a Tridiagonal System
    • Direct Solve for Implicit Diffusion
    • Implicit Diffusion via Relaxation
    • Going Further

Hydrodynamics

  • Euler Equations
  • Euler equations eigensystem
  • Euler Riemann problem
  • Sampling the Riemann solution
  • Second-order Euler solver

Magnetohydrodynamics

  • Magnetohydrodynamics Equations
  • Solving the Riemann problem in MHD
  • The div B = 0 constraint

Homework

  • Homework 1
  • Homework 2
  • Homework 3
  • Homework 4
  • Repository
  • Open issue

Index

By Michael Zingale

© 2021-2023; CC-BY-NC-SA 4.0