Actual source code: slepcnep.h
slepc-3.22.2 2024-12-02
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, extends(tPetscObject) :: tNEP
15: end type tNEP
17: NEP, parameter :: SLEPC_NULL_NEP = tNEP(0)
19: ! Convergence flags.
20: ! They should match the flags in $SLEPC_DIR/include/slepcnep.h
22: PetscEnum, parameter :: NEP_REFINE_NONE = 0
23: PetscEnum, parameter :: NEP_REFINE_SIMPLE = 1
24: PetscEnum, parameter :: NEP_REFINE_MULTIPLE = 2
26: PetscEnum, parameter :: NEP_REFINE_SCHEME_SCHUR = 1
27: PetscEnum, parameter :: NEP_REFINE_SCHEME_MBE = 2
28: PetscEnum, parameter :: NEP_REFINE_SCHEME_EXPLICIT = 3
30: PetscEnum, parameter :: NEP_CONV_ABS = 0
31: PetscEnum, parameter :: NEP_CONV_REL = 1
32: PetscEnum, parameter :: NEP_CONV_NORM = 2
33: PetscEnum, parameter :: NEP_CONV_USER = 3
35: PetscEnum, parameter :: NEP_STOP_BASIC = 0
36: PetscEnum, parameter :: NEP_STOP_USER = 1
38: PetscEnum, parameter :: NEP_CONVERGED_TOL = 1
39: PetscEnum, parameter :: NEP_CONVERGED_USER = 2
40: PetscEnum, parameter :: NEP_DIVERGED_ITS = -1
41: PetscEnum, parameter :: NEP_DIVERGED_BREAKDOWN = -2
42: PetscEnum, parameter :: NEP_DIVERGED_LINEAR_SOLVE = -4
43: PetscEnum, parameter :: NEP_DIVERGED_SUBSPACE_EXHAUSTED = -5
44: PetscEnum, parameter :: NEP_CONVERGED_ITERATING = 0
46: PetscEnum, parameter :: NEP_GENERAL = 1
47: PetscEnum, parameter :: NEP_RATIONAL = 2
49: PetscEnum, parameter :: NEP_LARGEST_MAGNITUDE = 1
50: PetscEnum, parameter :: NEP_SMALLEST_MAGNITUDE = 2
51: PetscEnum, parameter :: NEP_LARGEST_REAL = 3
52: PetscEnum, parameter :: NEP_SMALLEST_REAL = 4
53: PetscEnum, parameter :: NEP_LARGEST_IMAGINARY = 5
54: PetscEnum, parameter :: NEP_SMALLEST_IMAGINARY = 6
55: PetscEnum, parameter :: NEP_TARGET_MAGNITUDE = 7
56: PetscEnum, parameter :: NEP_TARGET_REAL = 8
57: PetscEnum, parameter :: NEP_TARGET_IMAGINARY = 9
58: PetscEnum, parameter :: NEP_ALL = 10
59: PetscEnum, parameter :: NEP_WHICH_USER = 11
61: PetscEnum, parameter :: NEP_ERROR_ABSOLUTE = 0
62: PetscEnum, parameter :: NEP_ERROR_RELATIVE = 1
63: PetscEnum, parameter :: NEP_ERROR_BACKWARD = 2
65: PetscEnum, parameter :: NEP_CISS_EXTRACTION_RITZ = 0
66: PetscEnum, parameter :: NEP_CISS_EXTRACTION_HANKEL = 1
67: PetscEnum, parameter :: NEP_CISS_EXTRACTION_CAA = 2
69: !
70: ! Possible arguments to NEPMonitorSet()
71: !
72: external NEPMONITORFIRST
73: external NEPMONITORALL
74: external NEPMONITORCONVERGED
76: external NEPMonitorConvergedDestroy
78: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
79: !DEC$ ATTRIBUTES DLLEXPORT::SLEPC_NULL_NEP
80: #endif