xref: /petsc/src/sys/ftn-mod/petscsys.h90 (revision fe66ebcc023cb303106674d426ee542bea707d38)
16dd63270SBarry Smith      Interface
26dd63270SBarry Smith       Subroutine PetscPrintf(m,c,ierr)
3*fe66ebccSMartin Diehl      use, intrinsic :: ISO_C_binding
46dd63270SBarry Smith          MPI_Comm :: m
56dd63270SBarry Smith          character(len=*) :: c
66dd63270SBarry Smith          PetscErrorCode :: ierr
76dd63270SBarry Smith       End Subroutine
86dd63270SBarry Smith
96dd63270SBarry Smith#if defined(PETSC_HAVE_FORTRAN_FREE_LINE_LENGTH_NONE)
106dd63270SBarry Smith      subroutine PetscErrorf(ierr,line,file)
11*fe66ebccSMartin Diehl      use, intrinsic :: ISO_C_binding
126dd63270SBarry Smith       PetscErrorCode, intent(in) :: ierr
136dd63270SBarry Smith       integer, intent(in) ::  line
146dd63270SBarry Smith       character(*) file
156dd63270SBarry Smith      end Subroutine PetscErrorf
166dd63270SBarry Smith
176dd63270SBarry Smith      subroutine PetscErrorMPI(ierr,line,file)
18*fe66ebccSMartin Diehl      use, intrinsic :: ISO_C_binding
196dd63270SBarry Smith       PetscErrorCode, intent(inout) :: ierr
206dd63270SBarry Smith       integer, intent(in) ::  line
216dd63270SBarry Smith       character(*) file
226dd63270SBarry Smith      end Subroutine PetscErrorMPI
236dd63270SBarry Smith#else
246dd63270SBarry Smith      subroutine PetscErrorf(ierr)
25*fe66ebccSMartin Diehl      use, intrinsic :: ISO_C_binding
266dd63270SBarry Smith       PetscErrorCode, intent(in) :: ierr
276dd63270SBarry Smith      end Subroutine PetscErrorf
286dd63270SBarry Smith
296dd63270SBarry Smith      subroutine PetscErrorMPI(ierr)
30*fe66ebccSMartin Diehl      use, intrinsic :: ISO_C_binding
316dd63270SBarry Smith       PetscErrorCode, intent(inout) :: ierr
326dd63270SBarry Smith      end Subroutine PetscErrorMPI
336dd63270SBarry Smith#endif
346dd63270SBarry Smith
356dd63270SBarry Smith      subroutine MPIU_abort(comm,ierr)
36*fe66ebccSMartin Diehl      use, intrinsic :: ISO_C_binding
376dd63270SBarry Smith      MPI_Comm,intent(in) ::  comm
386dd63270SBarry Smith      PetscErrorCode,intent(in) ::  ierr
396dd63270SBarry Smith      end subroutine
406dd63270SBarry Smith
416dd63270SBarry Smith      subroutine PetscViewerASCIIStdoutSetFileUnit(unit,z)
42*fe66ebccSMartin Diehl      use, intrinsic :: ISO_C_binding
436dd63270SBarry Smith        integer4 unit
446dd63270SBarry Smith        PetscErrorCode,intent(out) :: z
456dd63270SBarry Smith      end subroutine
466dd63270SBarry Smith
476dd63270SBarry Smith      subroutine PetscLogEventBegin(event,ierr)
48*fe66ebccSMartin Diehl      use, intrinsic :: ISO_C_binding
496dd63270SBarry Smith        PetscLogEvent, intent(in) :: event
506dd63270SBarry Smith        PetscErrorCode, intent(out) :: ierr
516dd63270SBarry Smith      end subroutine PetscLogEventBegin
526dd63270SBarry Smith
536dd63270SBarry Smith      subroutine PetscLogEventEnd(event,ierr)
54*fe66ebccSMartin Diehl      use, intrinsic :: ISO_C_binding
556dd63270SBarry Smith        PetscLogEvent, intent(in) :: event
566dd63270SBarry Smith        PetscErrorCode, intent(out) :: ierr
576dd63270SBarry Smith      end subroutine PetscLogEventEnd
586dd63270SBarry Smith      end Interface
596dd63270SBarry Smith
606dd63270SBarry Smith      Interface
616dd63270SBarry Smith      function PetscASend(c, d) bind(c,name='PetscASend') result(i)
626dd63270SBarry Smith          use,intrinsic :: iso_c_binding
636dd63270SBarry Smith          implicit none
646dd63270SBarry Smith          integer(c_int), value :: c
656dd63270SBarry Smith          integer(c_int), value :: d
666dd63270SBarry Smith          integer(c_int)        :: i
676dd63270SBarry Smith      end function PetscASend
686dd63270SBarry Smith
696dd63270SBarry Smith      function PetscARecv(c, d) bind(c,name='PetscARecv') result(i)
706dd63270SBarry Smith          use,intrinsic :: iso_c_binding
716dd63270SBarry Smith          implicit none
726dd63270SBarry Smith          integer(c_int), value :: c
736dd63270SBarry Smith          integer(c_int), value :: d
746dd63270SBarry Smith          integer(c_int)        :: i
756dd63270SBarry Smith      end function PetscARecv
766dd63270SBarry Smith
776dd63270SBarry Smith      function PetscAReduce() bind(c,name='PetscAReduce') result(i)
786dd63270SBarry Smith          use,intrinsic :: iso_c_binding
796dd63270SBarry Smith          implicit none
806dd63270SBarry Smith          integer(c_int) :: i
816dd63270SBarry Smith      end function PetscAReduce
826dd63270SBarry Smith      end Interface
836dd63270SBarry Smith
846dd63270SBarry Smith      Interface
8511105114SMartin Diehl        Subroutine PetscIntArray1dDestroy(a,ierr)
86*fe66ebccSMartin Diehl      use, intrinsic :: ISO_C_binding
876dd63270SBarry Smith          PetscInt, Pointer :: a(:)
886dd63270SBarry Smith          PetscErrorCode    :: ierr
896dd63270SBarry Smith        End Subroutine
906dd63270SBarry Smith      End Interface
916dd63270SBarry Smith
926dd63270SBarry Smith      Interface PetscShmgetAllocateArrayScalar
936dd63270SBarry Smith        Subroutine PetscShmgetAllocateArrayScalar(start, len, d1, ierr)
94*fe66ebccSMartin Diehl      use, intrinsic :: ISO_C_binding
956dd63270SBarry Smith          PetscInt :: start, len
966dd63270SBarry Smith          PetscScalar, pointer :: d1(:)
976dd63270SBarry Smith          PetscErrorCode ierr
986dd63270SBarry Smith        End Subroutine
996dd63270SBarry Smith      End Interface
1006dd63270SBarry Smith
1016dd63270SBarry Smith      Interface PetscShmgetDeallocateArrayScalar
1026dd63270SBarry Smith        Subroutine PetscShmgetDeallocateArrayScalar(d1, ierr)
103*fe66ebccSMartin Diehl      use, intrinsic :: ISO_C_binding
1046dd63270SBarry Smith          PetscScalar, pointer :: d1(:)
1056dd63270SBarry Smith          PetscErrorCode ierr
1066dd63270SBarry Smith        End Subroutine
1076dd63270SBarry Smith      End Interface
1086dd63270SBarry Smith
1096dd63270SBarry Smith      Interface PetscShmgetAllocateArrayInt
1106dd63270SBarry Smith        Subroutine PetscShmgetAllocateArrayInt(start, len, d1, ierr)
111*fe66ebccSMartin Diehl      use, intrinsic :: ISO_C_binding
1126dd63270SBarry Smith          PetscInt :: start, len
1136dd63270SBarry Smith          PetscInt, pointer :: d1(:)
1146dd63270SBarry Smith          PetscErrorCode ierr
1156dd63270SBarry Smith        End Subroutine
1166dd63270SBarry Smith      End Interface
1176dd63270SBarry Smith
1186dd63270SBarry Smith      Interface PetscShmgetDeallocateArrayInt
1196dd63270SBarry Smith        Subroutine PetscShmgetDeallocateArrayInt(d1, ierr)
120*fe66ebccSMartin Diehl      use, intrinsic :: ISO_C_binding
1216dd63270SBarry Smith          PetscInt, pointer :: d1(:)
1226dd63270SBarry Smith          PetscErrorCode ierr
1236dd63270SBarry Smith        End Subroutine
1246dd63270SBarry Smith      End Interface
125