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