1 2 Interface 3 Subroutine MatFDColoringRestorePerturbedColumns(i, len, array, ierr) 4 use, intrinsic :: ISO_C_binding 5 import tMatFDColoring 6 PetscInt, pointer :: array(:) 7 PetscInt len 8 PetscErrorCode ierr 9 MatFDColoring i 10 End Subroutine 11 End Interface 12 13 interface MatDenseGetArray 14 Subroutine MatDenseGetArray1d(v, array, ierr) 15 use, intrinsic :: ISO_C_binding 16 import tMat 17 PetscScalar, pointer :: array(:) 18 PetscErrorCode ierr 19 Mat v 20 End Subroutine 21 Subroutine MatDenseGetArray2d(v, array, ierr) 22 use, intrinsic :: ISO_C_binding 23 import tMat 24 PetscScalar, pointer :: array(:, :) 25 PetscErrorCode ierr 26 Mat v 27 End Subroutine 28 end interface 29 30 interface MatDenseRestoreArray 31 Subroutine MatDenseRestoreArray1d(v, array, ierr) 32 use, intrinsic :: ISO_C_binding 33 import tMat 34 PetscScalar, pointer :: array(:) 35 PetscErrorCode ierr 36 Mat v 37 End Subroutine 38 Subroutine MatDenseRestoreArray2d(v, array, ierr) 39 use, intrinsic :: ISO_C_binding 40 import tMat 41 PetscScalar, pointer :: array(:, :) 42 PetscErrorCode ierr 43 Mat v 44 End Subroutine 45 end interface 46 47 interface MatDenseGetArrayRead 48 Subroutine MatDenseGetArrayRead1d(v, array, ierr) 49 use, intrinsic :: ISO_C_binding 50 import tMat 51 PetscScalar, pointer :: array(:) 52 PetscErrorCode ierr 53 Mat v 54 End Subroutine 55 Subroutine MatDenseGetArrayRead2d(v, array, ierr) 56 use, intrinsic :: ISO_C_binding 57 import tMat 58 PetscScalar, pointer :: array(:, :) 59 PetscErrorCode ierr 60 Mat v 61 End Subroutine 62 end interface 63 64 interface MatDenseRestoreArrayRead 65 Subroutine MatDenseRestoreArrayRead1d(v, array, ierr) 66 use, intrinsic :: ISO_C_binding 67 import tMat 68 PetscScalar, pointer :: array(:) 69 PetscErrorCode ierr 70 Mat v 71 End Subroutine 72 Subroutine MatDenseRestoreArrayRead2d(v, array, ierr) 73 use, intrinsic :: ISO_C_binding 74 import tMat 75 PetscScalar, pointer :: array(:, :) 76 PetscErrorCode ierr 77 Mat v 78 End Subroutine 79 end interface 80 81 interface MatDenseGetArrayWrite 82 Subroutine MatDenseGetArrayWrite1d(v, array, ierr) 83 use, intrinsic :: ISO_C_binding 84 import tMat 85 PetscScalar, pointer :: array(:) 86 PetscErrorCode ierr 87 Mat v 88 End Subroutine 89 Subroutine MatDenseGetArrayWrite2d(v, array, ierr) 90 use, intrinsic :: ISO_C_binding 91 import tMat 92 PetscScalar, pointer :: array(:, :) 93 PetscErrorCode ierr 94 Mat v 95 End Subroutine 96 end interface 97 98 interface MatDenseRestoreArrayWrite 99 Subroutine MatDenseRestoreArrayWrite1d(v, array, ierr) 100 use, intrinsic :: ISO_C_binding 101 import tMat 102 PetscScalar, pointer :: array(:) 103 PetscErrorCode ierr 104 Mat v 105 End Subroutine 106 Subroutine MatDenseRestoreArrayWrite2d(v, array, ierr) 107 use, intrinsic :: ISO_C_binding 108 import tMat 109 PetscScalar, pointer :: array(:, :) 110 PetscErrorCode ierr 111 Mat v 112 End Subroutine 113 end interface 114 115 interface 116 subroutine MatNullSpaceRestoreVecs(a, b, c, d, z) 117 use, intrinsic :: ISO_C_binding 118 import tMatNullSpace, tVec 119 MatNullSpace :: a 120 PetscBool :: b 121 PetscInt :: c 122 Vec, pointer :: d(:) 123 PetscErrorCode z 124 end subroutine 125 end interface 126#if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES) 127!DEC$ ATTRIBUTES DLLEXPORT::MatNullSpaceRestoreVecs 128#endif 129