Actual source code: ex8.c

  1: static char help[] = "Tests ISLocalToGlobalMappingSetBlockSize.\n\n";

  3: #include <petscis.h>
  4: #include <petscviewer.h>

  6: int main(int argc, char **argv)
  7: {
  8:   PetscInt               indices[]  = {0, 1, 2, 3, -1, -1, -1, -1, 4, 5, 6, 7};
  9:   PetscInt               indices2[] = {0, 1, 2, 3, 4, 5, -1, -1, -1, -1, -1, -1, 6, 7, 8, 9, 10, 11};
 10:   ISLocalToGlobalMapping map;

 12:   PetscFunctionBeginUser;
 13:   PetscCall(PetscInitialize(&argc, &argv, (char *)0, help));
 14:   PetscCall(ISLocalToGlobalMappingCreate(PETSC_COMM_WORLD, 1, 12, indices, PETSC_COPY_VALUES, &map));
 15:   PetscCall(ISLocalToGlobalMappingView(map, NULL));
 16:   PetscCall(ISLocalToGlobalMappingSetBlockSize(map, 2));
 17:   PetscCall(ISLocalToGlobalMappingView(map, NULL));
 18:   PetscCall(ISLocalToGlobalMappingSetBlockSize(map, 4));
 19:   PetscCall(ISLocalToGlobalMappingView(map, NULL));
 20:   PetscCall(ISLocalToGlobalMappingSetBlockSize(map, 2));
 21:   PetscCall(ISLocalToGlobalMappingView(map, NULL));
 22:   PetscCall(ISLocalToGlobalMappingSetBlockSize(map, 1));
 23:   PetscCall(ISLocalToGlobalMappingView(map, NULL));
 24:   PetscCall(ISLocalToGlobalMappingDestroy(&map));
 25:   PetscCall(ISLocalToGlobalMappingCreate(PETSC_COMM_WORLD, 1, 18, indices2, PETSC_COPY_VALUES, &map));
 26:   PetscCall(ISLocalToGlobalMappingView(map, NULL));
 27:   PetscCall(ISLocalToGlobalMappingSetBlockSize(map, 3));
 28:   PetscCall(ISLocalToGlobalMappingView(map, NULL));
 29:   PetscCall(ISLocalToGlobalMappingSetBlockSize(map, 6));
 30:   PetscCall(ISLocalToGlobalMappingView(map, NULL));
 31:   PetscCall(ISLocalToGlobalMappingSetBlockSize(map, 3));
 32:   PetscCall(ISLocalToGlobalMappingView(map, NULL));
 33:   PetscCall(ISLocalToGlobalMappingSetBlockSize(map, 1));
 34:   PetscCall(ISLocalToGlobalMappingView(map, NULL));
 35:   PetscCall(ISLocalToGlobalMappingDestroy(&map));
 36:   PetscCall(ISLocalToGlobalMappingCreate(PETSC_COMM_WORLD, 5, 2, indices2, PETSC_COPY_VALUES, &map));
 37:   PetscCall(ISLocalToGlobalMappingView(map, NULL));
 38:   PetscCall(ISLocalToGlobalMappingSetBlockSize(map, 2));
 39:   PetscCall(ISLocalToGlobalMappingView(map, NULL));
 40:   PetscCall(ISLocalToGlobalMappingDestroy(&map));
 41:   PetscCall(PetscFinalize());
 42:   return 0;
 43: }

 45: /*TEST

 47:    test:

 49: TEST*/