[petsc-users] Non-hermitian KSP
Bikash Kanungo
bikash at umich.edu
Mon Feb 20 19:35:48 CST 2017
Thank you so much, Matthew.
On Feb 20, 2017 8:10 AM, "Matthew Knepley" <knepley at gmail.com> wrote:
> On Mon, Feb 20, 2017 at 7:01 AM, Bikash Kanungo <bikash at umich.edu> wrote:
>
>> Hi,
>>
>>
>> I'm trying to solve a KSP using GMRES in which the matrix (say, A) is
>> non-hermitian. I'm using a shell matrix for A.
>>
>> In this context I have the following few questions:
>>
>>
>> 1. I guess one needs to provide appropriate user-defined function
>> override for MatMultHermitianTranspose instead of MatMultTranspose (i.e.,
>> MATOP_MULT_TRANSPOSE). However, I am unable to find any
>> MATOP_MULT_HERMITIAN_TRANSPOSE flag. So if GMRES expects
>> MatlMultHermitianTranspose then should I override the MatMultTranspose in a
>> way to actually perform MatMultHermitianTranspose? Or am I mistaken in my
>> assumption that GMRES requires MatMultHermitianTranspose instead of
>> MatMultTranspose?
>>
>> GMRES does not use the transpose at all.
>
>>
>> 1. For the same problem, I want to provide my own preconditioner
>> matrix (say, P) as a shell a matrix. What operations (e.g., MATOP_MULT,
>> MATOP_MULT_TRANSPOSE etc.) should I override through user-defined
>> functions?
>>
>> A user -defined preconditioner should be implemented using PCSHELL, which
> is much more straightforward than MATSHELL.
>
> Thanks,
>
> Matt
>
>
>> Thanks,
>> Bikash
>>
>> --
>> Bikash S. Kanungo
>> PhD Student
>> Computational Materials Physics Group
>> Mechanical Engineering
>> University of Michigan
>>
>>
>
>
> --
> 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/20170220/923362c6/attachment.html>
More information about the petsc-users
mailing list