Actual source code: ex20.c

  1: static char help[] = "Tests DMDACreate3d() memory usage\n\n";

  3: #include <petscdmda.h>

  5: int main(int argc, char **argv)
  6: {
  7:   DM       dm;
  8:   Vec      X, Y;
  9:   PetscInt dof = 10;

 12:   PetscInitialize(&argc, &argv, (char *)0, help);
 13:   PetscOptionsGetInt(NULL, NULL, "-dof", &dof, NULL);
 14:   DMDACreate3d(PETSC_COMM_WORLD, DM_BOUNDARY_NONE, DM_BOUNDARY_NONE, DM_BOUNDARY_NONE, DMDA_STENCIL_STAR, -128, -128, -128, PETSC_DECIDE, PETSC_DECIDE, PETSC_DECIDE, dof, 1, NULL, NULL, NULL, &dm);
 15:   DMSetFromOptions(dm);
 16:   DMSetUp(dm);
 17:   PetscMemoryTrace("DMDACreate3d        ");

 19:   DMCreateGlobalVector(dm, &X);
 20:   PetscMemoryTrace("DMCreateGlobalVector");
 21:   DMCreateGlobalVector(dm, &Y);
 22:   PetscMemoryTrace("DMCreateGlobalVector");

 24:   VecDestroy(&X);
 25:   VecDestroy(&Y);
 26:   DMDestroy(&dm);
 27:   PetscFinalize();
 28:   return 0;
 29: }