I have a couple of questions about the usage DMGetSubDM() to define the splits:<div>1) Should this be DMGetFieldSubDM(), since I can imagine other types of subDMs (e.g., for a DD subdomain)?</div><div>In fact, I would advocate something like DMGetFieldSplitSubDM(), because term "field" is getting abused and means</div>


<div>both an elementary building block with a split defined by DMGetSubDM() composed of several such fields and the split itself. </div><div>2) Why not refer to the fields by string names?  A DM could advertise its available fields via DMGetFieldNames() or similar,</div>


<div>with default field names such as "0", "1", etc.  DMGetFieldSplitSubDM() would take a list of string constants from the list returned</div><div>by DMGetFieldNames().</div><div><br></div><div>This can be implemented independently of DMGetSubDM() to allow both designs to evolve to the point where they can be merged.</div>


<div><br></div><div>Dmitry.</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>