1interface 2 subroutine DMDARestoreNeighbors(a, b, z) 3 use, intrinsic :: ISO_C_binding 4 import tDM 5 DM a 6 PetscMPIInt, pointer :: b(:) 7 PetscErrorCode z 8 end subroutine 9 10 subroutine DMDARestoreOwnershipRanges(a, lx, ly, lz, z) 11 use, intrinsic :: ISO_C_binding 12 import tDM 13 DM a 14 PetscInt, pointer :: lx(:), ly(:), lz(:) 15 PetscErrorCode z 16 end subroutine 17end interface 18 19#if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES) 20!DEC$ ATTRIBUTES DLLEXPORT::DMDARestoreNeighbors 21!DEC$ ATTRIBUTES DLLEXPORT::DMDARestoreOwnershipRanges 22#endif 23 24interface DMDAVecGetArray 25 subroutine DMDAVecGetArrayF901(da1, v, d1, ierr) 26 use, intrinsic :: ISO_C_binding 27 import tDM, tVec 28 DM da1 29 Vec v 30 PetscScalar, pointer :: d1(:) 31 PetscErrorCode ierr 32 end subroutine 33 subroutine DMDAVecGetArrayF902(da1, v, d1, ierr) 34 use, intrinsic :: ISO_C_binding 35 import tDM, tVec 36 DM da1 37 Vec v 38 PetscScalar, pointer :: d1(:, :) 39 PetscErrorCode ierr 40 end subroutine 41 subroutine DMDAVecGetArrayF903(da1, v, d1, ierr) 42 use, intrinsic :: ISO_C_binding 43 import tDM, tVec 44 DM da1 45 Vec v 46 PetscScalar, pointer :: d1(:, :, :) 47 PetscErrorCode ierr 48 end subroutine 49 subroutine DMDAVecGetArrayF904(da1, v, d1, ierr) 50 use, intrinsic :: ISO_C_binding 51 import tDM, tVec 52 DM da1 53 Vec v 54 PetscScalar, pointer :: d1(:, :, :, :) 55 PetscErrorCode ierr 56 end subroutine 57end interface DMDAVecGetArray 58 59interface DMDAVecRestoreArray 60 subroutine DMDAVecRestoreArrayF901(da1, v, d1, ierr) 61 use, intrinsic :: ISO_C_binding 62 import tDM, tVec 63 DM da1 64 Vec v 65 PetscScalar, pointer :: d1(:) 66 PetscErrorCode ierr 67 end subroutine 68 subroutine DMDAVecRestoreArrayF902(da1, v, d1, ierr) 69 use, intrinsic :: ISO_C_binding 70 import tDM, tVec 71 DM da1 72 Vec v 73 PetscScalar, pointer :: d1(:, :) 74 PetscErrorCode ierr 75 end subroutine 76 subroutine DMDAVecRestoreArrayF903(da1, v, d1, ierr) 77 use, intrinsic :: ISO_C_binding 78 import tDM, tVec 79 DM da1 80 Vec v 81 PetscScalar, pointer :: d1(:, :, :) 82 PetscErrorCode ierr 83 end subroutine 84 subroutine DMDAVecRestoreArrayF904(da1, v, d1, ierr) 85 use, intrinsic :: ISO_C_binding 86 import tDM, tVec 87 DM da1 88 Vec v 89 PetscScalar, pointer :: d1(:, :, :, :) 90 PetscErrorCode ierr 91 end subroutine 92end interface DMDAVecRestoreArray 93 94interface DMDAVecGetArrayRead 95 subroutine DMDAVecGetArrayReadF901(da1, v, d1, ierr) 96 use, intrinsic :: ISO_C_binding 97 import tDM, tVec 98 DM da1 99 Vec v 100 PetscScalar, pointer :: d1(:) 101 PetscErrorCode ierr 102 end subroutine 103 subroutine DMDAVecGetArrayReadF902(da1, v, d1, ierr) 104 use, intrinsic :: ISO_C_binding 105 import tDM, tVec 106 DM da1 107 Vec v 108 PetscScalar, pointer :: d1(:, :) 109 PetscErrorCode ierr 110 end subroutine 111 subroutine DMDAVecGetArrayReadF903(da1, v, d1, ierr) 112 use, intrinsic :: ISO_C_binding 113 import tDM, tVec 114 DM da1 115 Vec v 116 PetscScalar, pointer :: d1(:, :, :) 117 PetscErrorCode ierr 118 end subroutine 119 subroutine DMDAVecGetArrayReadF904(da1, v, d1, ierr) 120 use, intrinsic :: ISO_C_binding 121 import tDM, tVec 122 DM da1 123 Vec v 124 PetscScalar, pointer :: d1(:, :, :, :) 125 PetscErrorCode ierr 126 end subroutine 127end interface DMDAVecGetArrayRead 128 129interface DMDAVecRestoreArrayRead 130 subroutine DMDAVecRestoreArrayReadF901(da1, v, d1, ierr) 131 use, intrinsic :: ISO_C_binding 132 import tDM, tVec 133 DM da1 134 Vec v 135 PetscScalar, pointer :: d1(:) 136 PetscErrorCode ierr 137 end subroutine 138 subroutine DMDAVecRestoreArrayReadF902(da1, v, d1, ierr) 139 use, intrinsic :: ISO_C_binding 140 import tDM, tVec 141 DM da1 142 Vec v 143 PetscScalar, pointer :: d1(:, :) 144 PetscErrorCode ierr 145 end subroutine 146 subroutine DMDAVecRestoreArrayReadF903(da1, v, d1, ierr) 147 use, intrinsic :: ISO_C_binding 148 import tDM, tVec 149 DM da1 150 Vec v 151 PetscScalar, pointer :: d1(:, :, :) 152 PetscErrorCode ierr 153 end subroutine 154 subroutine DMDAVecRestoreArrayReadF904(da1, v, d1, ierr) 155 use, intrinsic :: ISO_C_binding 156 import tDM, tVec 157 DM da1 158 Vec v 159 PetscScalar, pointer :: d1(:, :, :, :) 160 PetscErrorCode ierr 161 end subroutine 162end interface DMDAVecRestoreArrayRead 163