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 matpartitioningsetvertexweights_ MATPARTITIONINGSETVERTEXWEIGHTS 7 #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) 8 #define matpartitioningsetvertexweights_ matpartitioningsetvertexweights 9 #endif 10 11 PETSC_EXTERN void matpartitioningsetvertexweights_NOTODAY(MatPartitioning *part, const PetscInt weights[], PetscErrorCode *ierr) 12 { 13 PetscInt len; 14 PetscInt *array; 15 *ierr = MatGetLocalSize((*part)->adj, &len, NULL); 16 if (*ierr) return; 17 *ierr = PetscMalloc1(len, &array); 18 if (*ierr) return; 19 *ierr = PetscArraycpy(array, weights, len); 20 if (*ierr) return; 21 *ierr = MatPartitioningSetVertexWeights(*part, array); 22 } 23