static char help[] = "Testing MatCreateMPIMatConcatenateSeqMat().\n\n"; #include int main(int argc,char **argv) { PetscErrorCode ierr; Mat seqmat,mpimat; PetscMPIInt rank; PetscScalar value[3],*vals; PetscInt i,col[3],n=5,bs=1; ierr = PetscInitialize(&argc,&argv,(char*)0,help);if (ierr) return ierr; ierr = MPI_Comm_rank(PETSC_COMM_WORLD,&rank);CHKERRMPI(ierr); ierr = PetscOptionsGetInt(NULL,NULL,"-bs",&bs,NULL);CHKERRQ(ierr); /* Create seqaij matrices of size (n+rank) by n */ ierr = MatCreate(PETSC_COMM_SELF,&seqmat);CHKERRQ(ierr); ierr = MatSetSizes(seqmat,(n+rank)*bs,PETSC_DECIDE,PETSC_DECIDE,n*bs);CHKERRQ(ierr); ierr = MatSetFromOptions(seqmat);CHKERRQ(ierr); ierr = MatSeqAIJSetPreallocation(seqmat,3*bs,NULL);CHKERRQ(ierr); ierr = MatSeqBAIJSetPreallocation(seqmat,bs,3,NULL);CHKERRQ(ierr); if (bs == 1) { value[0] = -1.0; value[1] = 2.0; value[2] = -1.0; for (i=1; i