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