Actual source code: slepcnep.h
slepc-3.21.1 2024-04-26
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