1#if defined(PETSC_HAVE_FORTRAN_TYPE_STAR) 2 Interface 3 subroutine PetscSFBcastBegin(sf,unit,rarray,larray,op,ierr) 4 import tPetscSF 5 PetscSF :: sf 6 PetscMPIInt :: unit,op 7 type(*) :: rarray(:) 8 type(*) :: larray(:) 9 PetscErrorCode :: ierr 10 end Subroutine PetscSFBcastBegin 11 12 subroutine PetscSFBcastEnd(sf,unit,rarray,larray,op,ierr) 13 import tPetscSF 14 PetscSF :: sf 15 PetscMPIInt :: unit,op 16 type(*) :: rarray(:) 17 type(*) :: larray(:) 18 PetscErrorCode :: ierr 19 end Subroutine PetscSFBcastEnd 20 21 subroutine PetscSFReduceBegin(sf,unit,larray,rarray,op,ierr) 22 import tPetscSF 23 PetscSF :: sf 24 PetscMPIInt :: unit,op 25 type(*) :: larray(:) 26 type(*) :: rarray(:) 27 PetscErrorCode :: ierr 28 end Subroutine PetscSFReduceBegin 29 30 subroutine PetscSFReduceEnd(sf,unit,larray,rarray,op,ierr) 31 import tPetscSF 32 PetscSF :: sf 33 PetscMPIInt :: unit,op 34 type(*) :: larray(:) 35 type(*) :: rarray(:) 36 PetscErrorCode :: ierr 37 end Subroutine PetscSFReduceEnd 38 end Interface 39#endif 40 41 interface 42 subroutine VecRestoreOwnershipRanges(v, ptr, ierr) 43 import tVec 44 Vec :: v 45 PetscInt, pointer :: ptr(:) 46 PetscErrorCode, intent(out) :: ierr 47 end subroutine VecRestoreOwnershipRanges 48 49 subroutine PetscSFRestoreGraph(sf,nroots,nleaves,ilocal,iremote,ierr) 50 import tPetscSF,sPetscSFNode 51 PetscSF :: sf 52 PetscInt :: nroots,nleaves 53 PetscInt, pointer :: ilocal(:) 54 type(sPetscSFNode), pointer :: iremote(:) 55 PetscErrorCode :: ierr 56 end Subroutine PetscSFRestoreGraph 57 58 Subroutine VecRestoreValuesSection(v,s,p,va,ierr) 59 import tVec,tPetscSection 60 PetscScalar, pointer :: va(:) 61 PetscErrorCode ierr 62 Vec v 63 PetscSection s 64 PetscInt p 65 End Subroutine 66 End Interface 67