[petsc-users] Convert mat SEQAIJ to MPIAIJ
Matthew Knepley
knepley at gmail.com
Tue Sep 4 10:36:43 CDT 2012
On Tue, Sep 4, 2012 at 10:28 AM, Thomas Witkowski <
thomas.witkowski at tu-dresden.de> wrote:
> Am 04.09.2012 17:20, schrieb Matthew Knepley:
>
> On Tue, Sep 4, 2012 at 9:52 AM, Thomas Witkowski <
> thomas.witkowski at tu-dresden.de> wrote:
>
>>
>>
>> http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/Mat/MATNEST.html
>>
>> As I wrote in my initial question, each rank contains one and only one
>> seqaij matrix, which all should be joined to one global matrix such that
>> each local matrix is the corresponding diagonal block of the mpiaij matrix.
>> I think, this does not work with nested matrices?
>>
>
> Why does this not work? I really think you are making this harder than
> it has to be.
>
> Mh, maybe I have an incomplete view of the possibilities how to use
> nested matrices.
>
> To become more specific: In the case of two mpi tasks, each containing one
> seqaij matrix, how to call MatCreateNest? Is this correct:
>
> Mat A;
> MatCreaeteNest(PETSC_COMM_WORLD, 2, PETSC_NULL, 2, PETSC_NULL, V ,&A);
>
^^^ This
should be 1.
Matt
and V is defined on rank 0 as
>
> Mat V[2] = {seqMat, PETSC_NULL} ;
>
> and and rank 1 as
>
> Mat V[2] = {PETSC_NULL, seqMat};
>
>
> Thomas
>
> Matt
>
>
>> Thomas
>>
>>
>>
>>>
>>> Hong
>>>
>>>>
>>>> Thomas :
>>>>
>>>>> In my FETI-DP code, each rank creates a SEQAIJ matrix that represents
>>>>> the discretization of the interior domain. Just for debugging, I would like
>>>>> to join these sequential matrices to one global MPIAIJ matrix. This matrix
>>>>> has no off diagonal nnzs and should be stored corresponding to the ranks
>>>>> unknowns, thus, first all rows of the first rank and so on. What's the most
>>>>> efficient way to do this? Is it possible to create this parallel matrix
>>>>> just as a view of the sequential ones, so without copying the data? Thanks
>>>>> for any advise.
>>>>
>>>>
>>>>
>>>> http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/Mat/MatCreateMPIAIJConcatenateSeqAIJ.html
>>>>
>>>> Note: entries in seqaij matrices are copied into a mpiaij matrix
>>>> without
>>>> inter-processor communication. Use petsc-3.3 for this function.
>>>>
>>>>
>>>> The function does not do what I expect. For example, if we have two
>>>> mpi task and each contains one local square matrix with n rows, I want to
>>>> create a global square matrix with 2n rows. This function create a
>>>> non-square matrix of size 2n x n.
>>>>
>>>> Thomas
>>>>
>>>
>>>
>
>
> --
> What most experimenters take for granted before they begin their
> experiments is infinitely more interesting than any results to which their
> experiments lead.
> -- Norbert Wiener
>
>
>
--
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120904/322af0e5/attachment.html>
More information about the petsc-users
mailing list