1 
2 #include <petsc/private/fortranimpl.h>
3 #include <petscdmda.h>
4 
5 #if defined(PETSC_HAVE_FORTRAN_CAPS)
6 #define dmdasetfieldname_              DMDASETFIELDNAME
7 #define dmdagetfieldname_              DMDAGETFIELDNAME
8 #define dmdagetcorners_                DMDAGETCORNERS
9 #define dmdagetcorners000000_          DMDAGETCORNERS000000
10 #define dmdagetcorners001001_          DMDAGETCORNERS001001
11 #define dmdagetcorners011011_          DMDAGETCORNERS011011
12 #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE)
13 #define dmdasetfieldname_              dmdasetfieldname
14 #define dmdagetfieldname_              dmdagetfieldname
15 #define dmdagetcorners_                dmdagetcorners
16 #define dmdagetcorners000000_          dmdagetcorners000000
17 #define dmdagetcorners001001_          dmdagetcorners001001
18 #define dmdagetcorners011011_          dmdagetcorners011011
19 #endif
20 
21 
dmdasetfieldname_(DM * da,PetscInt * nf,char * name,PetscErrorCode * ierr,PETSC_FORTRAN_CHARLEN_T len)22 PETSC_EXTERN void dmdasetfieldname_(DM *da,PetscInt *nf,char* name,PetscErrorCode *ierr,PETSC_FORTRAN_CHARLEN_T len)
23 {
24   char *t;
25   FIXCHAR(name,len,t);
26   *ierr = DMDASetFieldName(*da,*nf,t);if (*ierr) return;
27   FREECHAR(name,t);
28 }
29 
dmdagetfieldname_(DM * da,PetscInt * nf,char * name,PetscErrorCode * ierr,PETSC_FORTRAN_CHARLEN_T len)30 PETSC_EXTERN void dmdagetfieldname_(DM *da,PetscInt *nf,char* name,PetscErrorCode *ierr,PETSC_FORTRAN_CHARLEN_T len)
31 {
32   const char *tname;
33 
34   *ierr = DMDAGetFieldName(*da,*nf,&tname);if (*ierr) return;
35   *ierr = PetscStrncpy(name,tname,len);if (*ierr) return;
36   FIXRETURNCHAR(PETSC_TRUE,name,len);
37 }
38 
dmdagetcorners_(DM * da,PetscInt * x,PetscInt * y,PetscInt * z,PetscInt * m,PetscInt * n,PetscInt * p,int * ierr)39 PETSC_EXTERN void  dmdagetcorners_(DM *da,PetscInt *x,PetscInt *y,PetscInt *z,PetscInt *m,PetscInt *n,PetscInt *p, int *ierr)
40 {
41   CHKFORTRANNULLINTEGER(y);
42   CHKFORTRANNULLINTEGER(z);
43   CHKFORTRANNULLINTEGER(n);
44   CHKFORTRANNULLINTEGER(p);
45 
46   *ierr = DMDAGetCorners(*da,x,y,z,m,n,p);
47 }
48 
dmdagetcorners000000_(DM * da,PetscInt * x,PetscInt * y,PetscInt * z,PetscInt * m,PetscInt * n,PetscInt * p,int * ierr)49 PETSC_EXTERN void  dmdagetcorners000000_(DM *da,PetscInt *x,PetscInt *y,PetscInt *z,PetscInt *m,PetscInt *n,PetscInt *p, int *ierr)
50 {
51   dmdagetcorners_(da,x,y,z,m,n,p,ierr);
52 }
53 
dmdagetcorners001001_(DM * da,PetscInt * x,PetscInt * y,PetscInt * z,PetscInt * m,PetscInt * n,PetscInt * p,int * ierr)54 PETSC_EXTERN void  dmdagetcorners001001_(DM *da,PetscInt *x,PetscInt *y,PetscInt *z,PetscInt *m,PetscInt *n,PetscInt *p, int *ierr)
55 {
56   dmdagetcorners_(da,x,y,z,m,n,p,ierr);
57 }
58 
dmdagetcorners011011_(DM * da,PetscInt * x,PetscInt * y,PetscInt * z,PetscInt * m,PetscInt * n,PetscInt * p,int * ierr)59 PETSC_EXTERN void  dmdagetcorners011011_(DM *da,PetscInt *x,PetscInt *y,PetscInt *z,PetscInt *m,PetscInt *n,PetscInt *p, int *ierr)
60 {
61   dmdagetcorners_(da,x,y,z,m,n,p,ierr);
62 }
63