As described in the title, I am looking for an appropriate preconditioner for an asymmetric matrix implemented in matrix-free style.
I've gone though all the matrix-free tutorials and none of them talks about the asymmetric case. (Almost all of them use the Chebyshev smoother with different inner preconditioners)
However, Chebyshev smoother is out of the question due to its requirement of symmetric positive definite matrix to get the max eigen-value. BlockRelaxation preconditioner is also unlikely to fit, which requires the inner contribution to cell blocks using discontinuous finite element. Other kinds of relaxation preconditioner like SOR, ILU all request certain entries of the matrix, which is expensive in matrix-free framework.
So I guess the only doable choice would be the PreconditionJacobi + GMRES on the inner levels and AMG + GMRES solver on the coarse grid?
Since I am still learning this amazing library and not familiar with the framework. Feel free to correct me if I got anything wrong.