Actual source code: slepcnep.h
slepc-3.21.1 2024-04-26
Report Typos and Errors

      1: !
      2: !  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      3: !  SLEPc - Scalable Library for Eigenvalue Problem Computations
      4: !  Copyright (c) 2002-, Universitat Politecnica de Valencia, Spain
      5: !
      6: !  This file is part of SLEPc.
      7: !  SLEPc is distributed under a 2-clause BSD license (see LICENSE).
      8: !  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      9: !
     10: !  Used by slepcnepmod.F90 to create Fortran module file
     11: !
     12: #include "slepc/finclude/slepcnep.h"

     14:       type tNEP
     15:         PetscFortranAddr:: v PETSC_FORTRAN_TYPE_INITIALIZE
     16:       end type tNEP

     18:       NEP, parameter :: SLEPC_NULL_NEP = tNEP(0)

     20: !  Convergence flags.
     21: !  They should match the flags in $SLEPC_DIR/include/slepcnep.h

     23:       PetscEnum, parameter :: NEP_REFINE_NONE            =  0
     24:       PetscEnum, parameter :: NEP_REFINE_SIMPLE          =  1
     25:       PetscEnum, parameter :: NEP_REFINE_MULTIPLE        =  2

     27:       PetscEnum, parameter :: NEP_REFINE_SCHEME_SCHUR    =  1
     28:       PetscEnum, parameter :: NEP_REFINE_SCHEME_MBE      =  2
     29:       PetscEnum, parameter :: NEP_REFINE_SCHEME_EXPLICIT =  3

     31:       PetscEnum, parameter :: NEP_CONV_ABS               =  0
     32:       PetscEnum, parameter :: NEP_CONV_REL               =  1
     33:       PetscEnum, parameter :: NEP_CONV_NORM              =  2
     34:       PetscEnum, parameter :: NEP_CONV_USER              =  3

     36:       PetscEnum, parameter :: NEP_STOP_BASIC             =  0
     37:       PetscEnum, parameter :: NEP_STOP_USER              =  1

     39:       PetscEnum, parameter :: NEP_CONVERGED_TOL          =  1
     40:       PetscEnum, parameter :: NEP_CONVERGED_USER         =  2
     41:       PetscEnum, parameter :: NEP_DIVERGED_ITS           = -1
     42:       PetscEnum, parameter :: NEP_DIVERGED_BREAKDOWN     = -2
     43:       PetscEnum, parameter :: NEP_DIVERGED_LINEAR_SOLVE  = -4
     44:       PetscEnum, parameter :: NEP_DIVERGED_SUBSPACE_EXHAUSTED = -5
     45:       PetscEnum, parameter :: NEP_CONVERGED_ITERATING    =  0

     47:       PetscEnum, parameter :: NEP_GENERAL                =  1
     48:       PetscEnum, parameter :: NEP_RATIONAL               =  2

     50:       PetscEnum, parameter :: NEP_LARGEST_MAGNITUDE      =  1
     51:       PetscEnum, parameter :: NEP_SMALLEST_MAGNITUDE     =  2
     52:       PetscEnum, parameter :: NEP_LARGEST_REAL           =  3
     53:       PetscEnum, parameter :: NEP_SMALLEST_REAL          =  4
     54:       PetscEnum, parameter :: NEP_LARGEST_IMAGINARY      =  5
     55:       PetscEnum, parameter :: NEP_SMALLEST_IMAGINARY     =  6
     56:       PetscEnum, parameter :: NEP_TARGET_MAGNITUDE       =  7
     57:       PetscEnum, parameter :: NEP_TARGET_REAL            =  8
     58:       PetscEnum, parameter :: NEP_TARGET_IMAGINARY       =  9
     59:       PetscEnum, parameter :: NEP_ALL                    = 10
     60:       PetscEnum, parameter :: NEP_WHICH_USER             = 11

     62:       PetscEnum, parameter :: NEP_ERROR_ABSOLUTE         =  0
     63:       PetscEnum, parameter :: NEP_ERROR_RELATIVE         =  1
     64:       PetscEnum, parameter :: NEP_ERROR_BACKWARD         =  2

     66:       PetscEnum, parameter :: NEP_CISS_EXTRACTION_RITZ   =  0
     67:       PetscEnum, parameter :: NEP_CISS_EXTRACTION_HANKEL =  1
     68:       PetscEnum, parameter :: NEP_CISS_EXTRACTION_CAA    =  2

     70: !
     71: !   Possible arguments to NEPMonitorSet()
     72: !
     73:       external NEPMONITORFIRST
     74:       external NEPMONITORALL
     75:       external NEPMONITORCONVERGED

     77:       external NEPMonitorConvergedDestroy

     79: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
     80: !DEC$ ATTRIBUTES DLLEXPORT::SLEPC_NULL_NEP
     81: #endif