<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, May 8, 2014 at 11:25 AM, marco restelli <span dir="ltr"><<a href="mailto:mrestelli@gmail.com" target="_blank">mrestelli@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
   I have a Cartesian communicator and some matrices distributed along<br>
the "x" direction. I would like to compute an all_reduce operation for<br>
these matrices in the y direction, and I wander whether there is a<br>
PETSc function for this.<br>
<br>
<br>
More precisely:<br>
<br>
a matrix A is distributed among processors  0 , 1 , 2<br>
another A is distributed among processors   3 , 4 , 5<br>
another A is distributed among processors   6 , 7 , 8<br>
...<br>
<br>
The x direction is 0,1,2; while the y direction is 0,3,6,...<br>
<br>
I would like to compute a matrix  B = "sum of the matrices A"  and a<br>
copy of B should be distributed among processors 0,1,2, another copy<br>
among 3,4,5 and so on.<br>
<br>
A way of doing this is getting the matrix coefficients, broadcasting<br>
them along the y direction and summing them in the matrix B; maybe<br>
however there is already a PETSc function doing this.<br></blockquote><div><br></div><div>There is nothing like this in PETSc. There are many tools for this using dense</div><div>matrices in Elemental, but I have not seen anything for sparse matrices.</div>
<div><br></div><div>   Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Thank you, regards<br>
<span class="HOEnZb"><font color="#888888">   Marco<br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>
-- Norbert Wiener
</div></div>