Actual source code: petscsnes.h

petsc-3.3-p7 2013-05-11
  1: !
  2: !  Include file for Fortran use of the SNES package in PETSc
  3: !
 4:  #include finclude/petscsnesdef.h

  6: !
  7: !  Convergence flags
  8: !
  9:       PetscEnum SNES_CONVERGED_FNORM_ABS
 10:       PetscEnum SNES_CONVERGED_FNORM_RELATIVE
 11:       PetscEnum SNES_CONVERGED_SNORM_RELATIVE
 12:       PetscEnum SNES_CONVERGED_ITS
 13:       PetscEnum SNES_CONVERGED_TR_DELTA

 15:       PetscEnum SNES_DIVERGED_FUNCTION_DOMAIN
 16:       PetscEnum SNES_DIVERGED_FUNCTION_COUNT
 17:       PetscEnum SNES_DIVERGED_LINEAR_SOLVE
 18:       PetscEnum SNES_DIVERGED_FNORM_NAN
 19:       PetscEnum SNES_DIVERGED_MAX_IT
 20:       PetscEnum SNES_DIVERGED_LINE_SEARCH
 21:       PetscEnum SNES_DIVERGED_INNER
 22:       PetscEnum SNES_DIVERGED_LOCAL_MIN
 23:       PetscEnum SNES_CONVERGED_ITERATING
 24: 
 25:       parameter (SNES_CONVERGED_FNORM_ABS         =  2)
 26:       parameter (SNES_CONVERGED_FNORM_RELATIVE    =  3)
 27:       parameter (SNES_CONVERGED_SNORM_RELATIVE    =  4)
 28:       parameter (SNES_CONVERGED_ITS               =  5)
 29:       parameter (SNES_CONVERGED_TR_DELTA          =  7)

 31:       parameter (SNES_DIVERGED_FUNCTION_DOMAIN    = -1)
 32:       parameter (SNES_DIVERGED_FUNCTION_COUNT     = -2)
 33:       parameter (SNES_DIVERGED_LINEAR_SOLVE       = -3)
 34:       parameter (SNES_DIVERGED_FNORM_NAN          = -4)
 35:       parameter (SNES_DIVERGED_MAX_IT             = -5)
 36:       parameter (SNES_DIVERGED_LINE_SEARCH        = -6)
 37:       parameter (SNES_DIVERGED_INNER              = -7)
 38:       parameter (SNES_DIVERGED_LOCAL_MIN          = -8)
 39:       parameter (SNES_CONVERGED_ITERATING         =  0)
 40: !
 41: ! SNESNormType
 42: !
 43:       PetscEnum SNES_NORM_DEFAULT
 44:       PetscEnum SNES_NORM_NONE
 45:       PetscEnum SNES_NORM_FUNCTION
 46:       PetscEnum SNES_NORM_INITIAL_ONLY
 47:       PetscEnum SNES_NORM_FINAL_ONLY
 48:       PetscEnum SNES_NORM_INITIAL_FINAL_ONLY

 50:       parameter (SNES_NORM_DEFAULT                = -1)
 51:       parameter (SNES_NORM_NONE                   =  0)
 52:       parameter (SNES_NORM_FUNCTION               =  1)
 53:       parameter (SNES_NORM_INITIAL_ONLY           =  2)
 54:       parameter (SNES_NORM_FINAL_ONLY             =  3)
 55:       parameter (SNES_NORM_INITIAL_FINAL_ONLY     =  4)

 57: !
 58: !  Some PETSc fortran functions that the user might pass as arguments
 59: !
 60:       external SNESDEFAULTCOMPUTEJACOBIAN
 61:       external MATMFFDCOMPUTEJACOBIAN
 62:       external SNESDEFAULTCOMPUTEJACOBIANCOLOR
 63:       external SNESMONITORDEFAULT
 64:       external SNESMONITORLG
 65:       external SNESMONITORSOLUTION
 66:       external SNESMONITORSOLUTIONUPDATE

 68:       external SNESDEFAULTCONVERGED
 69:       external SNESSKIPCONVERGED

 71: !
 72: ! SNESNGMRESRestartType
 73: !

 75:       PetscEnum SNES_NGMRES_RESTART_NONE
 76:       PetscEnum SNES_NGMRES_RESTART_PERIODIC
 77:       PetscEnum SNES_NGMRES_RESTART_DIFFERENCE

 79:       parameter (SNES_NGMRES_RESTART_NONE = 0)
 80:       parameter (SNES_NGMRES_RESTART_PERIODIC = 1)
 81:       parameter (SNES_NGMRES_RESTART_DIFFERENCE = 2)


 84: !
 85: ! SNESNGMRESSelectionType
 86: !

 88:       PetscEnum SNES_NGMRES_SELECT_NONE
 89:       PetscEnum SNES_NGMRES_SELECT_DIFFERENCE
 90:       PetscEnum SNES_NGMRES_SELECT_LINESEARCH

 92:       parameter (SNES_NGMRES_SELECT_NONE = 0)
 93:       parameter (SNES_NGMRES_SELECT_DIFFERENCE = 1)
 94:       parameter (SNES_NGMRES_SELECT_LINESEARCH = 2)


 97: !
 98: ! SNESQNCompositionType
 99: !

101:       PetscEnum SNES_QN_SEQUENTIAL
102:       PetscEnum SNES_QN_COMPOSED

104:       parameter (SNES_QN_SEQUENTIAL = 0)
105:       parameter (SNES_QN_COMPOSED   = 1)

107: !
108: ! SNESQNScaleType
109: !

111:       PetscEnum SNES_QN_SCALE_NONE
112:       PetscEnum SNES_QN_SCALE_SHANNO
113:       PetscEnum SNES_QN_SCALE_LINESEARCH
114:       PetscEnum SNES_QN_SCALE_JACOBIAN

116:       parameter(SNES_QN_SCALE_NONE       = 0)
117:       parameter(SNES_QN_SCALE_SHANNO     = 1)
118:       parameter(SNES_QN_SCALE_LINESEARCH = 2)
119:       parameter(SNES_QN_SCALE_JACOBIAN   = 3)

121: !
122: ! SNESQNRestartType
123: !

125:       PetscEnum SNES_QN_RESTART_NONE
126:       PetscEnum SNES_QN_RESTART_POWELL
127:       PetscEnum SNES_QN_RESTART_PERIODIC

129:       parameter(SNES_QN_RESTART_NONE     = 0)
130:       parameter(SNES_QN_RESTART_POWELL   = 1)
131:       parameter(SNES_QN_RESTART_PERIODIC = 2)

133: !
134: ! SNESNCGType
135: !

137:       PetscEnum SNES_NCG_FR
138:       PetscEnum SNES_NCG_PRP
139:       PetscEnum SNES_NCG_HS
140:       PetscEnum SNES_NCG_DY
141:       PetscEnum SNES_NCG_CD

143:       parameter(SNES_NCG_FR  = 0)
144:       parameter(SNES_NCG_PRP = 1)
145:       parameter(SNES_NCG_HS  = 2)
146:       parameter(SNES_NCG_DY  = 3)
147:       parameter(SNES_NCG_CD  = 4)


150: !  End of Fortran include file for the SNES package in PETSc