Actual source code: slepcnepmod.F90
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: module slepcnepdefdummy
11: use slepcpepdef
12: use slepcfndef
13: #include <../src/nep/f90-mod/slepcnep.h>
14: end module
16: module slepcnepdef
17: use slepcnepdefdummy
18: interface operator (.ne.)
19: function nepnotequal(A,B)
20: import tNEP
21: logical nepnotequal
22: type(tNEP), intent(in) :: A,B
23: end function
24: end interface operator (.ne.)
25: interface operator (.eq.)
26: function nepequals(A,B)
27: import tNEP
28: logical nepequals
29: type(tNEP), intent(in) :: A,B
30: end function
31: end interface operator (.eq.)
32: end module
34: function nepnotequal(A,B)
35: use slepcnepdefdummy, only: tNEP
36: logical nepnotequal
37: type(tNEP), intent(in) :: A,B
38: nepnotequal = (A%v .ne. B%v)
39: end function
41: function nepequals(A,B)
42: use slepcnepdefdummy, only: tNEP
43: logical nepequals
44: type(tNEP), intent(in) :: A,B
45: nepequals = (A%v .eq. B%v)
46: end function
48: module slepcnep
49: use slepcnepdef
50: use slepcpep
51: use slepcfn
52: #include <../src/nep/f90-mod/slepcnep.h90>
53: interface
54: #include <../src/nep/f90-mod/ftn-auto-interfaces/slepcnep.h90>
55: end interface
56: end module
58: ! The following module imports all the functionality of SLEPc and PETSc
59: module slepc
60: use slepcnep
61: use slepcmfn
62: use petsc
63: end module