Next:
Course overview
ASTRONOMY 575
ASTROPHYSCIAL COMPUTING
CLASS NOTES
Fall 2015
Instructor: Jon Holtzman
Course overview
Introduction to computing hardware and NMSU/Astronomy computing
Hardware
Bits, bytes, and whatever
Computing software
Operating systems
Operating system interfaces
Applications
Network communication
NMSU/Astronomy (academic)
Linux resource usage
Working in a Unix environment
Linux help
Basics: directories
Basics: files
Unix useful file manipulation tools
archiving and compression tools
Unix system information, resources and usage
Unix job control
intermachine communication
Unix environment
Editors
Unix shells and shell scripting
example
remote & virtual desktops
Presentation/communication
Text processing: LaTeX
Introduction to makefiles
HTML
Collaboration
Programming
overarching concepts
philosophy
languages
Getting started
Getting started with Fortran
Getting started with C
Introduction to makefiles
Getting started with Python
Getting started with IDL
Simple makefile
Basic programming
program construction
Variables
Operators
Control statments
Input and output (I/O)
Program organization: subroutines and functions
Objects and object oriented programming
Error handling and code testing
Debugging code
Coding practices:
More advanced coding
Case study /review
Plotting
Basic plots
Python
``Image'' plots
Other plots
IDL examples
Event handling
Algorithms
Writing a program
Speed and scaling
Lists and list matching
Random number generation
Interpolation
Fourier analysis basics and sinc interpolation
Differentiation and integration
Differential equations
Fitting
Overview: frequentism vs Bayesian
General linear fits
Solving linear equations
Nonlinear fits
A nonlinear fitter without derivatives
parameter uncertainties and confidence limits
Bayesian analysis
The prior
Marginalization
Markov Chain Monte Carlo (MCMC)
Jon Holtzman 2015-12-11