static char help[] = "Tests MatTranspose()\n\n"; #include int main(int argc,char **args) { Mat C,A; PetscScalar v; PetscInt i,j,m = 4,n = 4,Ii,J,Istart,Iend; PetscMPIInt rank,size; PetscBool equal=PETSC_FALSE; PetscCall(PetscInitialize(&argc,&args,(char*)0,help)); PetscCallMPI(MPI_Comm_rank(PETSC_COMM_WORLD,&rank)); PetscCallMPI(MPI_Comm_size(PETSC_COMM_WORLD,&size)); PetscCall(PetscOptionsGetInt(NULL,NULL,"-m",&m,NULL)); n = m; PetscCall(MatCreateAIJ(PETSC_COMM_WORLD,PETSC_DECIDE,PETSC_DECIDE,m*n,m*n,5,NULL,5,NULL,&C)); /* create the symmetric matrix for the five point stencil */ PetscCall(MatGetOwnershipRange(C,&Istart,&Iend)); for (Ii=Istart; Ii0) {J = Ii - n; PetscCall(MatSetValues(C,1,&Ii,1,&J,&v,INSERT_VALUES));} if (i0) {J = Ii - 1; PetscCall(MatSetValues(C,1,&Ii,1,&J,&v,INSERT_VALUES));} if (j