xref: /petsc/src/mat/tests/ex252.c (revision 2328674f02b36b4cbc3b77c01fb2f000edcf46ec)
1*2328674fSJunchao Zhang static char help[] = "Test MatZeroEntries() on unassembled matrices \n\n";
2*2328674fSJunchao Zhang 
3*2328674fSJunchao Zhang #include <petscmat.h>
4*2328674fSJunchao Zhang 
5*2328674fSJunchao Zhang int main(int argc, char **args)
6*2328674fSJunchao Zhang {
7*2328674fSJunchao Zhang   Mat             A;
8*2328674fSJunchao Zhang   PetscInt        N = 32;
9*2328674fSJunchao Zhang   MPI_Comm        comm;
10*2328674fSJunchao Zhang   PetscErrorCode  ierr;
11*2328674fSJunchao Zhang 
12*2328674fSJunchao Zhang   ierr = PetscInitialize(&argc, &args, (char*) 0, help);if (ierr) return ierr;
13*2328674fSJunchao Zhang   comm = PETSC_COMM_WORLD;
14*2328674fSJunchao Zhang   ierr = PetscOptionsGetInt(NULL,NULL, "-N", &N, NULL);CHKERRQ(ierr);
15*2328674fSJunchao Zhang   ierr = MatCreate(comm, &A);CHKERRQ(ierr);
16*2328674fSJunchao Zhang   ierr = MatSetSizes(A, PETSC_DECIDE, PETSC_DECIDE, N, N);CHKERRQ(ierr);
17*2328674fSJunchao Zhang   ierr = MatSetFromOptions(A);CHKERRQ(ierr);
18*2328674fSJunchao Zhang   ierr = MatSeqAIJSetPreallocation(A, 3, NULL);CHKERRQ(ierr);
19*2328674fSJunchao Zhang   ierr = MatMPIAIJSetPreallocation(A, 3, NULL, 2, NULL);CHKERRQ(ierr);
20*2328674fSJunchao Zhang   ierr = MatZeroEntries(A);CHKERRQ(ierr);
21*2328674fSJunchao Zhang   ierr = MatDestroy(&A);CHKERRQ(ierr);
22*2328674fSJunchao Zhang   ierr = PetscFinalize();
23*2328674fSJunchao Zhang   return ierr;
24*2328674fSJunchao Zhang }
25*2328674fSJunchao Zhang 
26*2328674fSJunchao Zhang /*TEST
27*2328674fSJunchao Zhang    test:
28*2328674fSJunchao Zhang       requires: kokkos_kernels
29*2328674fSJunchao Zhang       nsize: {{1 2}}
30*2328674fSJunchao Zhang       output_file: output/ex252_1.out
31*2328674fSJunchao Zhang       args: -mat_type aijkokkos
32*2328674fSJunchao Zhang TEST*/
33*2328674fSJunchao Zhang 
34