1 2 static char help[] = "Tests the creation of a PC context.\n\n"; 3 4 #include <petscpc.h> 5 6 int main(int argc,char **args) 7 { 8 PC pc; 9 PetscErrorCode ierr; 10 PetscInt n = 5; 11 Mat mat; 12 13 ierr = PetscInitialize(&argc,&args,(char*)0,help);if (ierr) return ierr; 14 ierr = PCCreate(PETSC_COMM_WORLD,&pc);CHKERRQ(ierr); 15 ierr = PCSetType(pc,PCNONE);CHKERRQ(ierr); 16 17 /* Vector and matrix must be set before calling PCSetUp */ 18 ierr = MatCreateSeqAIJ(PETSC_COMM_SELF,n,n,3,NULL,&mat);CHKERRQ(ierr); 19 ierr = MatAssemblyBegin(mat,MAT_FINAL_ASSEMBLY);CHKERRQ(ierr); 20 ierr = MatAssemblyEnd(mat,MAT_FINAL_ASSEMBLY);CHKERRQ(ierr); 21 ierr = PCSetOperators(pc,mat,mat);CHKERRQ(ierr); 22 ierr = PCSetUp(pc);CHKERRQ(ierr); 23 ierr = MatDestroy(&mat);CHKERRQ(ierr); 24 ierr = PCDestroy(&pc);CHKERRQ(ierr); 25 ierr = PetscFinalize(); 26 return ierr; 27 } 28 29 /*TEST 30 31 test: 32 33 TEST*/ 34