Actual source code: petscmatmod.F90
2: module petscmatdefdummy
3: use petscvecdef
4: #include <../src/mat/f90-mod/petscmat.h>
5: end module petscmatdefdummy
7: module petscmatdef
8: use petscmatdefdummy
9: interface operator(.ne.)
10: function matnotequal(A,B)
11: import tMat
12: logical matnotequal
13: type(tMat), intent(in) :: A,B
14: end function
15: function matfdcoloringnotequal(A,B)
16: import tMatFDColoring
17: logical matfdcoloringnotequal
18: type(tMatFDColoring), intent(in) :: A,B
19: end function
20: function matnullspacenotequal(A,B)
21: import tMatNullSpace
22: logical matnullspacenotequal
23: type(tMatNullSpace), intent(in) :: A,B
24: end function
25: end interface operator (.ne.)
26: interface operator(.eq.)
27: function matequals(A,B)
28: import tMat
29: logical matequals
30: type(tMat), intent(in) :: A,B
31: end function
32: function matfdcoloringequals(A,B)
33: import tMatFDColoring
34: logical matfdcoloringequals
35: type(tMatFDColoring), intent(in) :: A,B
36: end function
37: function matnullspaceequals(A,B)
38: import tMatNullSpace
39: logical matnullspaceequals
40: type(tMatNullSpace), intent(in) :: A,B
41: end function
42: end interface operator (.eq.)
43: end module
45: function matnotequal(A,B)
46: use petscmatdefdummy, only: tMat
47: implicit none
48: logical matnotequal
49: type(tMat), intent(in) :: A,B
50: matnotequal = (A%v .ne. B%v)
51: end function
53: function matequals(A,B)
54: use petscmatdefdummy, only: tMat
55: implicit none
56: logical matequals
57: type(tMat), intent(in) :: A,B
58: matequals = (A%v .eq. B%v)
59: end function
61: function matfdcoloringnotequal(A,B)
62: use petscmatdefdummy, only: tMatFDColoring
63: implicit none
64: logical matfdcoloringnotequal
65: type(tMatFDColoring), intent(in) :: A,B
66: matfdcoloringnotequal = (A%v .ne. B%v)
67: end function
69: function matfdcoloringequals(A,B)
70: use petscmatdefdummy, only: tMatFDColoring
71: implicit none
72: logical matfdcoloringequals
73: type(tMatFDColoring), intent(in) :: A,B
74: matfdcoloringequals = (A%v .eq. B%v)
75: end function
77: function matnullspacenotequal(A,B)
78: use petscmatdefdummy, only: tMatNullSpace
79: implicit none
80: logical matnullspacenotequal
81: type(tMatNullSpace), intent(in) :: A,B
82: matnullspacenotequal = (A%v .ne. B%v)
83: end function
85: function matnullspaceequals(A,B)
86: use petscmatdefdummy, only: tMatNullSpace
87: implicit none
88: logical matnullspaceequals
89: type(tMatNullSpace), intent(in) :: A,B
90: matnullspaceequals = (A%v .eq. B%v)
91: end function
93: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
94: !DEC$ ATTRIBUTES DLLEXPORT::matnotequal
95: !DEC$ ATTRIBUTES DLLEXPORT::matequals
96: !DEC$ ATTRIBUTES DLLEXPORT::matfdcoloringnotequal
97: !DEC$ ATTRIBUTES DLLEXPORT::matfdcoloringequals
98: !DEC$ ATTRIBUTES DLLEXPORT::matnullspacenotequal
99: !DEC$ ATTRIBUTES DLLEXPORT::matnullspaceequals
100: #endif
101: module petscmat
102: use petscmatdef
103: use petscvec
104: #include <../src/mat/f90-mod/petscmat.h90>
105: interface
106: #include <../src/mat/f90-mod/ftn-auto-interfaces/petscmat.h90>
107: end interface
108: end module