On Fri, Jul 6, 2012 at 5:06 AM, Dmitry Karpeev <span dir="ltr"><<a href="mailto:karpeev@mcs.anl.gov" target="_blank">karpeev@mcs.anl.gov</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">
Here's the line in question (also see the immediately preceding code): <div><a href="http://petsc.cs.iit.edu/petsc/petsc-dev/rev/0d4ccb990bb8#l1.127" target="_blank">http://petsc.cs.iit.edu/petsc/petsc-dev/rev/0d4ccb990bb8#l1.127</a></div>
</blockquote><div><br></div><div>As long as we are fixing this, I would rather not repeat the prefix, since we will likely want to</div><div>configure this differently than the block 0 solve. Is any thing wrong with</div>
<div><br></div><div>  schurprefix+"_sub"</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"><div><span class="HOEnZb"><font color="#888888">Dmitry.</font></span><div>
<div class="h5"><br><br><div class="gmail_quote">---------- Forwarded message ----------<br>From: <b class="gmail_sendername">Dmitry Karpeev</b> <span dir="ltr"><<a href="mailto:karpeev@mcs.anl.gov" target="_blank">karpeev@mcs.anl.gov</a>></span><br>


Date: Fri, Jul 6, 2012 at 6:04 AM<br>Subject: Re: [petsc-dev] Problematic Merge of FieldSplit<br>To: For users of the development version of PETSc <<a href="mailto:petsc-dev@mcs.anl.gov" target="_blank">petsc-dev@mcs.anl.gov</a>><br>


<br><br><div>I have the following problem with the prefix choice for the MatSchurComplement KSP introduced in this changeset (<a href="http://petsc.cs.iit.edu/petsc/petsc-dev/rev/0d4ccb990bb8" target="_blank">http://petsc.cs.iit.edu/petsc/petsc-dev/rev/0d4ccb990bb8</a>).</div>



<div>I'm talking about the  "inner" KSP for A00, effecting inv(A00) in the definition S = A11 - A10 inv(A00) A01.  </div><div>We also have the "outer" inv(A00) KSP, which gets prefix "0".  I recently set the "inner" inv(A00) KSP </div>



<div>prefix to "0", simply by inheriting it from the "outer" solver.  Now, it is completely reasonable</div><div>to expect the inner and outer A00 KSPs to have different prefixes so that they can be configured differently.</div>



<div>In fact, there was a recent petsc-users request related to this (<a href="http://lists.mcs.anl.gov/pipermail/petsc-users/2012-June/014005.html" target="_blank">http://lists.mcs.anl.gov/pipermail/petsc-users/2012-June/014005.html</a>).  </div>



<div>However, currently the inner A00 KSP inherits the prefix from the A11 KSP corresponding to the "1" field. With this prefix choice </div><div>I end up configuring inv(A00) and inv(S) identically, which isn't what I want at all. </div>



<div>I'm not sure what the right approach is, but the current one doesn't work for me.  </div><div><br></div><div>Note also that if A00 is treated with a recursive split, there may be numerous options for the A00 KSP.</div>



<div>Do we want to repeat them for the inner and outer KSPs, if we want to configure them identically?</div><div>It's automatic, if the two A00 KSPs share a prefix.  Again, this takes away some flexibility, so maybe it's not the best solution,</div>



<div>but I think retaining a simple option for using identical configurations  is also highly desirable.</div><div><br></div><div>Any ideas on how to handle this?</div><span><font color="#888888"><div>Dmitry.</div>

</font></span><div><div><div><br><div class="gmail_quote">On Tue, Jun 26, 2012 at 6:13 AM, Matthew Knepley <span dir="ltr"><<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>></span> wrote:<br>



<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
It turns out that 'hg rollback' during an 'hg rebase' does not do what I thought it did. I think<div>everything is cleaned up with this push, but if you made FS changes in the past month, please</div><div>




check that it is doing what you want with prefixes, etc.</div>
<div><br></div><div>Now, nested fieldsplits from the command line work, ala</div><div><br></div><div>-ksp_type fgmres</div><div>-pc_type fieldsplit -pc_fieldsplit_type additive</div><div>  -pc_fieldsplit_0_fields 0,1</div>





<div>    -fieldsplit_0_pc_type fieldsplit</div><div>    -fieldsplit_0_pc_fieldsplit_type schur -fieldsplit_0_pc_fieldsplitschur_factorization_type full</div><div>      -fieldsplit_0_fieldsplit_velocity_ksp_type preonly</div>





<div>      -fieldsplit_0_fieldsplit_velocity_pc_type lu</div><div>      -fieldsplit_0_fieldsplit_pressure_ksp_rtol 1e-10</div><div>      -fieldsplit_0_fieldsplit_pressure_pc_type jacobi</div><div></div><div>  -pc_fieldsplit_1_fields 2</div>





<div>    -fieldsplit_temperature_ksp_type preonly</div>    -fieldsplit_temperature_pc_type lu<br clear="all"><div><br></div><div>A split with only one field gets the field name, and otherwise a split number.</div><div><br>





</div><div>    Matt</div><span><font color="#888888"><div><br></div><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>

</div>
</font></span></blockquote></div><br></div>
</div></div></div><br></div></div></div>
</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>