Actual source code: gsimpl.h
1: #pragma once
3: #include <petsc/private/snesimpl.h>
4: #include <petscdm.h>
6: typedef struct {
7: PetscInt sweeps; /* number of sweeps through the local subdomain before neighbor communication */
8: PetscInt max_its; /* maximum iterations of the inner pointblock solver */
9: PetscReal rtol; /* relative tolerance of the inner pointblock solver */
10: PetscReal abstol; /* absolute tolerance of the inner pointblock solver */
11: PetscReal stol; /* step tolerance of the inner pointblock solver */
12: PetscReal h; /* differencing for secant variants */
13: PetscBool secant_mat; /* use the Jacobian to get the coloring for the secant */
14: ISColoring coloring;
15: } SNES_NGS;
17: PETSC_EXTERN PetscErrorCode SNESComputeNGSDefaultSecant(SNES, Vec, Vec, void *);