playground executable for experimenting with solvers and preconditioners
This MR adds an executable istl-playground
that can be easily used to try out solvers or preconditioners.
It reads a matrix and a rhs from MatrixMarket files or generates it if none is given and solves the systems with a solver from the matrix factory. This works also in parallel. The matrix can either be loaded on one rank and then be distributed on the ranks using ParMetis, or can be read from a distributed MatrixMarket file.
As it is probably rarly used I added the EXCLUDE_FROM_ALL
tag but added it as a test to avoid bit rotting.
I used it a lot in the last time. I hope that others could also benefit from it.
Merge request reports
Activity
- Resolved by Nils-Arne Dreier
Thanks. I think such a program is useful and further serves as a nice example.
Only a bit of nit-picking... The auxilary programs in
dune-grid
are located insrc
and notbin
. I'd advocate for consistency here.
- bin/istl-playground.cc 0 → 100644
17 #include <dune/istl/matrixmarket.hh> 18 19 // include solvers and preconditioners for the solverfactory 20 #include <dune/istl/solvers.hh> 21 #include <dune/istl/preconditioners.hh> 22 #include <dune/istl/cholmod.hh> 23 #include <dune/istl/superlu.hh> 24 #include <dune/istl/umfpack.hh> 25 #include <dune/istl/ldl.hh> 26 #include <dune/istl/spqr.hh> 27 #include <dune/istl/paamg/amg.hh> 28 29 30 #include "istl-playground.hh" 31 32 using VectorFieldType = double; changed this line in version 3 of the diff
@oliver.sander why did you close the MR. @nils.dreier should update according to the feedback, but I don't see a reason to close the MR.
added 2 commits
added 1 commit
- ceb7ac0f - change folder name bin -> src in CMakeLists.txt
mentioned in commit 9dae4be7