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*/