xref: /petsc/src/mat/impls/adj/mpi/ftn-custom/zmpiadjf.c (revision c9df829d41ec13fc316a62eed77ff350dff6e12a)
1 #include <../src/mat/impls/adj/mpi/mpiadj.h>
2 #include <petsc/private/ftnimpl.h>
3 #include <petscmat.h>
4 
5 #if defined(PETSC_HAVE_FORTRAN_CAPS)
6   #define matcreatempiadj_ MATCREATEMPIADJ
7 #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE)
8   #define matcreatempiadj_ matcreatempiadj
9 #endif
10 
matcreatempiadj_(MPI_Comm * comm,PetscInt * m,PetscInt * n,PetscInt * i,PetscInt * j,PetscInt * values,Mat * A,PetscErrorCode * ierr)11 PETSC_EXTERN void matcreatempiadj_(MPI_Comm *comm, PetscInt *m, PetscInt *n, PetscInt *i, PetscInt *j, PetscInt *values, Mat *A, PetscErrorCode *ierr)
12 {
13   Mat_MPIAdj *adj;
14 
15   CHKFORTRANNULLINTEGER(values);
16   *ierr        = MatCreateMPIAdj(MPI_Comm_f2c(*(MPI_Fint *)&*comm), *m, *n, i, j, values, A);
17   adj          = (Mat_MPIAdj *)(*A)->data;
18   adj->freeaij = PETSC_FALSE;
19 }
20