Python for Physics and Astronomy: Difference between revisions
		
		
		
		Jump to navigation
		Jump to search
		
No edit summary  | 
				No edit summary  | 
				||
| Line 18: | Line 18: | ||
##[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/Elements_of_Python_programming Elements of Python programming]  | #[http://prancer.physics.louisville.edu/astrowiki/index.php/Elements_of_Python_programming Elements of Python programming]  | ||
##Input and output  | ##[http://prancer.physics.louisville.edu/astrowiki/index.php/Elements_of_Python_programming#Input_and_output Input and output]  | ||
##Data types: numbers and strings  | ##[http://prancer.physics.louisville.edu/astrowiki/index.php/Elements_of_Python_programming#Numbers.2C_text.2C_and_data_types Data types: numbers and strings]  | ||
##Lists, tuples, dictionaries, and statements  | ##[http://prancer.physics.louisville.edu/astrowiki/index.php/Elements_of_Python_programming#Lists.2C_tuples.2C_dictionaries.2C_and_statements Lists, tuples, dictionaries, and statements]  | ||
##[http://prancer.physics.louisville.edu/astrowiki/index.php/Python_examples Examples]    | ##[http://prancer.physics.louisville.edu/astrowiki/index.php/Python_examples Examples]    | ||
##[http://prancer.physics.louisville.edu/astrowiki/index.php/Python_assignments Assignments]  | ##[http://prancer.physics.louisville.edu/astrowiki/index.php/Python_assignments Assignments]  | ||
Revision as of 19:04, 12 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
- Flow control
 - Functions
 - Iteration
 - Examples
 - Assignments
 
 - Graphics
- Matplotlib
 - Examples
 - Assignments
 
 - Numpy, Scipy and Scikit
- Numpy arrays
 - Numpy math
 - Scipy interpolation and integration
 - Scipy statistics
 - Examples
 - Assignments
 
 - 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