Actual source code: bcgsimpl.h

  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

  8: #include <petsc/private/kspimpl.h>

 10: typedef struct {
 11:   Vec guess; /* if using right preconditioning with nonzero initial guess must keep that around to "fix" solution */
 12: } KSP_BCGS;

 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);