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
- AstroBetter Resource Page full of links to Python guides and tutorials
- Free textbook: Python for Astronomers by Imad Pasha & Chris Agostino. There's also Imad Pasha's Astronomical Python ebook, but I'm not sure how much overlap there is between these two resources.
- Free textbook (from CU domains): Numerical Python in Astronomy and Astrophysics
YouTube Videos
- A set of from-scratch tutorials for scientific programming with: NumPy, and SciPy, and matplotlib.
- Earlier this summer, there was a Python in Heliophysics Summer School held at CU Boulder. Their main web page has links to YouTube lectures and many other resources, including a "getting started" page full of resources.
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!