1 #include <petsc/private/fortranimpl.h> 2 #include <petscdm.h> 3 #include <petscviewer.h> 4 5 #if defined(PETSC_HAVE_FORTRAN_CAPS) 6 #define dmcreatesuperdm_ DMCREATESUPERDM 7 #define dmcreatesubdm_ DMCREATESUBDM 8 #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) 9 #define dmcreatesuperdm_ dmreatesuperdm 10 #define dmcreatesubdm_ dmreatesubdm 11 #endif 12 13 PETSC_EXTERN void dmcreatesuperdm_(DM dms[], PetscInt *len, IS ***is, DM *superdm, int *ierr) 14 { 15 *ierr = DMCreateSuperDM(dms, *len, *is, superdm); 16 } 17 18 PETSC_EXTERN void dmcreatesubdm_(DM *dm, PetscInt *numFields, PetscInt fields[], IS *is, DM *subdm, int *ierr) 19 { 20 CHKFORTRANNULLOBJECT(is); 21 *ierr = DMCreateSubDM(*dm, *numFields, fields, is, subdm); 22 } 23