1: ! 2: ! 3: ! Include file for Fortran use of the KSP package in PETSc 4: ! 5: #include "petsc/finclude/petscksp.h" 7: ! 8: ! CG Types 9: ! 10: type tKSP 11: PetscFortranAddr:: v 12: end type tKSP 14: KSP, parameter :: PETSC_NULL_KSP = tKSP(-1) 16: type tKSPGuess 17: PetscFortranAddr:: v 18: end type tKSPGuess 20: KSPGuess, parameter :: PETSC_NULL_KSPGuess = tKSPGuess(-1) 22: PetscEnum KSP_CG_SYMMETRIC 23: PetscEnum KSP_CG_HERMITIAN 24: parameter (KSP_CG_SYMMETRIC=0,KSP_CG_HERMITIAN=1) 26: PetscEnum KSP_FCD_TRUNC_TYPE_STANDARD 27: PetscEnum KSP_FCD_TRUNC_TYPE_NOTAY 28: parameter (KSP_FCD_TRUNC_TYPE_STANDARD=0) 29: parameter (KSP_FCD_TRUNC_TYPE_NOTAY=1) 31: PetscEnum KSP_CONVERGED_RTOL 32: PetscEnum KSP_CONVERGED_ATOL 33: PetscEnum KSP_CONVERGED_ITS 34: PetscEnum KSP_DIVERGED_NULL 35: PetscEnum KSP_DIVERGED_ITS 36: PetscEnum KSP_DIVERGED_DTOL 37: PetscEnum KSP_DIVERGED_BREAKDOWN 38: PetscEnum KSP_CONVERGED_ITERATING 39: PetscEnum KSP_CONVERGED_CG_NEG_CURVE 40: PetscEnum KSP_CONVERGED_CG_CONSTRAINED 41: PetscEnum KSP_CONVERGED_STEP_LENGTH 42: PetscEnum KSP_CONVERGED_HAPPY_BREAKDOWN 43: PetscEnum KSP_DIVERGED_BREAKDOWN_BICG 44: PetscEnum KSP_DIVERGED_NONSYMMETRIC 45: PetscEnum KSP_DIVERGED_INDEFINITE_PC 46: PetscEnum KSP_DIVERGED_NANORINF 47: PetscEnum KSP_DIVERGED_INDEFINITE_MAT 48: PetscEnum KSP_DIVERGED_PCSETUP_FAILED 50: parameter (KSP_CONVERGED_RTOL = 2) 51: parameter (KSP_CONVERGED_ATOL = 3) 52: parameter (KSP_CONVERGED_ITS = 4) 53: parameter (KSP_CONVERGED_CG_NEG_CURVE = 5) 54: parameter (KSP_CONVERGED_CG_CONSTRAINED = 6) 55: parameter (KSP_CONVERGED_STEP_LENGTH = 7) 56: parameter (KSP_CONVERGED_HAPPY_BREAKDOWN = 8) 58: parameter (KSP_DIVERGED_NULL = -2) 59: parameter (KSP_DIVERGED_ITS = -3) 60: parameter (KSP_DIVERGED_DTOL = -4) 61: parameter (KSP_DIVERGED_BREAKDOWN = -5) 62: parameter (KSP_DIVERGED_BREAKDOWN_BICG = -6) 63: parameter (KSP_DIVERGED_NONSYMMETRIC = -7) 64: parameter (KSP_DIVERGED_INDEFINITE_PC = -8) 65: parameter (KSP_DIVERGED_NANORINF = -9) 66: parameter (KSP_DIVERGED_INDEFINITE_MAT = -10) 67: parameter (KSP_DIVERGED_PCSETUP_FAILED = -11) 69: parameter (KSP_CONVERGED_ITERATING = 0) 70: ! 71: ! Possible arguments to KSPSetNormType() 72: ! 73: PetscEnum KSP_NORM_NONE 74: PetscEnum KSP_NORM_PRECONDITIONED 75: PetscEnum KSP_NORM_UNPRECONDITIONED 76: PetscEnum KSP_NORM_NATURAL 78: parameter (KSP_NORM_NONE=0) 79: parameter (KSP_NORM_PRECONDITIONED=1) 80: parameter (KSP_NORM_UNPRECONDITIONED=2) 81: parameter (KSP_NORM_NATURAL=3) 82: ! 83: ! Possible arguments to KSPMonitorSet() 84: ! 85: external KSPCONVERGEDDEFAULT 86: external KSPMONITORDEFAULT 87: external KSPMONITORTRUERESIDUALNORM 88: external KSPMONITORLGRESIDUALNORM 89: external KSPMONITORLGTRUERESIDUALNORM 90: external KSPMONITORSOLUTION 91: external KSPMONITORSINGULARVALUE 92: external KSPGMRESMONITORKRYLOV 93: ! 94: ! Possible arguments to KSPGMRESSetRefinementType() 95: ! 96: PetscEnum KSP_GMRES_CGS_REFINE_NEVER 97: PetscEnum KSP_GMRES_CGS_REFINE_IFNEEDED 98: PetscEnum KSP_GMRES_CGS_REFINE_ALWAYS 99: ! 100: parameter (KSP_GMRES_CGS_REFINE_NEVER = 0) 101: parameter (KSP_GMRES_CGS_REFINE_IFNEEDED = 1) 102: parameter (KSP_GMRES_CGS_REFINE_ALWAYS = 2) 103: ! 104: ! End of Fortran include file for the KSP package in PETSc 105: !