For this class, please feel free to use whatever software and programming language(s) with which you're the most comfortable. There is a long history of astronomers, planetary scientists, and solar/space physicists using tools such as Fortran, C, IDL, IRAF, Mathematica, Matlab, Maple, R, Julia, and many others. However, there is a growing unifying trend toward the open-source choice of Python. Within our fields, there are also large development communitites for many useful modules and packages (listed below).
Top-Level Resources
- Basic Python Tutorial
- Interactive modes of working with Python such as iPython and Project Jupyter
- Free textbook: Python for Astronomers by Pasha & Agostino
- Free textbook (from CU domains): Numerical Python in Astronomy and Astrophysics
- Greenfield & Jedrzejewski's guide to Using Python for Interactive Data Analysis
- Lots of online material from a 2016 Berkeley Python Boot Camp
YouTube Videos
- A set of from-scratch tutorials for scientific programming with: NumPy, and SciPy, and matplotlib.
Package Documentation
- scipy for general scientific computing
- numpy for high-level numerical analysis
- matplotlib for making plots and figures (see also useful tip sheets)
- astropy for astronomical resources
- sunpy for analysis of solar physics data
- spacepy for space physics data analysis
If you know of an excellent resource that would be great to share with the rest of the class, please let me know and I'll add it!