static char help[]= "Test VecScatterCreateToZero, VecScatterCreateToAll\n\n"; #include int main(int argc,char **argv) { PetscInt i,N=10,low,high; PetscMPIInt size,rank; Vec x,y; VecScatter vscat; PetscCall(PetscInitialize(&argc,&argv,(char*)0,help)); PetscCallMPI(MPI_Comm_size(PETSC_COMM_WORLD,&size)); PetscCallMPI(MPI_Comm_rank(PETSC_COMM_WORLD,&rank)); PetscCall(VecCreate(PETSC_COMM_WORLD,&x)); PetscCall(VecSetFromOptions(x)); PetscCall(VecSetSizes(x,PETSC_DECIDE,N)); PetscCall(VecGetOwnershipRange(x,&low,&high)); PetscCall(PetscObjectSetName((PetscObject)x,"x")); /*-------------------------------------*/ /* VecScatterCreateToZero */ /*-------------------------------------*/ /* MPI vec x = [0, 1, 2, .., N-1] */ for (i=low; i