Skip to main content

Solver Advisor AI‑powered matrix diagnostics and solver recommendations for scientific computing

Solver Advisor is a lightweight analysis tool designed to inspect sparse matrices from scientific simulations (FEM, CFD, optimization, power systems, structural mechanics, etc.) and automatically recommend suitable iterative solvers and preconditioners.

It analyzes matrix structure, symmetry, SPD‑properties, block patterns, condition number, and spectral characteristics using Lanczos iterations. The tool provides actionable solver recommendations such as CG, GMRES, MINRES, and preconditioners like Jacobi, ILU, SSOR, or Multigrid.

Features Matrix loading (.mtx, .csv, .npy, .npz)

Symmetry detection

SPD (symmetric positive definite) test

Block‑structure detection

Condition number estimation

Largest/smallest eigenvalue estimation

Lanczos spectrum approximation

Solver recommendation (CG, GMRES, MINRES)

Preconditioner recommendation (Jacobi, SSOR, ILU, Multigrid)

CLI interface

GUI interface (Tkinter)

SuiteSparse matrix downloader (Python script)

Project Structure Kood solver-advisor/ │ ├── solver_advisor/ │ ├── io.py # Matrix loading utilities │ ├── analysis.py # Symmetry, SPD, block detection │ ├── spectrum.py # Eigenvalue & Lanczos routines │ ├── diagnostics.py # Solver & preconditioner logic │ ├── run.py # High-level execution wrapper │ ├── gui/ │ ├── app.py # Tkinter GUI │ ├── cli/ │ ├── main.py # CLI entry point │ ├── matrices/ # Downloaded matrices │ ├── tools/ │ ├── download_matrices.py # SuiteSparse downloader │ ├── tests/ │ ├── test_symmetry.py │ ├── test_spd.py │ └── README.md Installation Clone the repository:

Kood git clone https://github.com//solver-advisor cd solver-advisor Install in editable mode:

Kood pip install -e . This makes the solver-advisor CLI command available system‑wide.

Usage CLI Analyze a matrix directly from the terminal:

Kood solver-advisor matrices/example.mtx Example output:

Kood Form: (5000, 5000) Symmetry: True SPD: True Block structure: False Condition number: 1.2e7 Solver: CG Preconditioner: ILU/Multigrid GUI Start the graphical interface:

Kood python gui/app.py The GUI allows you to:

Select matrices from the matrices/ folder

Run full diagnostics

View solver recommendations

Inspect eigenvalues, condition number, SPD status, block structure, etc.

Downloading Matrices (SuiteSparse) Use the provided script to download real-world sparse matrices:

Kood python tools/download_matrices.py This downloads and extracts matrices from the SuiteSparse Matrix Collection into the matrices/ directory.

Example Matrix You can generate a small example matrix:

python from solver_advisor.io import create_example_matrix create_example_matrix() This creates matrices/example.mtx.

Requirements Python 3.10+

NumPy

SciPy

ssgetpy

Tkinter (included with most Python installations)

License MIT License (or whichever you choose)

Author Allar‑Joel Möldre
Numerical Analysis • HPC • Solver Diagnostics

Future Work AMG preconditioner integration

PETSc backend support

Web‑based GUI

Matrix pattern visualization

Solver performance prediction

Automatic preconditioner tuning

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

solver_advisor-0.1.0.tar.gz (8.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

solver_advisor-0.1.0-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file solver_advisor-0.1.0.tar.gz.

File metadata

  • Download URL: solver_advisor-0.1.0.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.3

File hashes

Hashes for solver_advisor-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e32673ffeeed20de018e96b356f2be71f50457495a215a287c466c12a557b766
MD5 6e786263165c849a82f1010863ef22b7
BLAKE2b-256 7ef039da58dfece33ca5e2937106042da09dfe38127bcad9d3d1460674260882

See more details on using hashes here.

File details

Details for the file solver_advisor-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: solver_advisor-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.3

File hashes

Hashes for solver_advisor-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 be4f8c10c9c2d8f773026f4a69e4a8dbf8a1055f1c5ca6dd1590cd297c5fc616
MD5 16d566a969c10c5bd465526c5bc8d24b
BLAKE2b-256 39c7177fe81f871e17decb2745d46cb248630bebdb67415ba41526950f242766

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page