xref: /petsc/src/dm/impls/da/ftn-custom/zdasubf.c (revision b0dcfd164860a975c76f90dabf1036901aab1c4e)
1 #include <petsc/private/ftnimpl.h>
2 #include <petscdmda.h>
3 
4 #if defined(PETSC_HAVE_FORTRAN_CAPS)
5   #define dmdagetprocessorsubset_  DMDAGETPROCESSORSUBSET
6   #define dmdagetprocessorsubsets_ DMDAGETPROCESSORSUBSETS
7 #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE)
8   #define dmdagetprocessorsubset_  dmdagetprocessorsubset
9   #define dmdagetprocessorsubsets_ dmdagetprocessorsubsets
10 #endif
11 
dmdagetprocessorsubset_(DM * da,DMDirection * dir,PetscInt * gp,MPI_Fint * fcomm,int * __ierr)12 PETSC_EXTERN void dmdagetprocessorsubset_(DM *da, DMDirection *dir, PetscInt *gp, MPI_Fint *fcomm, int *__ierr)
13 {
14   MPI_Comm comm;
15   *__ierr = DMDAGetProcessorSubset(*da, *dir, *gp, &comm);
16   *fcomm  = MPI_Comm_c2f(comm);
17 }
dmdagetprocessorsubsets_(DM * da,DMDirection * dir,MPI_Fint * subfcomm,int * __ierr)18 PETSC_EXTERN void dmdagetprocessorsubsets_(DM *da, DMDirection *dir, MPI_Fint *subfcomm, int *__ierr)
19 {
20   MPI_Comm subcomm;
21   *__ierr   = DMDAGetProcessorSubsets(*da, *dir, &subcomm);
22   *subfcomm = MPI_Comm_c2f(subcomm);
23 }
24