<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Sun, Dec 24, 2017 at 3:43 AM, Mohammad Hassan Baghaei <span dir="ltr"><<a href="mailto:mhbaghaei@mail.sjtu.edu.cn" target="_blank">mhbaghaei@mail.sjtu.edu.cn</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div class="gmail-m_4303794114278009238WordSection1"><p class="gmail-MsoNormal">Hello<u></u><u></u></p><p class="gmail-MsoNormal">I am using the DMPlex interface for the solving PDEs.</p></div></div></blockquote><div><br></div><div>Great. What discretization are you using?</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div class="gmail-m_4303794114278009238WordSection1"><p class="gmail-MsoNormal"> A  part of mesh, considering, is staggered grid, at the location of middle of each edge.</p></div></div></blockquote><div><br></div><div>So you would like to put variables at each edge midpoint?</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div class="gmail-m_4303794114278009238WordSection1"><p class="gmail-MsoNormal"> After generation of main grid points, I find it hard to have the staggered grid at the prescribed location.</p></div></div></blockquote><div><br></div><div>In Plex, the topology is specified by the DMPlex, but the dof layout is specified by a PetscSection. To put</div><div>variables on edges, you could use:</div><div><br></div><div>DMGetDefaultSection(dm, &s);</div><div>DMPlexGetDepthStratum(dm, 1, &eStart, &eEnd);</div><div>for (e = eStart; e < eEnd; ++e) {</div><div>  PetscSectionAddDof(s, e, 1);</div><div>}</div><div><br></div><div>and of course any other dofs you are using.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div class="gmail-m_4303794114278009238WordSection1"><p class="gmail-MsoNormal"> I want to know how to deal with the staggered besides of main grid. Is it better to have another DM for the staggered?</p></div></div></blockquote><div><br></div><div>Another option is to use several DMDA. This has its own drawbacks.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div class="gmail-m_4303794114278009238WordSection1"><p class="gmail-MsoNormal"> Is it possible to extend the DMChart and inserting the points.</p></div></div></blockquote><div><br></div><div>If the chart does not have edges, it is because it has not been interpolated. Either pass the PETSC_TRUE, or call</div><div><br></div><div>  <a href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/DMPLEX/DMPlexInterpolate.html">http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/DMPLEX/DMPlexInterpolate.html</a></div><div><br></div><div>  Thanks,</div><div><br></div><div>      Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div class="gmail-m_4303794114278009238WordSection1"><p class="gmail-MsoNormal"> I would really appreciate for your time.<u></u><u></u></p><p class="gmail-MsoNormal">Amir  <u></u><u></u></p></div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="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>