Re: [petsc-dev] Copy scatter and change block size

2017-11-25 Thread Pierre Jolivet
> On 25 Nov 2017, at 7:49 PM, Stefano Zampini wrote: > > Pierre, > > If you have access to the indices used to create the "unblocked" vecscatter, > you can then call ISCreateBlock and obtain the vecscatter you want. OK, that’s a better start. > To obtain the

Re: [petsc-dev] Copy scatter and change block size

2017-11-25 Thread Stefano Zampini
Pierre, If you have access to the indices used to create the "unblocked" vecscatter, you can then call ISCreateBlock and obtain the vecscatter you want. To obtain the garray, MatMPIAIJGetSeqAIJ > On Nov 25, 2017, at 9:26 PM, Pierre Jolivet > wrote: > > OK, so I

Re: [petsc-dev] Copy scatter and change block size

2017-11-25 Thread Pierre Jolivet
OK, so I guess I need to tinker around with VecScatterCreate. As a follow-up question, is there an easy way to get the “garray” from http://www.mcs.anl.gov/petsc/petsc-current/src/mat/impls/aij/mpi/mmaij.c.html#line105

Re: [petsc-dev] Copy scatter and change block size

2017-11-25 Thread Smith, Barry F.
Pierre, There is not. The block size is baked directly into the scatter data structure so not trivial to change in a copy. Barry > On Nov 25, 2017, at 7:41 AM, Pierre Jolivet > wrote: > > Hello, > Given a VecScatter inctx that operates on vectors x and

[petsc-dev] Copy scatter and change block size

2017-11-25 Thread Pierre Jolivet
Hello, Given a VecScatter inctx that operates on vectors x and y, I’d like to create a VecScatter inctx_bs with the same pattern, but that operators on vectors x_bs and y_bs with different block sizes than the original x and y (and that are thus of sizes n * bs). Is there an easy way to do this