# Difference between revisions of "Python for Physics and Astronomy"

Jump to navigation
Jump to search

Line 36: | Line 36: | ||

##[http://prancer.physics.louisville.edu/astrowiki/index.php/Python_assignments Assignments] | ##[http://prancer.physics.louisville.edu/astrowiki/index.php/Python_assignments Assignments] | ||

#[http://prancer.physics.louisville.edu/astrowiki/index.php/NumPy,_SciPy_and_SciKits NumPy, SciPy and SciKits] | #[http://prancer.physics.louisville.edu/astrowiki/index.php/NumPy,_SciPy_and_SciKits NumPy, SciPy and SciKits] | ||

− | ##Numpy | + | ##Numpy |

− | ## | + | ###Arrays |

− | ##Scipy | + | ###Indexing |

− | ## | + | ###Functions |

+ | ###Matrix and vector math | ||

+ | ###Fourier Transforms | ||

+ | ##Scipy | ||

+ | ###Interpolation | ||

+ | ###Integration | ||

+ | ###Statistics | ||

##Examples | ##Examples | ||

##Assignments | ##Assignments |

## Revision as of 17:42, 21 February 2013

The Python programming language is a widely used tool for basic research and engineering. Its rapid rise in popularity is supported by comprehensive, largely open-source, contributions from scientists who use it for their own work. This short course offers an introduction to Python with examples drawn from physics and astronomy as part of a full semester Research Methods class.

The examples are collected here.

All the assignments are here.

Homework should be uploaded here.

The topics and examples covered are --

- Why program? Choosing a language.
- Very simple Python
- Elements of Python programming
- Solving problems with Python
- Graphics with Python
- NumPy, SciPy and SciKits
- Numpy
- Arrays
- Indexing
- Functions
- Matrix and vector math
- Fourier Transforms

- Scipy
- Interpolation
- Integration
- Statistics

- Examples
- Assignments

- Numpy
- Images
- Python Imaging Library - PIL
- Astronomical FITS files with Pyfits
- FITS headers
- Processing and displaying images
- Scipy and Scikit for image processing
- Examples
- Assignments

- Data acquisition and processing
- Real world interfacing
- Numerical data from images
- Fourier Transforms
- Spectra
- Probability and statistics
- Examples
- Assignments

- User interfaces
- Command line and the operating system
- Graphical user interfaces in Python (GUI)
- Examples
- Assignments

- Working with the web
- HTTP servers
- Getting data from servers
- Sending data to servers
- Common gateway interface - CGI
- Using Python with CGI
- Programming for server-side processing
- Examples
- Assignments

- Comparing Python to other languages
- Bash scripting in Unix-like systems
- Very simple C
- Using Python with other code
- Android for web development
- LabVIEW for instrument control and data analysis
- Java for astronomical calculations: AstroCC
- Java for astronomical image processing and photometry: AstroImageJ