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