A comprehensive computational mathematics toolkit for solving linear systems, finding roots, and numerical integration
This project implements fundamental numerical analysis algorithms with an interactive terminal-based interface. Built for educational purposes, it provides robust implementations of classical numerical methods taught in computational mathematics courses.
- Gaussian Elimination - Forward elimination with back substitution
- Gauss-Jordan - Row reduction to reduced row echelon form
- GEMPS (Gaussian Elimination with Maximum Partial Pivoting and Scaling)
- MOSS (Method of Successive Substitutions)
- Half-Interval Method (Bisection Method)
- Newton's Method (Newton-Raphson)
- Method of Successive Substitution (Fixed-Point Iteration)
- Trapezoidal Rule - Composite trapezoidal approximation
- Romberg's Method - Richardson extrapolation for high accuracy
- Python 3.13+
- Virtual environment (recommended)
-
Clone the repository
git clone https://github.com/Charles787205/BSMProject.git cd BSMProject -
Activate virtual environment
# Windows .\Scripts\activate # Linux/Mac source Scripts/bin/activate
-
Install dependencies
pip install -r requirements.txt
cd project_files
python main.pyThe application will launch in fullscreen mode with an interactive menu system.
Navigate through the terminal interface using:
- Arrow keys or number keys to select methods
- Enter to confirm selection
- Follow on-screen prompts for input
pyautogui- GUI automation and fullscreen controlwindows-curses- Terminal UI library (Windows)prettytable/tabulate- Formatted output tablesPillow- Image processing support- Additional utilities for enhanced terminal experience
See requirements.txt for complete list.
Developed as part of a Numerical Analysis course, this project demonstrates:
- Implementation of classical numerical algorithms
- Computational complexity considerations
- Error analysis and numerical stability
- Interactive educational software design
BSM Project Team
- Repository: Charles787205/BSMProject
This project is available for educational purposes.
Built with 💻 for Numerical Analysis
Learning mathematics through code