<p>I am trying to combine several matrices into one matrix in parallel mode for MPIDense. </p><p>Assuming combing A1, A2 into B</p><p>I would like to use&nbsp;</p><p>&quot;MatGetArray() gets the local matrix of A1 and A2, MatSetValues() inserts the local matrix into B&quot;&nbsp;</p>
<p>I have checked the mail list, I got the following discussion</p><p>&quot;We do not have such function.<br></p>You can create a new matrix C of size m x (n1 + n2),<br>and do a loop:<br>for each row:<br>&nbsp;MatGetRow(A, row,...)<br>
&nbsp;MatSetValues(C,1,&amp;row,...)<br>&nbsp;MatGetRow(B, )<br>
&nbsp;MatSetValues(C,1,&amp;row,...)<br><br>or<br>&nbsp;create A and B with the size m x (n1 + n2),<br>and get B=A+B by calling MatAXPY(),<br><br>Hong<br>- Hide quoted text -<br><br>On Wed, 19 Sep 2007, Alejandro Garzon wrote:<br>
<br>
&gt;<br>&gt; Hi, Is there a function to combine two matrices, sizes m x n1 and m x n2, in a<br>&gt; single matrix size m x (n1 + n2) or the analog case for rows? Thanks.<br>&gt;<br>&gt; Alejandro.<br>&gt;<br>&gt;<br><p>&quot;<br>
</p><p>To the first method Hong proposed, MatGetRow() just get the local row of the matrix, right? it should be slower than getting the local marix regarding MatSetValues(), right? Do you have any comments about the above and any better advice for matrix combination? thanks a lot.</p>
<p>Regards,</p><p>Yujie</p>