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