On Tue, Aug 21, 2012 at 3:37 PM, Matthew Knepley <span dir="ltr"><<a href="mailto:knepley@gmail.com" target="_blank">knepley@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">
<div class="HOEnZb"><div class="h5">On Tue, Aug 21, 2012 at 11:47 AM, Jack Poulson <span dir="ltr"><<a href="mailto:jack.poulson@gmail.com" target="_blank">jack.poulson@gmail.com</a>></span> wrote:<br></div></div><div class="gmail_quote">
<div><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><div>On Tue, Aug 21, 2012 at 11:42 AM, Alexander Grayver <span dir="ltr"><<a href="mailto:agrayver@gfz-potsdam.de" target="_blank">agrayver@gfz-potsdam.de</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">
<div bgcolor="#FFFFFF" text="#000000"><div>
<div>On <a href="tel:21.08.2012%2018" value="+12108201218" target="_blank">21.08.2012 18</a>:32, Matthew Knepley
wrote:<br>
</div>
<blockquote type="cite">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"> MUMPS takes only
several minutes and 6 GB of memory to factorize it. <br>
This factorization gives residual on the order of 10e-12 and
solution is indeed correct.<br>
<br>
Nevertheless, you're right, there is numerical null-space in
this matrix since it comes <br>
from the discretization of equation that contains curl curl
operator, but practically this <br>
case is not really the worst one. <br>
</div>
</blockquote>
<div><br>
</div>
<div>This makes no sense whatsoever. How can you LU factor a
matrix that has a null space?</div>
</div>
</blockquote>
<br></div>
Matt,<br>
<br>
I'm not sure that I correctly used term numerical null-space in my
post.<br>
The equation is<br>
<br>
curl curl E + kE = -J,<br>
<br>
where k is a function of frequency and conductivity, whenever one of
them becomes small this term gets vanishingly small thus we have
problems since curl curl operator has nontrivial null-space by
definition. So let's say solving this equation for low frequencies
and for models containing air is difficult. <br>
<br>
What kind of magic is inside MUMPS I don't know, but it is able to
handle such cases (e.g. SuperLU and PaStiX fail). <br>
<br>
Also, if it matters, I'm talking about LDLt factorization in MUMPS.<span><font color="#888888"><br>
<pre cols="72">--
Regards,
Alexander</pre>
</font></span></div>
</blockquote></div></div></div>You can find Vasseur's talk on this exact subject here:<br><a href="http://graal.ens-lyon.fr/MUMPS/doc/ud_2010/Vasseur_talk.pdf" target="_blank">http://graal.ens-lyon.fr/MUMPS/doc/ud_2010/Vasseur_talk.pdf</a></blockquote>
<div><br></div></div></div><div>I was wrong, this is not nonsense. However, for curl curl the null space grows with matrix dimension, and</div><div>as far as I can tell from the slides, the null space determination is not scalable (Jack correct me if I am wrong).</div>
<div>Also, they gave no timings, so I suspect null space determination is slow.</div><div><br></div><div>I don't think any other LU we have will do this, so if you have null spaces you are stuck with MUMPS.</div><div>
<br></div><div> Matt</div><div> </div></div></blockquote><div><br></div><div>It's not something that I've studied in detail, but I believe that it isn't that the behavior will not be that different from "difficult" nonsingular cases (i.e., where a large number of pivots do not satisfy the thresholding condition and must be delayed to the parent front). If the null space is large, then I would expect this to impact performance significantly. I would expect it to make load balancing much more difficult. In practice, this might lead to nonscalability, as it is sophisticated algorithm.</div>
<div><br></div><div>Jack</div></div>