Skip to content

!SOLVER

Solver control

Required control data.

Parameters

METHOD =    Solution method (CG, BiCGSTAB, GMRES, GPBiCG, DIRECT, DIRECTmkl, MUMPS)
            DIRECT     : Direct method except for contact analysis (serial processing only) (currently unavailable)
            DIRECTmkl  : Direct method using Intel MKL
            MUMPS      : Direct method using MUMPS
            When a direct method is selected, the data lines are ignored.
            Iterative methods for 3-DOF problems support thread-parallel execution with OpenMP

PRECOND =   Preconditioning method for iterative solvers (1, 2, 3, 5, 10, 11, 12)
            1, 2       : (Block) SSOR (with multi-color ordering only for 3-DOF problems)
            3          : (Block) Diagonal Scaling
            5          : AMG using the multigrid preconditioning package ML
            10         : Block ILU(0)
            11         : Block ILU(1)
            12         : Block ILU(2)
            10, 11, and 12 are available only for 3-DOF problems
            For OpenMP thread-parallel execution, SSOR, Diagonal Scaling, or ML is recommended

ITERLOG =   Whether to output iterative-solver convergence history          (YES/NO)(Default: NO)

TIMELOG =   Whether to output solver computation time                       (YES/NO/VERBOSE)(Default: NO)

USEJAD =    Whether to use ordering for vector processors                    (YES/NO)(Default: NO)
            Valid only when an iterative method is used for a 3-DOF problem

SCALING =   Whether to scale the matrix so that diagonal entries are 1       (YES/NO)(Default: NO)
            Valid only when an iterative method is used for a 3-DOF problem

DUMPTYPE =  Matrix dump format (NONE, MM, CSR, BSR) (mainly for debugging)
            NONE : Do not dump (Default)
            MM   : Matrix Market format
            CSR  : Compressed Sparse Row (CSR) format
            BSR  : Blocked CSR format

DUMPEXIT =  Terminate the program immediately after matrix dumping           (YES/NO)(Default: NO)

MPCMETHOD = Method for handling multipoint constraints (1, 2, 3)
            1: Penalty method (Default when using a direct method)
            2: MPC-CG method (Deprecated)
            3: Explicit DOF elimination (Default when using an iterative method)

ESTCOND =   Frequency of condition-number estimation (experimental)
            Estimate the condition number at each specified iteration interval and at the end of the iterations
            No estimation is performed when 0 is specified

METHOD2 =   Secondary solution method (BiCGSTAB, GMRES, GPBiCG) (experimental)
            Valid only when CG is specified for METHOD
            If CG diverges, automatically switch to the secondary method and continue solving
            The same values are used for the other parameters and data lines

CONTACT_ELIM = Specifies whether DOF elimination is performed in contact analysis (0,1)
               0: Perform DOF elimination only when using an iterative method (Default)
               1: Always perform DOF elimination (including when using a direct method)

** 2nd line and later **

(2nd line) NITER, iterPREmax, NREST, NCOLOR_IN, RECYCLEPRE
Variable Attribute Description
NITER I Number of iterations (Default: 100)
iterPREmax I Number of Additive Schwarz preconditioning iterations (Default: 1)
(Recommended value: 1; 2 may be effective in some parallel computations)
NREST I Number of Krylov subspaces (Default: 10)
(Valid only when GMRES is selected as the solution method)
NCOLOR_IN I Target number of colors for multi-color ordering (Default: 10)
(Valid only when the number of OpenMP threads is 2 or greater)
RECYCLEPRE I Number of times preconditioner setup information is reused (Default: 3)
(Valid only in nonlinear analysis)
(3rd line) RESID, SIGMA_DIAG, SIGMA
Variable Attribute Description
RESID R Truncation error (Default: 1.0e-8)
SIGMA_DIAG R Scale factor applied to diagonal entries when computing the preconditioning matrix (Default: 1.0)
(If division by zero or divergence occurs with ILU preconditioning, the problem may converge when a value greater than 1.0 is specified)
SIGMA R Unused (Default: 0.0)

When PRECOND=5 (optional)

If any other value is specified for PRECOND, the 4th line is ignored.

(4th line) ML_CoarseSolver, ML_Smoother, ML_MGCycle, ML_MaxLevels, ML_CoarseningScheme, ML_NumSweep
Variable Attribute Description
ML_CoarseSolver I Coarse-grid solver for ML (1: use smoother, 2: KLU (serial direct method), 3: MUMPS (parallel direct method)) (Default: 1)
(Recommended: 3 or 2 for difficult problems, 1 for ordinary problems)
ML_Smoother I ML smoother (1: Chebyshev, 2: SymBlockGaussSeidel, 3: Jacobi) (Default: 1)
(Recommended: 1)
ML_MGCycle I ML multigrid cycle (1: V-cycle, 2: W-cycle, 3: Full-V-cycle) (Default: 1)
(Recommended: 2 for difficult problems, 1 for ordinary problems)
ML_MaxLevels I Maximum number of ML levels (Default: 10)
(For particularly difficult problems, use a direct coarse solver and 2 levels (or 3 if memory is insufficient); for ordinary problems, 10 is recommended)
ML_CoarseningScheme I ML coarsening scheme (1: UncoupledMIS, 2: METIS, 4: Zoltan, 5: DD) (Default: 1)
(Recommended: 1 or 5)
ML_NumSweep I Number of ML smoother sweeps (polynomial degree for Chebyshev) (Default: 2)
(Recommended: 2 for Chebyshev, 1 for SymBlockGaussSeidel)

Examples

Use CG with SSOR preconditioning, and set the maximum number of iterations to 10000 and the truncation error to 1.0e-8

!SOLVER, METHOD=CG, PRECOND=1, ITERLOG=YES, TIMELOG=YES
  10000, 1
  1.0e-8, 1.0, 0.0

Use GMRES with SSOR preconditioning, and set the number of Krylov subspaces to 40 and the target number of colors for multi-color ordering to 100

!SOLVER, METHOD=GMRES, PRECOND=1, ITERLOG=YES, TIMELOG=YES
  10000, 1, 40, 100
  1.0e-8, 1.0, 0.0

Use CG with ILU(0) preconditioning, and set the scale factor applied to diagonal entries when computing the preconditioning matrix to 1.1

!SOLVER, METHOD=CG, PRECOND=10, ITERLOG=YES, TIMELOG=YES
  10000, 1
  1.0e-8, 1.1, 0.0

Use AMG by ML as the preconditioner for CG

!SOLVER, METHOD=CG, PRECOND=5, ITERLOG=YES, TIMELOG=YES
  10000, 1
  1.0e-8, 1.0, 0.0

Use AMG by ML as the preconditioner for CG and use MUMPS as the coarse-grid solver (for difficult problems)

!SOLVER, METHOD=CG, PRECOND=5, ITERLOG=YES, TIMELOG=YES
  10000, 1
  1.0e-8, 1.0, 0.0
  3

Use AMG by ML as the preconditioner for CG and use W-cycle as the multigrid cycle (for difficult problems)

!SOLVER, METHOD=CG, PRECOND=5, ITERLOG=YES, TIMELOG=YES
  10000, 1
  1.0e-8, 1.0, 0.0
  1, 1, 2

Use AMG by ML as the preconditioner for CG, use MUMPS as the coarse-grid solver, and set the maximum number of levels to 2 (for very difficult problems)

!SOLVER, METHOD=CG, PRECOND=5, ITERLOG=YES, TIMELOG=YES
  10000, 1
  1.0e-8, 1.0, 0.0
  3, 1, 1, 2