On 11/22/2013 06:36 PM, Jed Brown wrote:
Michael, your time zone is mistakenly set to UTC, though the time is
actually set to CST, so your mails appear out of order.

Michael Povolotskyi <[email protected]> writes:

I'm actually interested in implementing it.
Could you, please, tell what has to be done in MatMatSolveTranspose()?

By transpose I mean transpose and complex conjugation.
Some time ago, Barry proposed adding a function like
MatSetTransposeType(A,MAT_TRANSPOSE_HERMITIAN) that would cause
MatMultTranspose(), MatSolveTranspose(), etc., to use Hermitian
transpose.  The thought was that this was ultimately simpler to work
since the problem formulation usually dictates whether a complex matrix
uses a Hermitian transpose or not.  Does that sound reasonable to you?


I can see two implementation strategies.  One is to go into
MatLUFactor_SeqAIJ and set A->ops->transpose to a new function that
explicitly transposes the factors.  The other is to copy MatMatSolve and
modify to be MatMatSolveTranspose, along with an implementation
MatMatSolveTranspose_SeqAIJ (and external packages if relevant).
Thank you, Jed,
I fixed the time zone, sorry for the inconvenience.

This sounds very reasonable for me and my colleagues to have MatSetTransposeType(A,MAT_TRANSPOSE_HERMITIAN). Our problems always require Hermitian transpose but I assume there are problems where it is not the case.

Actually my goal is to solve the transposed problem with PARDISO package. It looks like it is the fastest option for the problems we usually solve.

By the way, it there a chance to have interface to Pardiso in the next PETSc release? My colleague Jose David Bermeo sent the modules for this some time ago for your approval.
Michael.

Reply via email to