On Sun, Mar 6, 2011 at 21:03, Jack Poulson <jack.poulson at gmail.com> wrote:
> Sorry to hit the list so quickly again, but the PCShellSetApply > documentation doesn't say anything about how the 'xin' and 'xout' vectors > will be distributed, or if it's up to the user to determine it. > When you create a parallel matrix, MatSetSizes(A,m,n,M,N) is always called (one way or another, perhaps as part of MatCreateMPIAIJ or similar). The pair (m,M) defines the row distribution (m locally owned out of M global) and (n,N) defines the column distribution. This is also the distribution of the vectors obtained using MatGetVecs(). Most KSPs only work for square systems in which case the left and right Vecs necessarily have the same distribution. LSQR is the only KSP I can think of that works with non-square systems. With LSQR, PCApply is called after MatMultTranspose so its input should be in the column distribution of the operator. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20110306/94491388/attachment.htm>
