xref: /petsc/src/snes/impls/gs/gsimpl.h (revision feff33ee0b5b037fa8f9f294dede656a2f85cc47)
1 #if !defined(__GSIMPL)
2 #define __GSIMPL
3 
4 #include <petsc/private/snesimpl.h>      /*I "petscsnes.h"  I*/
5 #include <petscdm.h>
6 
7 typedef struct {
8   PetscInt  sweeps;     /* number of sweeps through the local subdomain before neighbor communication */
9   PetscInt  max_its;    /* maximum iterations of the inner pointblock solver */
10   PetscReal rtol;       /* relative tolerance of the inner pointblock solver */
11   PetscReal abstol;     /* absolute tolerance of the inner pointblock solver */
12   PetscReal stol;       /* step tolerance of the inner pointblock solver */
13   PetscReal h;          /* differencing for secant variants */
14   PetscBool secant_mat; /* use the Jacobian to get the coloring for the secant */
15   ISColoring coloring;
16 } SNES_NGS;
17 
18 PETSC_EXTERN PetscErrorCode SNESComputeNGSDefaultSecant(SNES,Vec,Vec,void *);
19 
20 #endif
21