M-step Jacobi vectorizes well, but is often not
very effective. When iparm(_JT_ steps_)=1 it is equivalent to
simply diagonally scaling the original system prior to solution.
M-step SSOR is often very effective, but is difficult to
vectorize (the implementation in JTPACK77 is not vectorized).
For the incomplete factorization preconditioners, rparm(_JT_ omega_)
controls the degree to which fill-in elements are added back
into the diagonal:
The incomplete factorization preconditioners can be quite
effective in reducing the number of iterations, but are
often so expensive to compute as to negate any benefit in
using them. In addition both the generation and application
of incomplete factorization preconditioners is difficult to
vectorize, and the implementations in JTPACK77 are not
vectorized. One way to make them more useful when solving a
number of linear systems with similar coefficients (e.g.a
time-dependent problem) is to amortize the cost of computing
them over several systems. That is, call the solver routine
initially with
iparm(_JT_ prein_) = _JT_ prein_ no_
and have the solver generate and
use one of the incomplete factorization preconditioners.
Then on subsequent calls to the solver, set
iparm(_JT_ prein_) = _JT_ prein_ yes_
so that the already-computed preconditioner will be reused.
While incomplete Cholesky (IC) factorization preconditioners
are appropriate only for symmetric coefficients, incomplete
LU (ILU) factorization preconditioners can be used for
either symmetric or nonsymmetric coefficients. Typically,
for a symmetric coefficient, one of the IC factorizations
should be preferrable to one of the ILU factorization, since
the number of operations required to generate an IC
factorization would be about 1/2 that required for an ILU
factorization. However, if the coefficient is stored in ELL storage format,
the nature of the data structure causes generation
of an IC factorization to be highly inefficient. Hence, for
coefficients stored in ELL storage format, ILU factorization
preconditioners are preferrable to IC factorization
preconditioners, even if the coefficient is symmetric.