Actual source code: tao_solver.h

  1: !
  2: !  $Id: tao_solver.h 1.12 04/03/01 16:51:45-06:00 sarich@lully.mcs.anl.gov $;
  3: !
  4: !  Include file for Fortran use of the TAO package

  6: #define TAO_SOLVER         PetscFortranAddr
  7: #define TAO_APPLICATION    PetscFortranAddr
  8: #define TaoApplication     PetscFortranAddr
  9: #define TaoVecF            PetscFortranAddr
 10: #define TaoMatF            PetscFortranAddr
 11: #define TaoIndexSetF       PetscFortranAddr
 12: #define TaoLinearSolverF   PetscFortranAddr
 13: #define TaoMethod          const character*(80)
 14: #define TaoTerminateReason integer

 16: #include "finclude/tao_general.h"

 18: #if !defined (PETSC_AVOID_DECLARATIONS)
 19: !
 20: !  Convergence flags.
 21: !  Be sure to check that these match the flags in $TAO_DIR/include/tao_solver.h
 22: !
 23:       integer TAO_CONVERGED_ATOL
 24:       integer TAO_CONVERGED_RTOL
 25:       integer TAO_CONVERGED_TRTOL
 26:       integer TAO_CONVERGED_MINF
 27:       integer TAO_DIVERGED_MAXITS
 28:       integer TAO_DIVERGED_NAN
 29:       integer TAO_DIVERGED_MAXFCN
 30:       integer TAO_DIVERGED_LS_FAILURE
 31:       integer TAO_DIVERGED_TR_REDUCTION
 32:       integer TAO_CONTINUE_ITERATING

 34:       parameter (TAO_CONVERGED_ATOL          =  2)
 35:       parameter (TAO_CONVERGED_RTOL          =  3)
 36:       parameter (TAO_CONVERGED_TRTOL         =  4)
 37:       parameter (TAO_CONVERGED_MINF          =  5)
 38:       parameter (TAO_DIVERGED_MAXITS         = -2)
 39:       parameter (TAO_DIVERGED_NAN            = -4)
 40:       parameter (TAO_DIVERGED_MAXFCN         = -5)
 41:       parameter (TAO_DIVERGED_LS_FAILURE     = -6)
 42:       parameter (TAO_DIVERGED_TR_REDUCTION   = -7)
 43:       parameter (TAO_CONTINUE_ITERATING      =  0)
 44: !
 45: !  Some TAO Fortran functions that the user might pass as arguments
 46: !
 47:       external TAODEFAULTCOMPUTEHESSIAN
 48:       external TAODEFAULTCOMPUTEHESSIANCOLOR
 49: !
 50: ! not yet defined
 51: !
 52: !      external TAODEFAULTMONITOR
 53: !      external TAOLGMONITOR
 54: !      external TAOVECVIEWMONITOR
 55: !      external TAOVECVIEWUPDATEMONITOR
 56: !      external TAOCONVERGED_DEFAULT
 57: !      external TAOAPPLY_LINESEARCH

 59: !  End of Fortran include file for the TAO package

 61: #endif