Actual source code: ex31.c

  1: static char help[] = "Tests MAIJ matrix for large DOF\n\n";

  3: #include <petscdm.h>
  4: #include <petscdmda.h>

  6: int main(int argc,char *argv[])
  7: {
  8:   Mat            M;
  9:   Vec            x,y;
 10:   DM             da,daf;

 12:   PetscInitialize(&argc,&argv,0,help);
 13:   DMDACreate2d(PETSC_COMM_WORLD, DM_BOUNDARY_NONE, DM_BOUNDARY_NONE,DMDA_STENCIL_STAR,4,5,PETSC_DECIDE,PETSC_DECIDE,41,1,0,0,&da);
 14:   DMSetFromOptions(da);
 15:   DMSetUp(da);
 16:   DMRefine(da,PETSC_COMM_WORLD,&daf);
 17:   DMCreateInterpolation(da,daf,&M,NULL);
 18:   DMCreateGlobalVector(da,&x);
 19:   DMCreateGlobalVector(daf,&y);

 21:   MatMult(M,x,y);
 22:   MatMultTranspose(M,y,x);
 23:   DMDestroy(&da);
 24:   DMDestroy(&daf);
 25:   VecDestroy(&x);
 26:   VecDestroy(&y);
 27:   MatDestroy(&M);
 28:   PetscFinalize();
 29:   return 0;
 30: }

 32: /*TEST

 34:    test:
 35:       nsize: 2

 37: TEST*/