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>