Actual source code: petscmatmod.F90
1: module petscmatdef
2: use petscvecdef
3: #include "petsc/finclude/petscmat.h"
4: #include "petsc/finclude/petscmatcoarsen.h"
5: #include "petsc/finclude/petscpartitioner.h"
6: #include "petsc/finclude/petscmathypre.h"
7: #include "petsc/finclude/petscmathtool.h"
8: #include "petsc/finclude/petscmatelemental.h"
9: #include <../ftn/mat/petscmat.h>
10: #include <../ftn/mat/petscmatcoarsen.h>
11: #include <../ftn/mat/petscpartitioner.h>
13: end module
15: ! ----------------------------------------------
17: module petscmat
18: use petscmatdef
19: use petscvec
21: #include <../src/mat/ftn-mod/petscmat.h90>
22: #include <../ftn/mat/petscmat.h90>
23: #include <../ftn/mat/petscmatcoarsen.h90>
24: #include <../ftn/mat/petscpartitioner.h90>
26: ! deprecated functions
28: interface MatDenseGetArrayF90
29: module procedure MatDenseGetArrayF901d, MatDenseGetArrayF902d
30: end interface
32: interface MatDenseRestoreArrayF90
33: module procedure MatDenseRestoreArrayF901d, MatDenseRestoreArrayF902d
34: end interface
36: interface MatDenseGetArrayReadF90
37: module procedure MatDenseGetArrayReadF901d, MatDenseGetArrayReadF902d
38: end interface
40: interface MatDenseRestoreArrayReadF90
41: module procedure MatDenseRestoreArrayWriteF901d, MatDenseRestoreArrayWriteF902d
42: end interface
44: interface MatDenseGetArrayWriteF90
45: module procedure MatDenseGetArrayWriteF901d, MatDenseGetArrayWriteF902d
46: end interface
48: interface MatDenseRestoreArrayWriteF90
49: module procedure MatDenseRestoreArrayWriteF901d, MatDenseRestoreArrayWriteF902d
50: end interface
52: contains
54: #include <../ftn/mat/petscmat.hf90>
55: #include <../ftn/mat/petscmatcoarsen.hf90>
56: #include <../ftn/mat/petscpartitioner.hf90>
58: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
59: !DEC$ ATTRIBUTES DLLEXPORT:: MatDenseGetArrayF901d
60: #endif
61: Subroutine MatDenseGetArrayF901d(v,array,ierr)
62: PetscScalar, pointer :: array(:)
63: PetscErrorCode ierr
64: Mat v
65: call MatDenseGetArray(v,array,ierr)
66: End Subroutine
68: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
69: !DEC$ ATTRIBUTES DLLEXPORT:: MatDenseRestoreArrayF901d
70: #endif
71: Subroutine MatDenseRestoreArrayF901d(v,array,ierr)
72: PetscScalar, pointer :: array(:)
73: PetscErrorCode ierr
74: Mat v
75: call MatDenseRestoreArray(v,array,ierr)
76: End Subroutine
78: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
79: !DEC$ ATTRIBUTES DLLEXPORT:: MatDenseGetArrayReadF901d
80: #endif
81: Subroutine MatDenseGetArrayReadF901d(v,array,ierr)
82: PetscScalar, pointer :: array(:)
83: PetscErrorCode ierr
84: Mat v
85: call MatDenseGetArrayRead(v,array,ierr)
86: End Subroutine
88: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
89: !DEC$ ATTRIBUTES DLLEXPORT:: MatDenseRestoreArrayReadF901d
90: #endif
91: Subroutine MatDenseRestoreArrayReadF901d(v,array,ierr)
92: PetscScalar, pointer :: array(:)
93: PetscErrorCode ierr
94: Mat v
95: call MatDenseRestoreArrayRead(v,array,ierr)
96: End Subroutine
98: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
99: !DEC$ ATTRIBUTES DLLEXPORT:: MatDenseGetArrayWriteF901d
100: #endif
101: Subroutine MatDenseGetArrayWriteF901d(v,array,ierr)
102: PetscScalar, pointer :: array(:)
103: PetscErrorCode ierr
104: Mat v
105: call MatDenseGetArrayWrite(v,array,ierr)
106: End Subroutine
108: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
109: !DEC$ ATTRIBUTES DLLEXPORT:: MatDenseRestoreArrayWriteF901d
110: #endif
111: Subroutine MatDenseRestoreArrayWriteF901d(v,array,ierr)
112: PetscScalar, pointer :: array(:)
113: PetscErrorCode ierr
114: Mat v
115: call MatDenseRestoreArrayWrite(v,array,ierr)
116: End Subroutine
118: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
119: !DEC$ ATTRIBUTES DLLEXPORT:: MatDenseGetArrayF902d
120: #endif
121: Subroutine MatDenseGetArrayF902d(v,array,ierr)
122: PetscScalar, pointer :: array(:,:)
123: PetscErrorCode ierr
124: Mat v
125: call MatDenseGetArray(v,array,ierr)
126: End Subroutine
128: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
129: !DEC$ ATTRIBUTES DLLEXPORT:: MatDenseRestoreArrayF902d
130: #endif
131: Subroutine MatDenseRestoreArrayF902d(v,array,ierr)
132: PetscScalar, pointer :: array(:,:)
133: PetscErrorCode ierr
134: Mat v
135: call MatDenseRestoreArray(v,array,ierr)
136: End Subroutine
138: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
139: !DEC$ ATTRIBUTES DLLEXPORT:: MatDenseGetArrayReadF902d
140: #endif
141: Subroutine MatDenseGetArrayReadF902d(v,array,ierr)
142: PetscScalar, pointer :: array(:,:)
143: PetscErrorCode ierr
144: Mat v
145: call MatDenseGetArrayRead(v,array,ierr)
146: End Subroutine
148: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
149: !DEC$ ATTRIBUTES DLLEXPORT:: MatDenseRestoreArrayReadF90
150: #endif
151: Subroutine MatDenseRestoreArrayReadF902d(v,array,ierr)
152: PetscScalar, pointer :: array(:,:)
153: PetscErrorCode ierr
154: Mat v
155: call MatDenseRestoreArrayRead(v,array,ierr)
156: End Subroutine
158: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
159: !DEC$ ATTRIBUTES DLLEXPORT:: MatDenseGetArrayWriteF90
160: #endif
161: Subroutine MatDenseGetArrayWriteF902d(v,array,ierr)
162: PetscScalar, pointer :: array(:,:)
163: PetscErrorCode ierr
164: Mat v
165: call MatDenseGetArrayWrite(v,array,ierr)
166: End Subroutine
168: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
169: !DEC$ ATTRIBUTES DLLEXPORT:: MatDenseRestoreArrayWriteF90
170: #endif
171: Subroutine MatDenseRestoreArrayWriteF902d(v,array,ierr)
172: PetscScalar, pointer :: array(:,:)
173: PetscErrorCode ierr
174: Mat v
175: call MatDenseRestoreArrayWrite(v,array,ierr)
176: End Subroutine
178: end module