On Sat, Jul 14, 2012 at 6:30 PM, Miguel Fosas <span dir="ltr"><<a href="mailto:miguel.fosas@gmail.com" target="_blank">miguel.fosas@gmail.com</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi everyone,<br>
<br>
I have a question concerning the usage of shell matrices with SLEPc<br>
and the SVD solvers. When I compute the largest singular values from a<br>
complex non-hermitian matrix A with SLEPc, the solver asks the user to<br>
provide MATOP_MULT and MATOP_MULT_TRANSPOSE operations for A.<br>
<br>
As I have observed in the documentation of SLEPc, both the cyclic and<br>
cross solvers require matrix-vector product  of A* v, with A* the<br>
complex conjugate of A. After having taken a look at the source code,<br>
it is not clear to me how the complex case is handled.<br>
<br>
The question is: for the complex case, does the implementation of<br>
MatMultTranspose have to compute A* v or A^T v? Is there a reason why<br>
it is not implemented using MatMultHermitianTranspose?<br></blockquote><div><br></div><div>I believe it is done this way because we originally did not distinguish (they were not there in 2009). It</div><div>should probably be updated.</div>
<div><br></div><div>    Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Thanks in advance,<br>
<br>
Miguel.<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>
-- Norbert Wiener<br>