How to construct a linear solver using the "Linear Solver Factory"
From KratosWiki
The class "LinearSolverFactory" is designed to help in the construction of the Kratos Linear Solvers, and makes an attempt to unify the construction mechanism.
the essential idea is that the "settings" to be used in the construction of a linear solver are defined by constructing a new python class (with arbitrary name) which contains the settings needed for the construction of the solver
A minimal example of this class is
class linear_solver_config:
solver_type = "BiConjugate gradient stabilized" scaling = False
The two parameters "solver_type" and "scaling" denote respectively the solver type to be used and the decision of applying, or not, the scaling to the system matrix coefficients
admissible values for "solver_type" are:
Conjugate gradient BiConjugate gradient stabilized GMRESSolver Mixed UP Skyline LU factorization Super LU AMGCL Parallel MKL Pardiso