lis_solver_set_option - set the options for the solver
subroutine lis_solver_set_option(char *text, LIS_SOLVER
*solver, LIS_INTEGER ierr);
Set the options for the solver.
- text
- The command line options
The table below shows the available command line options, where -i {cg|1}
means -i cg or -i 1 and -maxiter [1000] indicates that -maxiter
defaults to 1,000.
The following options are supported:
- -i linear solver
- The following options are supported for linear solver:
- -i {cg|1}
- CG
- -i {bicg|2}
- BiCG
- -i {cgs|3}
- CGS
- -i {bicgstab|4}
- BiCGSTAB
- -i {bicgstabl|5}
- BiCGSTAB(l)
- -i {gpbicg|6}
- GPBiCG
- -i {tfqmr|7}
- TFQMR
- -i {orthomin|8}
- Orthomin(m)
- -restart [40]
- The restart value m
- -i {gmres|9}
- GMRES(m)
- -restart [40]
- The restart value m
- -i {jacobi|10}
- Jacobi
- -i {gs|11}
- Gauss-Seidel
- -i {sor|12}
- SOR
- -omega [1.9]
- The relaxation coefficient omega (0<omega<2)
- -i {bicgsafe|13}
- BiCGSafe
- -i {cr|14}
- CR
- -i {bicr|15}
- BiCR
- -i {crs|16}
- CRS
- -i {bicrstab|17}
- BiCRSTAB
- -i {gpbicr|18}
- GPBiCR
- -i {bicrsafe|19}
- BiCRSafe
- -i {fgmres|20}
- FGMRES(m)
- -restart [40]
- The restart value m
- -i {idrs|21}
- IDR(s)
- -irestart [2]
- The restart value s
- -i {idr1|22}
- IDR(1)
- -i {minres|23}
- MINRES
- -i {cocg|24}
- COCG
- -i {cocr|25}
- COCR
- -p preconditioner
- The following options are supported for preconditioner:
- -p {none|0}
- None
- -p {jacobi|1}
- Jacobi
- -p {ilu|2}
- ILU(k)
- -ilu_fill [0]
- The fill level k
- -p {ssor|3}
- SSOR
- -ssor_omega [1.0]
- The relaxation coefficient omega (0<omega<2)
- -p {hybrid|4}
- Hybrid
- -hybrid_i [sor]
- The linear solver
- -hybrid_maxiter [25]
- The maximum number of iterations
- -hybrid_tol [1.0e-3]
- The convergence criterion
- -hybrid_omega [1.5]
- The relaxation coefficient omega of the SOR
(0<omega<2)
- -hybrid_ell [2]
- The degree l of the BiCGSTAB(l)
- -hybrid_restart [40]
- The restart values of the GMRES and Orthomin
- -p {is|5}
- I+S
- -is_alpha [1.0]
- The parameter alpha of I+alpha*S(m)
- -is_m [3]
- The parameter m of I+alpha*S(m)
- -p {sainv|6}
- SAINV
- -sainv_drop [0.05]
- The drop criterion
- -p {saamg|7}
- SA-AMG
- -saamg_unsym [false]
- Select the unsymmetric version (The matrix structure must be
symmetric)
- -saamg_theta [0.05|0.12]
- The drop criterion
- -p {iluc|8}
- Crout ILU
- -iluc_drop [0.05]
- The drop criterion
- -iluc_rate [5.0]
- The ration of maximum fill-in
- -p {ilut|9}
- ILUT
- -ilut_drop [0.05]
- The drop criterion
- -ilut_rate [5.0]
- The ration of maximum fill-in
- -adds true
- Additive Schwarz
- -adds_iter [1]
- The number of iteration
Other Options:
- -maxiter [1000]
- The maximum number of iterations
- -tol [1.0e-12]
- The convergence criterion
- -print [0]
- The display of the residual
- -print {mem|1}
- Save the residual history
- -print {out|2}
- Display the residual history
- -print {all|3}
- Save the residual history and display it on the screen
- -scale [0]
- The scaling
- -scale {none|0}
- No scaling
- -scale {jacobi|1}
- The Jacobi scaling
- -scale {symm_diag|2}
- The diagonal scaling
- -initx_zeros [true]
- The behavior of the initial vector x_0
- -initx_zero {false|0}
- Given values
- -initx_zero {true|1}
- All values are set to 0
- -omp_num_threads [t]
- The number of threads (t represents the maximum number of
threads)
- -storage [0]
- The matrix storage format
- -storage_block [2]
- The block size of the BSR and BSC formats
- -f [0]
- The precision of the linear solver
- -f {double|0}
- Double precision
- -f {quad|1}
- Double-double (quadruple) precision
See Lis User Guide for full description.
lis(3)
http://www.ssisc.org/lis/