Actual source code: ex7.c
1: /*$Id: ex7.c,v 1.17 2001/04/10 19:37:18 bsmith Exp $*/
3: static char help[] = "Demonstrates constructing an application ordering.\n\n";
5: #include petscao.h
9: int main(int argc,char **argv)
10: {
11: int n = 5,ierr,rank,size;
12: IS ispetsc,isapp;
13: AO ao;
15: PetscInitialize(&argc,&argv,(char*)0,help);
16: PetscOptionsGetInt(PETSC_NULL,"-n",&n,PETSC_NULL);
17: MPI_Comm_rank(PETSC_COMM_WORLD,&rank);
18: MPI_Comm_size(PETSC_COMM_WORLD,&size);
20: /* create the index sets */
21: ISCreateStride(PETSC_COMM_WORLD,n,rank,size,&ispetsc);
22: ISCreateStride(PETSC_COMM_WORLD,n,n*rank,1,&isapp);
24: /* create the application ordering */
25: AOCreateBasicIS(isapp,ispetsc,&ao);
28: AOView(ao,PETSC_VIEWER_STDOUT_WORLD);
30: ISView(ispetsc,PETSC_VIEWER_STDOUT_WORLD);
31: ISView(isapp,PETSC_VIEWER_STDOUT_WORLD);
32: AOPetscToApplicationIS(ao,ispetsc);
33: ISView(isapp,PETSC_VIEWER_STDOUT_WORLD);
34: ISView(ispetsc,PETSC_VIEWER_STDOUT_WORLD);
37: ISDestroy(ispetsc);
38: ISDestroy(isapp);
40: AODestroy(ao);
41: PetscFinalize();
42: return 0;
43: }
44: