xref: /petsc/src/ksp/ksp/impls/bcgs/bcgsimpl.h (revision 6d8694c4fbab79f9439f1ad13c0386ba7ee1ca4b)
1 /*
2    Private data structure used by the BCGS method. This data structure
3   must be identical to the beginning of the KSP_FBCGS and KSP_QMRCGS data structure
4   so if you CHANGE anything here you must also change it there.
5 */
6 #pragma once
7 
8 #include <petsc/private/kspimpl.h> /*I "petscksp.h" I*/
9 
10 typedef struct {
11   Vec guess; /* if using right preconditioning with nonzero initial guess must keep that around to "fix" solution */
12 } KSP_BCGS;
13 
14 PETSC_INTERN PetscErrorCode KSPSetFromOptions_BCGS(KSP, PetscOptionItems PetscOptionsObject);
15 PETSC_INTERN PetscErrorCode KSPSetUp_BCGS(KSP);
16 PETSC_INTERN PetscErrorCode KSPSolve_BCGS(KSP);
17 PETSC_INTERN PetscErrorCode KSPBuildSolution_BCGS(KSP, Vec, Vec *);
18 PETSC_INTERN PetscErrorCode KSPReset_BCGS(KSP);
19 PETSC_INTERN PetscErrorCode KSPDestroy_BCGS(KSP);
20