Python for Physics and Astronomy
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. It was developed as part of a full semester Research Methods class.
Various examples are collected here.
The examples are a basis for a few assigned exercises 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
- Image processing with Python and SciPy
- User interfaces
- Command line and the operating system
- Graphical user interfaces in Python (GUI)
These topics may be added to a longer version of this course or as working notes when time allows.
- Real world interfacing
- Instrumentation and communication
- Serial ports
- Incorporating manufacturer's code
- 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
- Python and 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 and AstroImageJ