Actual source code: ex1.c

  1: static char help[] = "Tests DMClone() with DMComposite\n\n";

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

  6: int main(int argc,char **argv)
  7: {
  8:   DM             newdm, dm, dm1,dm2;

 11:   PetscInitialize(&argc, &argv, 0, help);
 12:   DMCompositeCreate(PETSC_COMM_WORLD, &dm);
 13:   DMDACreate1d(PETSC_COMM_WORLD, DM_BOUNDARY_NONE, 100, 1, 1, NULL, &dm1);
 14:   DMDACreate1d(PETSC_COMM_WORLD, DM_BOUNDARY_NONE, 100, 1, 1, NULL, &dm2);
 15:   DMSetUp(dm1);
 16:   DMSetUp(dm2);
 17:   DMCompositeAddDM(dm, dm1);
 18:   DMCompositeAddDM(dm, dm2);
 19:   DMDestroy(&dm1);
 20:   DMDestroy(&dm2);
 21:   DMSetFromOptions(dm);
 22:   DMSetUp(dm);
 23:   DMClone(dm, &newdm);
 24:   DMDestroy(&dm);
 25:   DMDestroy(&newdm);
 26:   PetscFinalize();
 27:   return 0;
 28: }

 30: /*TEST

 32:   test:
 33:     suffix: 0

 35: TEST*/