suchi-teki is a cross-platform mobile application that solves various numerical analysis problems. It features a Flutter-based UI and a Python backend (using FastAPI, numpy, scipy, and sympy) to implement key methods from numerical analysis, including root-finding algorithms, numerical quadrature, and numerical methods for solving ODEs.
-
Root-Finding Algorithms:
- Newton-Raphson
- Fixed-Point Iteration
- Secant Method
- Regular Falsi
- Bisection Method
- Durand-Kerner Method
-
Numerical Quadrature:
- Trapezoidal Rule
- Simpson's Rule
- Finite Method (PDE)
-
Numerical Methods for ODEs:
- Euler’s Method
- Backward Euler Method
- Trapezoidal Rule
- Runge-Kutta Methods
- Runge-Kutta-Fehlberg Method
- Dart: For building a cross-platform mobile app.
- Provider or Riverpod: For state management.
- http: To handle communication with the backend (Python FastAPI).
- FastAPI: A modern, fast web framework for building APIs.
- Numpy: For numerical operations.
- Scipy: For scientific computing.
- Sympy: For symbolic mathematics.
- Uvicorn: For running the FastAPI server.
- Pytest: For testing the backend algorithms.
- Matplotlib: Optional for visualizing the numerical solutions.
- Docker: Optional for containerizing the application.
- Flutter: Install Flutter
- Python 3.8+: Install Python
-
Clone the repository:
git clone https://github.com/your-username/suchi-teki.git cd suchi-teki/backend
-
Set up environmenet and install dependencies:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate pip install -r requirements.txt
-
Run the FastAPI backend:
fastapi dev backend/app/main.py
- Navigate to working directory
- Install flutter dependencies
flutter pub get
- Run the App
flutter run
This README.md
gives an overview of the project structure and instructions to set up the backend and frontend.