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