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