Numerical Solver Project

Introduction

Welcome to the Numerical Solver project! This project is designed to solve both linear and nonlinear systems of equations using various numerical methods. The solver is implemented in Python and utilizes Jupyter setup for an interactive experience. The graphical user interface (GUI) is created using the Tkinter library, providing a user-friendly interface for input and visualization of results.

Project Structure

The project is divided into two main phases, each focusing on solving different types of systems of equations:

1. Linear System Solver

Solve linear system of equations using different methods:

    1. Gauss Elimination
    2. Gauss Jordan
    3. LU Decomposition
    4. Gauss Seidel
    5. Jacobi

2. Nonlinear System Solver

 Solve non linear system of equations using different methods:
 
    1. Newton Raphson
    2. Bisection
    3. False Position
    4. Secant Method
    5. Fixed Point

Getting Started

To run the Numerical Solver project, follow these steps:

Ensure you have Python installed on your system.
Install Jupyter for interactive computing: pip install jupyter
Open the Jupyter notebook (numerical_solver.ipynb) using the command jupyter notebook in your terminal.
Execute the code cells to use the solver.

Linear System Solver

The linear system solver provides solutions to systems of linear equations using various numerical methods. Select the desired method from the GUI, input the coefficients, and get the results.

Nonlinear System Solver

The nonlinear system solver tackles systems with nonlinear equations. Choose the method from the GUI, input the necessary parameters, and obtain the solutions.

GUI Interface

The graphical user interface simplifies the interaction with the solver. It allows you to input coefficients, select the method, and visualize the results effortlessly. Tkinter is utilized for creating an intuitive and responsive GUI.

Examples

For examples on how to use the solver for both linear and nonlinear systems, refer to the Jupyter notebook (numerical_solver.ipynb). It contains sample code and demonstrations.

Contributions

Contributions to the project are welcome. If you find any issues, feel free to open a GitHub issue. If you have improvements or new features to propose, submit a pull request.

Project Contributors

The Numerical Solver project is a collaborative effort involving the following contributors:

Omnia Tarek
Rawan Said
Rana Mohammed
Nouran Ashraf

Thank you for using the Numerical Solver project! If you have any questions or feedback, please reach out to us. Happy solving!