This repository contains a collection of numerical methods developed in Python, primarily focused on solving physics problems, though they can also be applied to various mathematical scenarios. These methods are implemented using Jupyter notebooks, making it easy to understand and visualize the step-by-step process involved in each technique.
The following numerical methods are included in this repository:
-
Euler Method: A straightforward first-order method for solving ordinary differential equations (ODEs). It’s the simplest form of numerical integration.
-
Modified Euler Method: An improved version of the Euler Method that provides better accuracy by taking an average of the slopes at the beginning and end of the interval.
-
Improved Euler Method: Also known as Heun's method, it further refines the approximation by considering the average slope over the interval.
-
Runge-Kutta Method: A more sophisticated method for solving ODEs, particularly the fourth-order Runge-Kutta method, which offers high accuracy and stability.
-
Shooting Method: A technique used to solve boundary value problems by transforming them into initial value problems, often employed in physics for systems with boundary conditions.
-
Lagrange Polynomial Interpolation: A method for polynomial interpolation, which is useful in approximating functions based on known data points.
Each method is demonstrated with examples, showing how they can be applied to solve typical physics problems. The focus is on clarity and practical implementation, making it a valuable resource for students, educators, and anyone interested in computational physics.
Clone the repository and run the Jupyter notebooks to explore the implementation and application of each method. The code is written in Python and should be straightforward to follow, with comments and explanations provided throughout.