<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p>Hello,</p>
    <p>I need a parallel block tridiagonal solver and thought PETSc
      would be perfect.  However, there seems to be no specific example
      showing exactly which VecCreate and MatCreate functions to use.  I
      searched the archive and the web and there is no explicit block
      tridiagonal examples (although ex23.c example solves a tridiagonal
      matrix) and the manual is vague on the subject.  So a couple of
      questions:</p>
    <ol>
      <li>Is it better to create a monolithic matrix (MatCreateAIJ) and
        vector (VecCreate)?</li>
      <li>Is it better to create a block matrix (MatCreateBAIJ) and
        vector (VecCreate and then VecSetBlockSize or is there an
        equivalent block vector create)?</li>
      <li>What is the best parallel solver(s) to invert the Dx=b when D
        is a block tridiagonal matrix?</li>
    </ol>
    <p>If this helps, each row will be owned by the same process.  In
      other words, the data used to fill the [A] [B] [C] block matrices
      in a row of the D block tridiagonal matrix will reside on the same
      process.  Hence, I don't need to store the individual [A], [B],
      and [C] block matrices in parallel, just the over all block
      tridiagonal matrix on a row by row basis.</p>
    <p>Thanks in advance,<br>
    </p>
    <p>John<br>
    </p>
    <pre class="moz-signature" cols="72">-- 
**************************************************************
Dr. John Papp
Senior Research Scientist
CRAFT Tech.
6210 Kellers Church Road
Pipersville, PA 18947

Email:  <a class="moz-txt-link-abbreviated" href="mailto:jpapp@craft-tech.com">jpapp@craft-tech.com</a>
Phone:  (215) 766-1520
Fax  :  (215) 766-1524
Web  :  <a class="moz-txt-link-freetext" href="http://www.craft-tech.com">http://www.craft-tech.com</a>

**************************************************************</pre>
  </body>
</html>