Matthew Knepley <[email protected]> writes: > In ex62: > > if (user.runType == RUN_FULL) { > PetscViewer viewer; > Vec uLocal; > const char *name; > > ierr = PetscViewerCreate(PETSC_COMM_WORLD, &viewer);CHKERRQ(ierr); > ierr = PetscViewerSetType(viewer, PETSCVIEWERVTK);CHKERRQ(ierr); > ierr = PetscViewerSetFormat(viewer, > PETSC_VIEWER_ASCII_VTK);CHKERRQ(ierr); > ierr = PetscViewerFileSetName(viewer, "ex62_sol.vtk");CHKERRQ(ierr);
Please don't do this. Just set the type to PETSCVIEWERVTK, set the file name to some *.vtu; the VTK viewer will infer output format from extension and write the VTU XML format with binary-appended data in a fairly fast and memory-scalable way. Then VecView(u,viewer); > ierr = DMGetLocalVector(dm, &uLocal);CHKERRQ(ierr); > ierr = PetscObjectGetName((PetscObject) u, &name);CHKERRQ(ierr); > ierr = PetscObjectSetName((PetscObject) uLocal, name);CHKERRQ(ierr); > ierr = DMGlobalToLocalBegin(dm, u, INSERT_VALUES, uLocal);CHKERRQ(ierr); > ierr = DMGlobalToLocalEnd(dm, u, INSERT_VALUES, uLocal);CHKERRQ(ierr); > ierr = VecView(uLocal, viewer);CHKERRQ(ierr); > ierr = DMRestoreLocalVector(dm, &uLocal);CHKERRQ(ierr); None of the above, then close the file: > ierr = PetscViewerDestroy(&viewer);CHKERRQ(ierr); > }
pgp7HN6edom55.pgp
Description: PGP signature
