Problem with MatMatMultTranspose

Hong Zhang hzhang at mcs.anl.gov
Fri Sep 18 08:48:12 CDT 2009


Should we create a new matrix type, say hbaij,
for operations of Hermitian matrices?

Hong

On Fri, 18 Sep 2009, Matthew Knepley wrote:

> On Fri, Sep 18, 2009 at 7:32 AM, Niall Moran <nmoran at thphys.nuim.ie> wrote:
>
>> Matthew Knepley wrote:
>>
>>> On Thu, Sep 17, 2009 at 12:44 PM, Niall Moran <nmoran at thphys.nuim.ie<mailto:
>>> nmoran at thphys.nuim.ie>> wrote:
>>>
>>>    Hi,
>>>
>>>    I am just wondering if anything has changed on the status of this
>>>    feature. Would be great to be able to perform matrix vector
>>>    multiplications on complex Hermitian matrices by only providing
>>>    one half of the matrix.
>>>
>>>
>>> It is not curently in the todo list since we have only had one request. It
>>> seems like it would just take being careful about the
>>> complex case for SBAIJ if you would like the try the implementation. We
>>> can answer questions.
>>>
>>>  Thanks for you rapid response. I would be interested in attempting to
>> implement this for MPIAIJ if it would not be too involved. Would you be able
>> to sketch a rough outline of what this would involve? Would I need to just
>> modify the MatMult_MPIAIJ function or would I need to modify the creation of
>> the scatterers in MatAssemblyBegin_MPIAIJ?
>>
>> Could anyone suggest some documentation that describes how the matrix
>> vector multiplication works in petsc for MPIAIJ typed matrices?
>>
>> Does matrix vector multiplication with just the upper half work for real
>> symmetric matrices?
>>
>
> 1) Understand the SBAIJ implementation. This is used for real symmetric
> matrices
>
> 2) In the places where the lower triangle is retrieved, add a complex
> conjugation.
>
>  Matt
>
>
>> Regards,
>>
>> Niall.
>>
> -- 
> 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
>


More information about the petsc-users mailing list