<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Dec 13, 2017 at 7:25 AM, Santos Teixeira  Frederico <span dir="ltr"><<a href="mailto:fsantost@student.ethz.ch" target="_blank">fsantost@student.ethz.ch</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">




<div>
<div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt">Hi Matt,
<div><br>
</div>
<div>Thanks for your explanation.</div>
<div><br>
</div>
<div>The option -dm_refine worked for me because I could keep the effect of -<span style="font-size:13.3333px">dm_plex_separate_marker. </span><span style="font-size:13.3333px">I playing with Neumann and Dirichlet boundaries to solve the Poiseulle flow,
 so I need different ids. </span></div>
<div><span style="font-size:13.3333px"><br>
</span></div>
<div><span style="font-size:13.3333px">The function DMPlexMarkBoundaryFace would set all the points with the same id, right? </span></div></div></div></blockquote><div><br></div><div>Yes, you are right.</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 style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt">
<div>Regards,</div>
<div> Fred.</div>
<div><br>
</div>
<div><br>
<div style="font-family:Times New Roman;color:#000000;font-size:16px">
<hr>
<div id="m_-6603148162421102730divRpF456157" style="direction:ltr"><font face="Tahoma" size="2" color="#000000"><b>From:</b> Matthew Knepley [<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>]<br>
<b>Sent:</b> 13 December 2017 12:15<br>
<b>To:</b> Santos Teixeira Frederico<br>
<b>Cc:</b> <a href="mailto:petsc-users@mcs.anl.gov" target="_blank">petsc-users@mcs.anl.gov</a><br>
<b>Subject:</b> Re: [petsc-users] Problem with DMRefine and DMLabel<br>
</font><br>
</div>
<div></div>
<div>
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">On Wed, Dec 13, 2017 at 4:30 AM, Santos Teixeira Frederico
<span dir="ltr"><<a href="mailto:fsantost@student.ethz.ch" target="_blank">fsantost@student.ethz.ch</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>
<div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt">Hi folks,
<div><br>
</div>
<div>In the example SNES/62.c, when I use "-simplex 1" and "-refinement_limit 0.05", it seems the refined DMPlex does not carry all the labels from the original DM.</div>
</div>
</div>
</blockquote>
<div><br>
</div>
<div>This is correct. Here is the problem. When you use -refinement_limit (instead of -dm_refine), I call Triangle/TetGen to do</div>
<div>the refinement. They do not tell me how they changed the mesh to get there, so I have no way of propagating the labels.</div>
<div>There is a special name ("marker") that I was using for the boundary, which I automatically mark after generation.</div>
<div><br>
</div>
<div>We could choose to also mark boundary faces, but it seems redundant. If you want them marked, you can call</div>
<div>DMPlexMarkBoundaryFaces() on the new mesh. Does this seem reasonable?</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 style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt">
<div>You can see that if you place, in the function CreateMesh, one DMViewFromOptions right after the DMPlexCreateBoxMesh and another DMViewFromOptions after DMRefine. The first output is</div>
<div><br>
</div>
<div>
<div>DM Object: DM_0x84000000_0 1 MPI processes</div>
<div>  type: plex</div>
<div>DM_0x84000000_0 in 2 dimensions:</div>
<div>  0-cells: 9</div>
<div>  1-cells: 16</div>
<div>  2-cells: 8</div>
<div>Labels:</div>
<div>  Face Sets: 4 strata with value/size (1 (2), 4 (2), 2 (2), 3 (2))</div>
<div>  marker: 4 strata with value/size (4 (5), 1 (3), 2 (5), 3 (3))</div>
<div>  depth: 3 strata with value/size (0 (9), 1 (16), 2 (8))</div>
</div>
<div><br>
</div>
<div>which is correct w.r.t. the definition from DMPlexCreateBoxMesh. However, the second output is</div>
<div><br>
</div>
<div>
<div>DM Object: DM_0x84000000_1 1 MPI processes</div>
<div>  type: plex</div>
<div>DM_0x84000000_1 in 2 dimensions:</div>
<div>  0-cells: 145</div>
<div>  1-cells: 400</div>
<div>  2-cells: 256</div>
<div>Labels:</div>
<div>  marker: 4 strata with value/size (4 (3), 1 (57), 2 (3), 3 (1))</div>
<div>  depth: 3 strata with value/size (0 (145), 1 (400), 2 (256))</div>
<div><br>
</div>
<div>Note that the label "Face Sets" disappeared and that the label "marker" does not include all the boundary points.</div>
<div>The full set of options is:</div>
<div><br>
</div>
<div>
<div>-run_type full </div>
<div>-refinement_limit 0.005 </div>
<div>-simplex 1 </div>
<div>-dm_view </div>
<div>-dm_plex_separate_marker </div>
<div>-interpolate 1 </div>
<div>-vel_petscspace_order 2 </div>
<div>-pres_petscspace_order 1 </div>
<div>-ksp_view </div>
<div>-ksp_monitor</div>
<div>-ksp_type fgmres </div>
<div>-ksp_gmres_restart 10 </div>
<div>-ksp_rtol 1.0e-9 </div>
<div>-pc_type fieldsplit </div>
<div>-pc_fieldsplit_type schur </div>
<div>-pc_fieldsplit_schur_factoriza<wbr>tion_type full </div>
<div>-fieldsplit_pressure_ksp_rtol 1e-10 </div>
<div>-fieldsplit_velocity_ksp_type gmres </div>
<div>-fieldsplit_velocity_pc_type lu </div>
<div>-fieldsplit_pressure_pc_type jacobi </div>
<div>-snes_error_if_not_converged </div>
<div>-ksp_error_if_not_converged </div>
<div>-snes_view </div>
<div>-snes_monitor </div>
</div>
<div><br>
</div>
<div>Am I missing anything?</div>
<div><br>
</div>
<div>Regards,</div>
<div> Fred.</div><span class="HOEnZb"><font color="#888888">
</font></span></div><span class="HOEnZb"><font color="#888888">
</font></span></div><span class="HOEnZb"><font color="#888888">
</font></span></div><span class="HOEnZb"><font color="#888888">
</font></span></blockquote><span class="HOEnZb"><font color="#888888">
</font></span></div><span class="HOEnZb"><font color="#888888">
<br>
<br clear="all">
<div><br>
</div>
-- <br>
<div class="m_-6603148162421102730gmail_signature">
<div dir="ltr">
<div>
<div dir="ltr">
<div>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><br>
</div>
<div><a href="http://www.caam.rice.edu/~mk51/" target="_blank">https://www.cse.buffalo.edu/~<wbr>knepley/</a><br>
</div>
</div>
</div>
</div>
</div>
</font></span></div>
</div>
</div>
</div>
</div>
</div>

</div>

</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div>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><br></div><div><a href="http://www.caam.rice.edu/~mk51/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div>
</div></div>