Python Scientific Lecture Notes
This document
Tutorial material on the scientific Python ecosystem, a quick introduction to central tools and techniques. The different chapters each correspond to a 1 to 2 hours course with increasing level of expertise, from beginner to expert.
Authors
What’s new
Scipy-Lecture-Notes
License
Download
PDF, 2 pages per side
PDF, 1 page per side
HTML and example files
Source code (github)
1. Getting started with Python for science
1.1. Scientific computing with tools and workflow
1.2. The Python language
1.3. NumPy: creating and manipulating numerical data
1.4. Matplotlib: plotting
1.5. Scipy : high-level scientific computing
1.5.1. File input/output:scipy.io
1.5.2. Special functions:scipy.special
1.5.3. Linear algebra operations:scipy.linalg
1.5.4. Fast Fourier transforms:scipy.fftpack
1.5.5. Optimization and fit:scipy.optimize
1.5.6. Statistics and random numbers:scipy.stats
1.5.6.1. Histogram and probability density function
1.5.6.2. Percentiles
1.5.6.3. Statistical tests
1.5.7. Interpolation:scipy.interpolate
1.5.8. Numerical integration:scipy.integrate
1.5.9. Signal processing:scipy.signal
1.5.10. Image processing:scipy.ndimage
1.5.10.1. Geometrical transformations on images
1.5.10.2. Image filtering
1.5.10.3. Mathematical morphology
1.5.10.4. Measurements on images
1.5.11. Summary exercises on scientific computing
1.5.11.13. Maximum wind speed prediction at the Sprogø station
1.5.11.13.1. Statistical approach
1.5.11.13.2. Computing the cumulative probabilities
1.5.11.13.3. Prediction with UnivariateSpline
1.5.11.13.4. Exercise with the Gumbell distribution
1.5.11.14. Non linear least squares curve fitting: application to point extraction in topographical lidar data
1.5.11.14.1. Introduction
1.5.11.14.2. Loading and visualization
1.5.11.14.3. Fitting a waveform with a simple Gaussian model
1.5.11.14.3.1. Model
1.5.11.14.3.2. Initial solution
1.5.11.14.3.3. Fit
1.5.11.14.4. Going further
1.5.11.15. Image processing application: counting bubbles and unmolten grains
1.5.11.15.1. Statement of the problem
1.5.11.15.2. Proposed solution
1.5.11.16. Example of solution for the image processing exercise: unmolten grains in glass
1.5.11.13. Maximum wind speed prediction at the Sprogø station
1.5.11.13.1. Statistical approach
1.5.11.13.2. Computing the cumulative probabilities
1.5.11.13.3. Prediction with UnivariateSpline
1.5.11.13.4. Exercise with the Gumbell distribution
1.5.11.14. Non linear least squares curve fitting: application to point extraction in topographical lidar data
1.5.11.14.1. Introduction
1.5.11.14.2. Loading and visualization
1.5.11.14.3. Fitting a waveform with a simple Gaussian model
1.5.11.14.3.1. Model
1.5.11.14.3.2. Initial solution
1.5.11.14.3.3. Fit
1.5.11.14.4. Going further
1.5.11.15. Image processing application: counting bubbles and unmolten grains
1.5.11.15.1. Statement of the problem
1.5.11.15.2. Proposed solution
1.5.11.16. Example of solution for the image processing exercise: unmolten grains in glass
1.5.11.13. Maximum wind speed prediction at the Sprogø station
1.5.11.13.1. Statistical approach
1.5.11.13.2. Computing the cumulative probabilities
1.5.11.13.3. Prediction with UnivariateSpline
1.5.11.13.4. Exercise with the Gumbell distribution
1.5.11.14. Non linear least squares curve fitting: application to point extraction in topographical lidar data
1.5.11.14.1. Introduction
1.5.11.14.2. Loading and visualization
1.5.11.14.3. Fitting a waveform with a simple Gaussian model
1.5.11.14.3.1. Model
1.5.11.14.3.2. Initial solution
1.5.11.14.3.3. Fit
1.5.11.14.4. Going further
1.5.11.15. Image processing application: counting bubbles and unmolten grains
1.5.11.15.1. Statement of the problem
1.5.11.15.2. Proposed solution
1.5.11.16. Example of solution for the image processing exercise: unmolten grains in glass
1.6. Getting help and finding documentation
2. Advanced topics
2.1. Advanced Python Constructs
2.2. Advanced Numpy
2.3. Debugging code
2.4. Optimizing code
2.5. Sparse Matrices in SciPy
2.6. Image manipulation and processing using Numpy and Scipy
2.7. Mathematical optimization: finding minima of functions
2.8. Interfacing with C
3. Packages and applications
3.1. Sympy : Symbolic Mathematics in Python
3.2. Scikit-image: image processing
3.3. Traits: building interactive dialogs
3.4. 3D plotting with Mayavi
3.5. scikit-learn: machine learning in Python