xref: /petsc/src/mat/ftn-mod/petscmat.h90 (revision 02c639afa00e507649aa5bac9084590bf17c181c)
1*02c639afSMartin Diehl      interface
2*02c639afSMartin Diehl        subroutine MatFDColoringRestorePerturbedColumns(i, len, array, ierr)
3fe66ebccSMartin Diehl          use, intrinsic :: ISO_C_binding
46dd63270SBarry Smith          import tMatFDColoring
56dd63270SBarry Smith          PetscInt, pointer :: array(:)
66dd63270SBarry Smith          PetscInt len
76dd63270SBarry Smith          PetscErrorCode ierr
86dd63270SBarry Smith          MatFDColoring i
9*02c639afSMartin Diehl        end subroutine
10*02c639afSMartin Diehl      end interface
116dd63270SBarry Smith
126dd63270SBarry Smith      interface MatDenseGetArray
13*02c639afSMartin Diehl        subroutine MatDenseGetArray1d(v, array, ierr)
14fe66ebccSMartin Diehl          use, intrinsic :: ISO_C_binding
156dd63270SBarry Smith          import tMat
166dd63270SBarry Smith          PetscScalar, pointer :: array(:)
176dd63270SBarry Smith          PetscErrorCode ierr
186dd63270SBarry Smith          Mat v
19*02c639afSMartin Diehl        end subroutine
20*02c639afSMartin Diehl        subroutine MatDenseGetArray2d(v, array, ierr)
21fe66ebccSMartin Diehl          use, intrinsic :: ISO_C_binding
226dd63270SBarry Smith          import tMat
236dd63270SBarry Smith          PetscScalar, pointer :: array(:, :)
246dd63270SBarry Smith          PetscErrorCode ierr
256dd63270SBarry Smith          Mat v
26*02c639afSMartin Diehl        end subroutine
276dd63270SBarry Smith      end interface
286dd63270SBarry Smith
296dd63270SBarry Smith      interface MatDenseRestoreArray
30*02c639afSMartin Diehl        subroutine MatDenseRestoreArray1d(v, array, ierr)
31fe66ebccSMartin Diehl          use, intrinsic :: ISO_C_binding
326dd63270SBarry Smith          import tMat
336dd63270SBarry Smith          PetscScalar, pointer :: array(:)
346dd63270SBarry Smith          PetscErrorCode ierr
356dd63270SBarry Smith          Mat v
36*02c639afSMartin Diehl        end subroutine
37*02c639afSMartin Diehl        subroutine MatDenseRestoreArray2d(v, array, ierr)
38fe66ebccSMartin Diehl          use, intrinsic :: ISO_C_binding
396dd63270SBarry Smith          import tMat
406dd63270SBarry Smith          PetscScalar, pointer :: array(:, :)
416dd63270SBarry Smith          PetscErrorCode ierr
426dd63270SBarry Smith          Mat v
43*02c639afSMartin Diehl        end subroutine
446dd63270SBarry Smith      end interface
456dd63270SBarry Smith
466dd63270SBarry Smith      interface MatDenseGetArrayRead
47*02c639afSMartin Diehl        subroutine MatDenseGetArrayRead1d(v, array, ierr)
48fe66ebccSMartin Diehl          use, intrinsic :: ISO_C_binding
496dd63270SBarry Smith          import tMat
506dd63270SBarry Smith          PetscScalar, pointer :: array(:)
516dd63270SBarry Smith          PetscErrorCode ierr
526dd63270SBarry Smith          Mat v
53*02c639afSMartin Diehl        end subroutine
54*02c639afSMartin Diehl        subroutine MatDenseGetArrayRead2d(v, array, ierr)
55fe66ebccSMartin Diehl          use, intrinsic :: ISO_C_binding
566dd63270SBarry Smith          import tMat
576dd63270SBarry Smith          PetscScalar, pointer :: array(:, :)
586dd63270SBarry Smith          PetscErrorCode ierr
596dd63270SBarry Smith          Mat v
60*02c639afSMartin Diehl        end subroutine
616dd63270SBarry Smith      end interface
626dd63270SBarry Smith
636dd63270SBarry Smith      interface MatDenseRestoreArrayRead
64*02c639afSMartin Diehl        subroutine MatDenseRestoreArrayRead1d(v, array, ierr)
65fe66ebccSMartin Diehl          use, intrinsic :: ISO_C_binding
666dd63270SBarry Smith          import tMat
676dd63270SBarry Smith          PetscScalar, pointer :: array(:)
686dd63270SBarry Smith          PetscErrorCode ierr
696dd63270SBarry Smith          Mat v
70*02c639afSMartin Diehl        end subroutine
71*02c639afSMartin Diehl        subroutine MatDenseRestoreArrayRead2d(v, array, ierr)
72fe66ebccSMartin Diehl          use, intrinsic :: ISO_C_binding
736dd63270SBarry Smith          import tMat
746dd63270SBarry Smith          PetscScalar, pointer :: array(:, :)
756dd63270SBarry Smith          PetscErrorCode ierr
766dd63270SBarry Smith          Mat v
77*02c639afSMartin Diehl        end subroutine
786dd63270SBarry Smith      end interface
796dd63270SBarry Smith
806dd63270SBarry Smith      interface MatDenseGetArrayWrite
81*02c639afSMartin Diehl        subroutine MatDenseGetArrayWrite1d(v, array, ierr)
82fe66ebccSMartin Diehl          use, intrinsic :: ISO_C_binding
836dd63270SBarry Smith          import tMat
846dd63270SBarry Smith          PetscScalar, pointer :: array(:)
856dd63270SBarry Smith          PetscErrorCode ierr
866dd63270SBarry Smith          Mat v
87*02c639afSMartin Diehl        end subroutine
88*02c639afSMartin Diehl        subroutine MatDenseGetArrayWrite2d(v, array, ierr)
89fe66ebccSMartin Diehl          use, intrinsic :: ISO_C_binding
906dd63270SBarry Smith          import tMat
916dd63270SBarry Smith          PetscScalar, pointer :: array(:, :)
926dd63270SBarry Smith          PetscErrorCode ierr
936dd63270SBarry Smith          Mat v
94*02c639afSMartin Diehl        end subroutine
956dd63270SBarry Smith      end interface
966dd63270SBarry Smith
976dd63270SBarry Smith      interface MatDenseRestoreArrayWrite
98*02c639afSMartin Diehl        subroutine MatDenseRestoreArrayWrite1d(v, array, ierr)
99fe66ebccSMartin Diehl          use, intrinsic :: ISO_C_binding
1006dd63270SBarry Smith          import tMat
1016dd63270SBarry Smith          PetscScalar, pointer :: array(:)
1026dd63270SBarry Smith          PetscErrorCode ierr
1036dd63270SBarry Smith          Mat v
104*02c639afSMartin Diehl        end subroutine
105*02c639afSMartin Diehl        subroutine MatDenseRestoreArrayWrite2d(v, array, ierr)
106fe66ebccSMartin Diehl          use, intrinsic :: ISO_C_binding
1076dd63270SBarry Smith          import tMat
1086dd63270SBarry Smith          PetscScalar, pointer :: array(:, :)
1096dd63270SBarry Smith          PetscErrorCode ierr
1106dd63270SBarry Smith          Mat v
111*02c639afSMartin Diehl        end subroutine
1126dd63270SBarry Smith      end interface
1138c31b630SBarry Smith
1148c31b630SBarry Smith      interface
1158c31b630SBarry Smith        subroutine MatNullSpaceRestoreVecs(a, b, c, d, z)
1168c31b630SBarry Smith          use, intrinsic :: ISO_C_binding
1178c31b630SBarry Smith          import tMatNullSpace, tVec
1188c31b630SBarry Smith          MatNullSpace :: a
1198c31b630SBarry Smith          PetscBool :: b
1208c31b630SBarry Smith          PetscInt :: c
1218c31b630SBarry Smith          Vec, pointer :: d(:)
1228c31b630SBarry Smith          PetscErrorCode z
1238c31b630SBarry Smith        end subroutine
1248c31b630SBarry Smith      end interface
1258c31b630SBarry Smith#if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
1268c31b630SBarry Smith!DEC$ ATTRIBUTES DLLEXPORT::MatNullSpaceRestoreVecs
1278c31b630SBarry Smith#endif
128