This repository offers a comprehensive collection of numerical methods implemented in Python. It includes solutions to various mathematical problems, detailed explanations of each method, illustrative examples, and comparisons with prominent scientific libraries like Numpy, Scikit-Learn, and SciPy. Whether you're a student eager to delve into numerical methods or a researcher seeking efficient algorithms, this resource is tailored for you. You are encouraged to explore, utilize, and adapt the code according to your needs.
- Python 3.10+
- Whatever library is mentioned in the project's requirements.txt file.
To run .py scripts the recommended approach is to use virtualenv:
$ virtualenv env
$ source env/bin/activate
$ pip install -r requirements.txt
$ python path/to/main.py
For .ipynb notebooks you do not need to install anything locally on your PC. You may run all of the examples on the official website of Jupyter Notebooks using a demo version:
To run the notebooks locally, use the following command:
$ jupyter notebook path/to/notebook.ipynb
Method | Notes | Implementation | Examples |
---|---|---|---|
Bisection Method | |||
Secant Method | |||
Relaxation Method | |||
Golden Ratio Search | |||
Newton Raphson | |||
Gradient Descent |
Method | Notes | Implementation | Examples |
---|---|---|---|
Inverse Matrix | |||
Gaussian Elimination | |||
LU Decomposition | |||
Gauss Seidel Method | |||
Jacobi Method |
Method | Notes | Implementation | Examples |
---|---|---|---|
Taylor series | |||
Forward difference | |||
Backward difference | |||
Central difference |
Method | Notes | Implementation | Examples |
---|---|---|---|
Midpoint Rule | |||
Trapezoidal Rule | |||
Simpson's Rule | |||
Monte Carlo Integration |
Method | Notes | Implementation | Examples |
---|---|---|---|
Eigenvalues and Eigenvectors | |||
Power Method | |||
QR Method | |||
Eigenvalue Decomposition (EVD) | |||
Singular Value Decomposition (SVD) |
Method | Notes | Implementation | Examples |
---|---|---|---|
Linear Interpolation | |||
Least Squares | |||
Cubic Spline | |||
Lagrange Polynomial | |||
Newton's Polynomial | |||
Gaussian Interpolation | |||
Thin Plate Spline Interpolation |
Method | Notes | Implementation | Examples |
---|---|---|---|
Euler's Method | |||
Heun's Method | |||
Runge Kutta | |||
Picard's Method |
- https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/
- https://en.wikiversity.org/wiki/Cubic_Spline_Interpolation
- https://faculty.chass.ncsu.edu/garson/PA765/statnote.htm
- https://jmahaffy.sdsu.edu/courses/s18/math541/Lectures.html
- https://engcourses-uofa.ca/books/numericalanalysis
- https://johnfoster.pge.utexas.edu/numerical-methods-book
- https://math.nyu.edu/~stadler/num1/material/
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.