1 static char help[] = "Tests binary MatView() for MPIDENSE matrices \n\n"; 2 3 #include <petscmat.h> 4 5 6 int main(int argc,char **args) 7 { 8 PetscErrorCode ierr; 9 Mat A; 10 PetscViewer viewer; 11 char inputfile[256],outputfile[256]; 12 PetscBool flg; 13 14 ierr = PetscInitialize(&argc,&args,(char*)0,help);if (ierr) return ierr; 15 ierr = PetscOptionsGetString(NULL,NULL,"-inputfile",inputfile,sizeof(inputfile),&flg);CHKERRQ(ierr); 16 ierr = PetscOptionsGetString(NULL,NULL,"-outputfile",outputfile,sizeof(outputfile),&flg);CHKERRQ(ierr); 17 ierr = PetscViewerBinaryOpen(PETSC_COMM_WORLD,inputfile,FILE_MODE_READ,&viewer);CHKERRQ(ierr); 18 ierr = MatCreate(PETSC_COMM_WORLD,&A);CHKERRQ(ierr); 19 ierr = MatSetType(A,MATDENSE);CHKERRQ(ierr); 20 ierr = MatLoad(A,viewer);CHKERRQ(ierr); 21 ierr = PetscViewerDestroy(&viewer);CHKERRQ(ierr); 22 ierr = PetscViewerBinaryOpen(PETSC_COMM_WORLD,outputfile,FILE_MODE_WRITE,&viewer);CHKERRQ(ierr); 23 ierr = MatView(A,viewer);CHKERRQ(ierr); 24 ierr = PetscViewerDestroy(&viewer);CHKERRQ(ierr); 25 ierr = PetscFinalize(); 26 return ierr; 27 } 28