1. But#

The keyword factor SOLVEUR is common to all commands that solve systems of linear equations (STAT_NON_LINE, CALC_MODES,…). To solve these systems of equations, special algorithms called « linear solvers » are used. The SOLVEUR keyword allows you to choose which linear solver to use from two categories: direct solvers and iterative solvers.

Among the direct solvers, we have the classical « Gauss » algorithm (METHODE =” LDLT “), a multifrontal factorization (” MULT_FRONT “) and the MUMPS library (” MUMPS “).

For iterative solvers, it is possible to use a conjugate gradient (“GCPC”) or some algorithms from the PETSc library (“PETSC”).

Only MULT_FRONT, MUMPS, and PETSC are parallelized. The first in shared memory (OpenMP), the other two mainly in distributed memory (MPI). Their parallel schemes can even be linked together (PETSc + MUMPS as a preconditioner) or take advantage of a second level of parallelism (OpenMP in MUMPS and library BLAS).

On the other hand, regardless of their level of parallelism, all solvers remain compatible with parallel processing of elementary calculations and assemblies.

On the other hand, only the three direct solvers are compatible with modal calculation, buckling studies, and some nonlinear time step refinement procedures.

For more details and advice on the use of linear solvers, you can consult the specific instructions for use [U2.08.03]/[U2.08.06].