solv_gcp
Synonyms: gcp
Inherits from: solveur_sys_base
Preconditioned conjugated gradient.
Parameters:
- seuil (type: float) Value of the final residue. The gradient ceases iteration when the Euclidean residue standard ||Ax-B|| is less than this value.
- [nb_it_max] (type: int) Keyword to set the maximum iterations number for the Gcp.
- [impr] (type: flag) Keyword which is used to request display of the Euclidean residue standard each time this iterates through the conjugated gradient (display to the standard outlet).
- [quiet] (type: flag) To not displaying any outputs of the solver.
- [save_matrice | save_matrix] (type: int) to save the matrix in a file.
- [precond] (type: precond_base) Keyword to define system preconditioning in order to accelerate resolution by the conjugated gradient. Many parallel preconditioning methods are not equivalent to their sequential counterpart, and you should therefore expect differences, especially when you select a high value of the final residue (seuil). The result depends on the number of processors and on the mesh splitting. It is sometimes useful to run the solver with no preconditioning at all. In particular: - when the solver does not converge during initial projection, - when comparing sequential and parallel computations. With no preconditioning, except in some particular cases (no open boundary), the sequential and the parallel computations should provide exactly the same results within fpu accuracy. If not, there might be a coding error or the system of equations is singular.
- [precond_nul] (type: flag) Keyword to not use a preconditioning method.
- [precond_diagonal] (type: flag) Keyword to use diagonal preconditioning.
- [optimized] (type: flag) This keyword triggers a memory and network optimized algorithms useful for strong scaling (when computing less than 100 000 elements per processor). The matrix and the vectors are duplicated, common items removed and only virtual items really used in the matrix are exchanged. Warning: this is experimental and known to fail in some VEF computations (L2 projection step will not converge). Works well in VDF.
gcp_ns
Inherits from: solv_gcp
not_set
Parameters:
- solveur0 (type: solveur_sys_base) Solver type.
- solveur1 (type: solveur_sys_base) Solver type.
- seuil (type: float) Value of the final residue. The gradient ceases iteration when the Euclidean residue standard ||Ax-B|| is less than this value.
- [nb_it_max] (type: int) Keyword to set the maximum iterations number for the Gcp.
- [impr] (type: flag) Keyword which is used to request display of the Euclidean residue standard each time this iterates through the conjugated gradient (display to the standard outlet).
- [quiet] (type: flag) To not displaying any outputs of the solver.
- [save_matrice | save_matrix] (type: int) to save the matrix in a file.
- [precond] (type: precond_base) Keyword to define system preconditioning in order to accelerate resolution by the conjugated gradient. Many parallel preconditioning methods are not equivalent to their sequential counterpart, and you should therefore expect differences, especially when you select a high value of the final residue (seuil). The result depends on the number of processors and on the mesh splitting. It is sometimes useful to run the solver with no preconditioning at all. In particular: - when the solver does not converge during initial projection, - when comparing sequential and parallel computations. With no preconditioning, except in some particular cases (no open boundary), the sequential and the parallel computations should provide exactly the same results within fpu accuracy. If not, there might be a coding error or the system of equations is singular.
- [precond_nul] (type: flag) Keyword to not use a preconditioning method.
- [precond_diagonal] (type: flag) Keyword to use diagonal preconditioning.
- [optimized] (type: flag) This keyword triggers a memory and network optimized algorithms useful for strong scaling (when computing less than 100 000 elements per processor). The matrix and the vectors are duplicated, common items removed and only virtual items really used in the matrix are exchanged. Warning: this is experimental and known to fail in some VEF computations (L2 projection step will not converge). Works well in VDF.