Astronomy 735: Scientific Computing (for Graduate Students)

FALL 2015
Instructor: Schorghofer [Contact info]
Credits: 1

Course description: This course will provide a broad overview of numerical methods, programming, and high-performance computing. The course will cover classic fundamentals of scientific computing at an accelerated pace as well as topics inspired by recent technological advances. The aim is to empower students to maximize use of computing for scientific research, with examples drawn from astrophysics.

Topics: Concepts of Numerical Analysis (efficiency versus robustness, ill-conditioned problems, pitfalls in continuum approximations), Roundoff and Number Representation (IEEE 754 standard, numerical instabilities), Programming Tools (programming languages, general purpose scientific software), Computational Performance (modern computer hardware, parallel computing, GPUs), Algorithms and Data Structures (gravitational N-body interactions), Data Analysis and BigData.

Prerequisites: Calculus and freshman physics. The course does not assume any previous programming skills, but you will need to pick up some.

Time and location: Wed 1:30-2:30, IfA C-221 Fern Room
Office hours: Wed 2:30-3:30, IfA C-211

Schedule and Homework

  1. Introduction,
  2. Concepts from Numerical Analysis
  3. Number Representation and Roundoff
  4. Programming Languages & Tools
  5. Practice problem
  6. Finite Differences; Approximation Theory
  7. Computer Architectures, Hardware/Software Interface
  8. Parallel Computing
  9. (Tour of the UH Cray cluster)
  10. Operation Count; Numerical Linear Algebra
  11. Algorithms, Data Structures, the N-body problem
  12. Practice problem
  13. Random numbers and Stochastic methods
  14. BigData, Software & Data management
  15. Equivalent problem formulations

Textbook: None required. Recommended:
1. Press, Teukolsky, Vetterling, Flannery "Numerical Recipes: The Art of Scientific Computing", Cambridge University Press;
2. Patterson & Hennessy "Computer Organization and Design: The Hardware/Software Interface", Morgan Kaufmann

Grades: Homework 60%, Attendance 40%

Course Website: