I checked the documentation of MatGetSubMatrix() and found the following: "The rows in isrow will be sorted into the same order as the original matrix on each process."
For my case, this will be wrong. I need to say each task exactly which row from the old matrix should be which row in the new matrix. Any other possibility to do this? Thomas Am 08.12.2012 15:12, schrieb Jed Brown: > MatGetSubMatrix() and later, MatGetRow() > > > On Sat, Dec 8, 2012 at 5:59 AM, Thomas Witkowski > <thomas.witkowski at tu-dresden.de > <mailto:thomas.witkowski at tu-dresden.de>> wrote: > > A have a distributed MATAIJ, which is non square. I want to create > a new matrix, which has the same col layout but a different row > layout and should be scattered from the original matrix. Thus, > each rank should collect some rows, which may be non local in the > original matrix, to its own local part of the new matrix. After > creating the new matrix, I need not only to make some MatMult, but > I need local access to the matrix rows. How to do this? Thanks for > any advise. > > Thomas > > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20121208/f0c79cc6/attachment.html>
