<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Ok,<br>
    this work is still part of my Schur complement approach using the
    full schur but with a block diagonal A00^-1.<br>
    I implemented the computation of A00^-1 by extracting each diagonal
    block and inverting them individually.<br>
    This works quite well and does not cost some much, especially since
    I can still use threads to accelerate this process (I might send a
    question about this in the future...).<br>
    <br>
    At the moment the most expensive part of the procedure is inverting
    S (I'm using LU at the moment to make sure that everything is
    implemented correctly) and the second most expensive procedure is
    MatMatMult. I'm doing two of these: A10 * A00^-1 and then a right
    multiplication by A01.<br>
    Decreasing that cost would be nice (I attached the output of
    -log_summary for reference).<br>
    I think I need to look for the objects that are not Destroyed too.<br>
    <br>
    Finally I now would like to split the Schur complement into two
    submatrices. I have an IS that tracks location of these sub-matrices
    in the global system:<br>
    <br>
           [ A00  A01  A02 ]  --> IS(0)<br>
    A = [ A10  A11  A12 ]  --> IS(1)<br>
           [ A20  A21  A22 ]  --> IS(2)<br>
    <br>
    How can I use IS(1) and IS(2) to track:<br>
    <br>
    S =   [ A11  A12 ]  _  [ A10] * [A00]^-1 * [ A01 A02 ]  = [ S11  S12
    ]  --> IS(1)'<br>
             [ A21  A22 ]     [
    A20]                                          = [ S21  S22 ]  -->
    IS(2)'<br>
    <br>
    or is there a simple way to compute IS(1)' and IS(2)' based on IS(1)
    and IS(2)?<br>
    <br>
    Thanks!<br>
    <pre class="moz-signature" cols="72">Best,
Luc</pre>
    <div class="moz-cite-prefix">On 03/26/2015 04:12 PM, Matthew Knepley
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAMYG4GniTA0jX7+JWT=Rvi5bt+XHHTqcaBaofOz5NgwThz_c7w@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div class="gmail_extra">
          <div class="gmail_quote">On Thu, Mar 26, 2015 at 3:07 PM, Luc
            Berger-Vergiat <span dir="ltr"><<a
                moz-do-not-send="true" href="mailto:lb2653@columbia.edu"
                target="_blank">lb2653@columbia.edu</a>></span>
            wrote:<br>
            <blockquote class="gmail_quote" style="margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi all,<br>
              I want to multiply two matrices together, one is MATAIJ
              and the second is MATBAIJ, is there a way to leverage the
              properties of the blocked matrix in the BAIJ format or
              should I just assemble the BAIJ matrix as AIJ?</blockquote>
            <div><br>
            </div>
            <div>I am afraid you are currently stuck with the latter.</div>
            <div><br>
            </div>
            <div>  Thanks,</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"><span
                class="HOEnZb"><font color="#888888"><br>
                  -- <br>
                  Best,<br>
                  Luc<br>
                  <br>
                  <br>
                </font></span></blockquote>
          </div>
          <br>
          <br clear="all">
          <div><br>
          </div>
          -- <br>
          <div class="gmail_signature">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</div>
        </div>
      </div>
    </blockquote>
    <br>
  </body>
</html>