Actual source code: petscksp.h

petsc-3.14.6 2021-03-30
Report Typos and Errors
  1: !
  2: !  Used by petsckspdefmod.F90 to create Fortran module file
  3: !
  4: #include "petsc/finclude/petscksp.h"

  6:       type tKSP
  7:         PetscFortranAddr:: v PETSC_FORTRAN_TYPE_INITIALIZE
  8:       end type tKSP

 10:       KSP, parameter :: PETSC_NULL_KSP = tKSP(0)

 12:       type tKSPGuess
 13:         PetscFortranAddr:: v PETSC_FORTRAN_TYPE_INITIALIZE
 14:       end type tKSPGuess

 16:       KSPGuess, parameter :: PETSC_NULL_KSPGuess = tKSPGuess(0)

 18:       PetscEnum, parameter :: KSP_CG_SYMMETRIC=0
 19:       PetscEnum, parameter :: KSP_CG_HERMITIAN=1

 21:       PetscEnum, parameter :: KSP_FCD_TRUNC_TYPE_STANDARD=0
 22:       PetscEnum, parameter :: KSP_FCD_TRUNC_TYPE_NOTAY=1

 24:       PetscEnum, parameter :: KSP_CONVERGED_RTOL            = 2
 25:       PetscEnum, parameter :: KSP_CONVERGED_ATOL            = 3
 26:       PetscEnum, parameter :: KSP_CONVERGED_ITS             = 4
 27:       PetscEnum, parameter :: KSP_CONVERGED_CG_NEG_CURVE    = 5
 28:       PetscEnum, parameter :: KSP_CONVERGED_CG_CONSTRAINED  = 6
 29:       PetscEnum, parameter :: KSP_CONVERGED_STEP_LENGTH     = 7
 30:       PetscEnum, parameter :: KSP_CONVERGED_HAPPY_BREAKDOWN = 8

 32:       PetscEnum, parameter :: KSP_DIVERGED_NULL           = -2
 33:       PetscEnum, parameter :: KSP_DIVERGED_ITS            = -3
 34:       PetscEnum, parameter :: KSP_DIVERGED_DTOL           = -4
 35:       PetscEnum, parameter :: KSP_DIVERGED_BREAKDOWN      = -5
 36:       PetscEnum, parameter :: KSP_DIVERGED_BREAKDOWN_BICG = -6
 37:       PetscEnum, parameter :: KSP_DIVERGED_NONSYMMETRIC   = -7
 38:       PetscEnum, parameter :: KSP_DIVERGED_INDEFINITE_PC  = -8
 39:       PetscEnum, parameter :: KSP_DIVERGED_NANORINF       = -9
 40:       PetscEnum, parameter :: KSP_DIVERGED_INDEFINITE_MAT = -10
 41:       PetscEnum, parameter :: KSP_DIVERGED_PC_FAILED = -11

 43:       PetscEnum, parameter :: KSP_CONVERGED_ITERATING = 0

 45: !
 46: !  MatLMVMSymBrdnScaleType
 47: !
 48:       PetscEnum, parameter :: MAT_LMVM_SYMBRDN_SCALE_NONE     = 0
 49:       PetscEnum, parameter :: MAT_LMVM_SYMBRDN_SCALE_SCALAR   = 1
 50:       PetscEnum, parameter :: MAT_LMVM_SYMBRDN_SCALE_DIAGONAL = 2
 51:       PetscEnum, parameter :: MAT_LMVM_SYMBRDN_SCALE_USER     = 3

 53: !
 54: !  Possible arguments to KSPSetNormType()
 55: !
 56:       PetscEnum, parameter :: KSP_NORM_DEFAULT=0
 57:       PetscEnum, parameter :: KSP_NORM_NONE=0
 58:       PetscEnum, parameter :: KSP_NORM_PRECONDITIONED=1
 59:       PetscEnum, parameter :: KSP_NORM_UNPRECONDITIONED=2
 60:       PetscEnum, parameter :: KSP_NORM_NATURAL=3
 61: !
 62: !   Possible arguments to KSPMonitorSet()
 63: !
 64:       external KSPCONVERGEDDEFAULT
 65:       external KSPMONITORDEFAULT
 66:       external KSPMONITORTRUERESIDUALNORM
 67:       external KSPMONITORLGRESIDUALNORM
 68:       external KSPMONITORLGTRUERESIDUALNORM
 69:       external KSPMONITORSOLUTION
 70:       external KSPMONITORSINGULARVALUE
 71:       external KSPGMRESMONITORKRYLOV
 72:       external KSPGMRESCLASSICALGRAMSCHMIDTORTHOGONALIZATION
 73:       external KSPGMRESMODIFIEDGRAMSCHMIDTORTHOGONALIZATION
 74: !
 75: !   Possible arguments to KSPGMRESSetRefinementType()
 76: !
 77:       PetscEnum, parameter :: KSP_GMRES_CGS_REFINE_NEVER = 0
 78:       PetscEnum, parameter :: KSP_GMRES_CGS_REFINE_IFNEEDED = 1
 79:       PetscEnum, parameter :: KSP_GMRES_CGS_REFINE_ALWAYS = 2