Course Information
ASTR 474: Computational Astrophysics · 3 credits · Year 4 elective · 14-week semester
Catalog description: Applies numerical methods to astronomical problems including N-body integration, hydrodynamics concepts, radiative transfer approximations, Monte Carlo methods, parameter estimation, and reproducible simulation workflows.
Prerequisites: COMP 260; ASTR 310; MATH 255.
Assumption: two 75-minute meetings weekly. Each numbered lecture is a weekly topic module taught across those two meetings; it is not a single 75-minute meeting. Computing labs are two hours and are scheduled only after their mapped modules are complete. Confirm local dates, instructor, office hours, accommodations, and institutional policies before instructional use.
Learning Outcomes
- Choose a numerical method suited to an astrophysical initial- or boundary-value problem and state its assumptions and stability limits.
- Use NumPy, SciPy, Astropy, and REBOUND for array computation, units, fitting/integration, and orbital dynamics without misrepresenting educational code as research-grade software.
- Validate calculations using analytic limits, dimensional checks, timestep/resolution convergence, conservation diagnostics, and independent implementations.
- Quantify stochastic and fitted-parameter uncertainty, inspect residuals, and distinguish numerical error from model inadequacy.
- Build reproducible workflows that record software versions, inputs, random seeds, provenance, tests, and run instructions.
- Communicate a computational result with a defensible error budget, limitations, and machine-readable evidence.
Resources and Computing
Required software is pinned in requirements.txt: CPython 3.14.6, NumPy 2.5.3, SciPy 1.18.1, Astropy 8.0.1, and REBOUND 5.2.0. The package uses libraries for their actual scientific roles; short hand-built schemes are labeled as teaching demonstrations, not production solvers.
Students need a computer able to run the supplied scripts. All listed experiments run on a CPU; no GPU, observatory account, or paid service is assumed. Each activity includes a reproducible command and a validation target.
Assessment
| Component | Weight | Evidence |
|---|---|---|
| Seven computational labs | 28% | Runnable analysis, convergence or uncertainty evidence, and concise technical reports |
| Seven problem sets | 28% | Derivations, computational reasoning, validation, and interpretation |
| Code reviews and reproducibility checks | 14% | Tests, environment capture, provenance, and review of failure modes |
| Midterm computational audit | 10% | Independent recomputation, error diagnosis, and numerical-method choice |
| Final mini-project | 20% | Reproducible astrophysical computation, validation dossier, and written interpretation |
| Total | 100% |
Mastery grading rewards correct reasoning, validated results, physical interpretation, uncertainty analysis, and reproducibility. Revisions and resubmissions are encouraged to improve mastery and grade; instructors return actionable feedback and preserve the stated standards.
Cadence and Course Policies
The fourteen numbered lecture modules each occupy one calendar week and include both 75-minute meetings that week. Seven labs and seven problem sets are intentionally non-uniformly spaced: Labs/PS 01 cover Weeks 1-2; 02 covers Week 3; 03 covers Week 4; 04 covers Weeks 5-6; 05 covers Weeks 7-8; 06 covers Weeks 9-12; and 07 covers Weeks 13-14. Each assessment is due only after its listed lecture span, avoiding one coding deliverable per module while allowing longer computational investigations where the method requires it. The week-by-week mapping and project milestones are in schedule.html.
Students may discuss concepts and debug in pairs, but submitted code, explanations, and analysis must be attributable. Cite software, data, and adapted code. Do not report a numerical result without the input, method, units, validation, and uncertainty relevant to the claim. Institutional accessibility, late-work, academic-integrity, and safety policies supersede these placeholders.