Welcome to the Rootfinding Application! This bonus project, undertaken during my basic numerical analysis course, aims to offer a user-friendly interface for implementing diverse numerical analysis methods to find roots of mathematical functions. The application uses the Qt framework for the user interface, while the root finding methods are implemented using Python.
The Rootfinding Application incorporates the following numerical analysis methods:
- Newton's Method
- Bisection Method
- Secant Method
- Fixed Point Iteration Method
- False Position Method
Each method is carefully implemented to accurately find the roots of the given function.
Follow the steps below to effectively utilize the application:
To start using the application, you need to provide the necessary input configuration. This includes the following:
- Function: Enter the mathematical function for which you want to find the root. Make sure to input the function in a valid format.
- Error Tolerance: Specify the desired level of accuracy for the root. This is optional, and if not provided, the default value of 0.0001 will be used.
- Number of Iterations: Define the maximum number of iterations to perform. If not specified, the default value of 100 will be used.
- Plot function: Users can input the interval for the function to be drawn in the
x_0
andx_1
fields. Once the function and interval are provided, they can click the "Plot function" button to visualize an interactive plot of the function.
Once you have entered the input configuration, simply click the "Calculate" button to initiate the root finding process. The application will execute the selected method and display the result on the user interface.
After the root finding process is completed, the application will present the result on the interface. This includes the root value and any additional information, such as the number of iterations performed, how much time it took to find the root and the error in each iteration.
To install and run the Rootfinding Application, please follow these steps:
- Clone the repository to your local machine.
- Install the required dependencies listed in the
requirements.txt
file. - Launch the application using your preferred Python IDE or by running the main script (pycharm is advised).
- Start using the application by following the instructions provided above.
The Rootfinding Application simplifies the process of finding roots of mathematical functions by providing a user-friendly interface and implementing various numerical analysis methods. For future enhancements, the application could incorporate modified versions of the already implemented methods i.e. i struggled to implement the improved version of newton method for double roots so that could be a great starting point to improve the application.