Python for Physics and Astronomy: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 7: | Line 7: | ||
The topics and examples | The topics and examples covered -- | ||
#[http://prancer.physics.louisville.edu/astrowiki/index.php/Programming_for_Physics_and_Astronomy Why program? Choosing a language.] | #[http://prancer.physics.louisville.edu/astrowiki/index.php/Programming_for_Physics_and_Astronomy Why program? Choosing a language.] | ||
Line 30: | Line 30: | ||
##[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/Graphical_User_Interface_with_Python Graphical User Interfaces with Python] | #[http://prancer.physics.louisville.edu/astrowiki/index.php/Graphical_User_Interface_with_Python Graphical User Interfaces with Python] | ||
##[http://prancer.physics.louisville.edu/astrowiki/index.php/Graphical_User_Interface_with_Python#A_Tk_Tutorial A Tk Tutorial] | |||
##[http://prancer.physics.louisville.edu/astrowiki/index.php/Graphical_User_Interface_with_Python#Building_a_Program Building a Program] | |||
##[http://prancer.physics.louisville.edu/astrowiki/index.php/Graphical_User_Interface_with_Python#Interfacing_an_Instrument:_Phidgets Interfacing an Instrument] | |||
##[http://prancer.physics.louisville.edu/astrowiki/index.php/Graphical_User_Interface_with_Python#Events and Control Within the User Interface Events and Control] | |||
#[http://prancer.physics.louisville.edu/astrowiki/index.php/Graphics_with_Python Graphics with Python] | #[http://prancer.physics.louisville.edu/astrowiki/index.php/Graphics_with_Python Graphics with Python] | ||
##[http://prancer.physics.louisville.edu/astrowiki/index.php/Graphics_with_Python#Installation_of_matplotlib Matplotlib] | ##[http://prancer.physics.louisville.edu/astrowiki/index.php/Graphics_with_Python#Installation_of_matplotlib Matplotlib] |
Revision as of 21:19, 3 April 2018
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.
This resource was developed as part of a full semester
Research Methods class. Various examples that may be useful for
developing small Python programs are collected here. They are a basis for a few exercises that were assigned during the course are are available here.
The topics and examples covered --
- Why program? Choosing a language.
- Very simple Python
- Elements of Python programming
- Solving problems with Python
- Graphical User Interfaces with Python
- Graphics with Python
- NumPy, SciPy and SciKits
- Numpy
- Arrays
- Indexing
- Functions
- Matrix and vector math
- Fourier Transforms
- SciPy and SciKits
- Interpolation
- Integration
- Differentiation
- Statistics
- Examples
- Assignments
- Numpy
- Image processing with Python and SciPy
- User interfaces
- How to create a javascript program
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
- USB
- TCPIP
- Threading
- 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