1c4762a1bSJed Brown 2c4762a1bSJed Brown static char help[] = "Tests loading DM vector from file.\n\n"; 3c4762a1bSJed Brown 4c4762a1bSJed Brown /* 5c4762a1bSJed Brown ex14.c writes out the DMDA and vector read by this program. 6c4762a1bSJed Brown */ 7c4762a1bSJed Brown 8c4762a1bSJed Brown #include <petscdmda.h> 9c4762a1bSJed Brown 10c4762a1bSJed Brown int main(int argc,char **argv) 11c4762a1bSJed Brown { 12c4762a1bSJed Brown PetscInt M = PETSC_DECIDE,N = PETSC_DECIDE; 13c4762a1bSJed Brown DM da; 14c4762a1bSJed Brown Vec global; 15c4762a1bSJed Brown PetscViewer bviewer; 16c4762a1bSJed Brown 17*327415f7SBarry Smith PetscFunctionBeginUser; 189566063dSJacob Faibussowitsch PetscCall(PetscInitialize(&argc,&argv,(char*)0,help)); 199566063dSJacob Faibussowitsch PetscCall(PetscOptionsGetInt(NULL,NULL,"-M",&M,NULL)); 209566063dSJacob Faibussowitsch PetscCall(PetscOptionsGetInt(NULL,NULL,"-N",&N,NULL)); 21c4762a1bSJed Brown 229566063dSJacob Faibussowitsch PetscCall(PetscViewerBinaryOpen(PETSC_COMM_WORLD,"daoutput",FILE_MODE_READ,&bviewer)); 239566063dSJacob Faibussowitsch PetscCall(DMCreate(PETSC_COMM_WORLD,&da)); 24c4762a1bSJed Brown 259566063dSJacob Faibussowitsch PetscCall(DMLoad(da,bviewer)); 269566063dSJacob Faibussowitsch PetscCall(DMCreateGlobalVector(da,&global)); 279566063dSJacob Faibussowitsch PetscCall(VecLoad(global,bviewer)); 289566063dSJacob Faibussowitsch PetscCall(PetscViewerDestroy(&bviewer)); 29c4762a1bSJed Brown 309566063dSJacob Faibussowitsch PetscCall(VecView(global,PETSC_VIEWER_DRAW_WORLD)); 31c4762a1bSJed Brown 32c4762a1bSJed Brown /* Free memory */ 339566063dSJacob Faibussowitsch PetscCall(VecDestroy(&global)); 349566063dSJacob Faibussowitsch PetscCall(DMDestroy(&da)); 359566063dSJacob Faibussowitsch PetscCall(PetscFinalize()); 36b122ec5aSJacob Faibussowitsch return 0; 37c4762a1bSJed Brown } 38