Skip to content

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.

License

Notifications You must be signed in to change notification settings

djeada/Numerical-Methods

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Numerical Methods

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.

Demo

Requirements

  • Python 3.10+
  • Whatever library is mentioned in the project's requirements.txt file.

Installation

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:

https://jupyter.org/try

To run the notebooks locally, use the following command:

$ jupyter notebook path/to/notebook.ipynb

Topics

Root And Extrema Finding

Method Notes Implementation Examples
Bisection Method
Secant Method
Relaxation Method
Golden Ratio Search
Newton Raphson
Gradient Descent

Systems Of Equations

Method Notes Implementation Examples
Inverse Matrix
Gaussian Elimination
LU Decomposition
Gauss Seidel Method
Jacobi Method

Differentiation

Method Notes Implementation Examples
Taylor series
Forward difference
Backward difference
Central difference

Integration

Method Notes Implementation Examples
Midpoint Rule
Trapezoidal Rule
Simpson's Rule
Monte Carlo Integration

Matrices

Method Notes Implementation Examples
Eigenvalues and Eigenvectors
Power Method
QR Method
Eigenvalue Decomposition (EVD)
Singular Value Decomposition (SVD)

Regression

Method Notes Implementation Examples
Linear Interpolation
Least Squares
Cubic Spline
Lagrange Polynomial
Newton's Polynomial
Gaussian Interpolation
Thin Plate Spline Interpolation

Ordinary Differential Equations

Method Notes Implementation Examples
Euler's Method
Heun's Method
Runge Kutta
Picard's Method

References

Contributing

Contributions are welcome! If you'd like to propose a major change, please open an issue first to discuss your ideas.

When contributing, ensure you update relevant tests as needed to maintain the integrity of the project.

License

This project is licensed under the MIT License.

About

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.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published