<div dir="ltr">On Fri, Jul 19, 2013 at 9:17 PM, subramanya sadasiva <span dir="ltr"><<a href="mailto:potaman@outlook.com" target="_blank">potaman@outlook.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<div><div dir="ltr">Hi Matt, <div>I am using Libmesh so the DM stuff is actually in the background, and unfortunately the matrix doesn't have a saddle point, </div><div>I thought that <br><div><br><div>  -ch_solve_fieldsplit_block_size 2</div>
<div>  -ch_solve_fieldsplit_0_fields 0</div><span style="font-size:12pt">  -ch_solve_fieldsplit_1_fields 1</span></div></div></div></div></blockquote><div><br></div><div>The block_size argument presumes you are using a DA. Are you?</div>
<div><br></div><div>The other two options just say select the first DM field as field 0 in this PC, and the same with the second field. The</div><div>DM must inform the PC about the initial field decomposition.</div><div>
 </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div dir="ltr"><div><div>would inform the solver of the structure. If this doesn't work owing to the fact that the problem is only being solved on a section of the mesh (because of the reduced space method), I guess I will have to use the PetscSection. Does that sound right?</div>
</div></div></div></blockquote><div><br></div><div>First, I think the right people to do this are the Libmesh people (we will of course help them). Second, you have not said</div><div>whether you are using a structured or unstructured mesh. What DM class does the solver actually see?</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"><div><div dir="ltr"><div><div>Thanks, </div>
<div>Subramanya </div><div>  </div><div><br></div><div>Subject: Re: [petsc-users] Trying to set up a field-split preconditioner<br>From: <a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a><br>To: <a href="mailto:potaman@outlook.com" target="_blank">potaman@outlook.com</a><br>
CC: <a href="mailto:petsc-users@mcs.anl.gov" target="_blank">petsc-users@mcs.anl.gov</a>; <a href="mailto:libmesh-users@lists.sourceforge.net" target="_blank">libmesh-users@lists.sourceforge.net</a><br><br><div dir="ltr">
On Fri, Jul 19, 2013 at 7:56 PM, subramanya sadasiva <span dir="ltr"><<a href="mailto:potaman@outlook.com" target="_blank">potaman@outlook.com</a>></span> wrote:<br><div><div>
<blockquote style="border-left:1px #ccc solid;padding-left:1ex">


<div><div dir="ltr">


<div dir="ltr">Hi, <br>I am trying to set up a fieldsplit preconditioner for my Cahn Hilliard solver and I get the following error, </div></div></div></blockquote><div><br></div><div>You have to tell the PCFIELDSPLIT about the dofs in each field. So</div>

<div><br></div><div>1) You are probably not using a DA, since it would tell it automatically</div><div><br></div><div>2) If you have a saddle point, you can use -pc_fieldsplit_detect_saddle_point</div><div><br></div><div>

3) If none of those apply, you can set a PetscSection describing your layout to the DM for the solver.<br></div><div>     Since this is new, I suspect you will need help, so mail back.</div><div><br></div><div>  Thanks,</div>

<div><br></div><div>     Matt</div><div> </div><blockquote style="border-left:1px #ccc solid;padding-left:1ex"><div><div dir="ltr"><div dir="ltr"><div><div><br></div><div>[0]PETSC ERROR: --------------------- Error Message ------------------------------------</div>

<div>[0]PETSC ERROR: Petsc has generated inconsistent data!</div><div>[0]PETSC ERROR: Unhandled case, must have at least two fields, not 0!</div><div>[0]PETSC ERROR: ------------------------------------------------------------------------</div>

</div><div><br></div><div>These are the options that I am using, </div><div><div>-ch_solve is just a prefix. </div><div><br></div><div><br></div><div><br></div><div>-<span style="font-size:12pt">ch_solve_pc_type fieldsplit</span></div>

<div>-ch_solve_pc_fieldsplit_type schur</div><div>-ch_solve_fieldsplit_block_size 2</div><div>-ch_solve_fieldsplit_0_field 1</div><div>-ch_solve_fieldsplit_1_field 0</div><div>-ch_solve_fieldsplit_0_ksp_type cg </div><div>

-ch_solve_fieldsplit_0_pc_type hypre</div><div>-ch_solve_fieldsplit_0_pc_type_hypre boomeramg </div><div>-ch_solve_fieldsplit_1_ksp_type cg</div><div>-ch_solve_fieldsplit_1_pc_type hypre </div><div>-ch_solve_fieldsplit_1_pc_type_hypre boomeramg</div>

</div><div><br></div><div>Any ideas?</div><div><br></div><div>Thanks,</div><div>Subramanya </div><div><br></div></div><span class="HOEnZb"><font color="#888888">
                                          </font></span></div></div><span class="HOEnZb"><font color="#888888">
</font></span></blockquote></div><span class="HOEnZb"><font color="#888888"><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
</font></span></div></div></div></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
</div></div>