A robust, offline-first linear algebra toolkit built with Flutter. Designed for students and engineers who need precise matrix computations without relying on internet connectivity.
- Basic Arithmetic: Addition (
A+B), Subtraction (A-B), Multiplication (AxB). - Unary Operations: Transpose, Inverse (Square matrices), Rank, Determinant.
- Scalar Operations: Scalar multiplication (
k*A) and Matrix Power (A^n). - Precision: Uses the
fractionpackage to handle calculations with exact rational numbers, eliminating floating-point errors.
Solve systems of linear equations (Ax = B) using multiple methods:
- Gaussian Elimination: Row reduction to finding solutions.
- Gauss-Jordan: Reduces to Reduced Row Echelon Form (RREF).
- Cramer's Rule: Determinant-based solution for square systems.
- Inverse Matrix Method: Solves
X = A⁻¹B. - Least Squares: Finds approximate solutions for overdetermined systems.
- Eigenvalues & Eigenvectors: Computes characteristic polynomials and vectors.
- Diagonalization: Decomposes matrices into
PDP⁻¹. - Step-by-Step Explanations: Provides detailed logic for Determinants and Eigenvalue calculations (optimized for 2x2 and 3x3 matrices).
- Persistent History: Automatically saves calculations locally.
- Data Reusability: Quickly load past results into input fields (
To Ops A,To Ops B). - Offline Capable: Fully functional without network access.
- Framework: Flutter (Dart)
- State Management:
setStatewith localized logic controllers. - Math Engine:
fraction: For high-precision arithmetic.math_expressions: For variable parsing and symbolic logic.
- Persistence:
shared_preferences.
-
Clone the repository
git clone https://github.com/B0-KA/matrix-calc-offline.git cd matrix-calc-offline -
Install dependencies
flutter pub get
-
Run the app
flutter run
The latest APK can be downloaded from the Releases page.
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.