<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <p><br>
    </p>
    <br>
    <div class="moz-cite-prefix">On 18-03-04 08:08 AM, Matthew Knepley
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAMYG4G=V0QYNdByAPO6kR5UpYCjmj72e2zBqrJO_5myUK1DQew@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div class="gmail_extra">
          <div class="gmail_quote">On Fri, Mar 2, 2018 at 3:22 PM,
            Danyang Su <span dir="ltr"><<a moz-do-not-send="true"
                href="mailto:danyang.su@gmail.com" target="_blank">danyang.su@gmail.com</a>></span>
            wrote:<br>
            <blockquote class="gmail_quote" style="margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <div text="#000000" bgcolor="#FFFFFF">
                <p>Hi Matt,<br>
                </p>
                I use the latest Fortran style in PETSc 3.8. Enclosed
                are the PETSc configuration, code compiling log and the
                function that causes compiling error. The compiling
                error happens after I include petscsf.h in the following
                section. I didn't find petscsf.h in petsc/finclude/
                folder so I use the head file in the 'include' folder
                and this seems not allowed.<br>
              </div>
            </blockquote>
            <div><br>
            </div>
            <div>I apologize for taking so long. The PetscSF definitions
              are in</div>
            <div><br>
            </div>
            <div><span
style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">#include
                <petsc/finclude/petscis.h></span><br
style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial">
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    Hi Matt,<br>
    <br>
    After including <br>
    #include <petsc/finclude/petscis.h><br>
          use petscis<br>
    <br>
    I still get error saying undefined reference to `petscsfgetgraph_'<br>
    <br>
    Did I miss any other head file?<br>
    <br>
    Thanks,<br>
    <br>
    Danyang<br>
    <blockquote
cite="mid:CAMYG4G=V0QYNdByAPO6kR5UpYCjmj72e2zBqrJO_5myUK1DQew@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div class="gmail_extra">
          <div class="gmail_quote">
            <div><br>
            </div>
            <div>You are correct that they should be moved out.</div>
            <div><br>
            </div>
            <div>  Thanks,</div>
            <div><br>
            </div>
            <div>     Matt</div>
            <div><br>
            </div>
            <blockquote class="gmail_quote" style="margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <div text="#000000" bgcolor="#FFFFFF"> #ifdef PETSC_V3_8_X<br>
                <br>
                #include <petsc/finclude/petscsys.h><br>
                #include <petsc/finclude/petscdmplex.h><br>
                #include <petsc/finclude/petscdmlabel.<wbr>h><br>
                #include <petscsf.h><br>
                      use petscsys<br>
                      use petscdmplex<br>
                      use petscsf<br>
                <br>
                #endif<br>
                <br>
                Thanks,<br>
                <br>
                Danyang<br>
                <br>
                <br>
                <div class="m_3637613153403909148moz-cite-prefix">On
                  18-03-02 12:08 PM, Matthew Knepley wrote:<br>
                </div>
                <blockquote type="cite">
                  <div dir="ltr">
                    <div class="gmail_extra">
                      <div class="gmail_quote">On Fri, Mar 2, 2018 at
                        3:00 PM, Danyang Su <span dir="ltr"><<a
                            moz-do-not-send="true"
                            href="mailto:danyang.su@gmail.com"
                            target="_blank">danyang.su@gmail.com</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 bgcolor="#FFFFFF">
                            <p>On 18-03-02 10:58 AM, Matthew Knepley
                              wrote:<br>
                            </p>
                            <blockquote type="cite">
                              <div dir="ltr">
                                <div class="gmail_extra">
                                  <div class="gmail_quote">On Fri, Mar
                                    2, 2018 at 1:41 PM, Danyang Su <span
                                      dir="ltr"><<a
                                        moz-do-not-send="true"
                                        href="mailto:danyang.su@gmail.com"
                                        target="_blank">danyang.su@gmail.com</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 bgcolor="#FFFFFF"> <br>
                                        <div
class="m_3637613153403909148gmail-m_-2214224469709245128gmail-m_-4654060630000521438moz-cite-prefix">On
                                          18-02-19 03:30 PM, Matthew
                                          Knepley wrote:<br>
                                        </div>
                                        <blockquote type="cite">
                                          <div dir="ltr">
                                            <div class="gmail_extra">
                                              <div class="gmail_quote">On
                                                Mon, Feb 19, 2018 at
                                                3:11 PM, Danyang Su <span
                                                  dir="ltr"><<a
                                                    moz-do-not-send="true"
href="mailto:danyang.su@gmail.com" target="_blank">danyang.su@gmail.com</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">Hi
                                                  Matt,<br>
                                                  <br>
                                                  Would you please let
                                                  me know how to check
                                                  if a cell is local
                                                  owned? When overlap is
                                                  0 in DMPlexDistribute,
                                                  all the cells are
                                                  local owned. How about
                                                  overlap > 0? It
                                                  sounds like impossible
                                                  to check by node
                                                  because a cell can be
                                                  local owned even if
                                                  none of the nodes in
                                                  this cell is local
                                                  owned.<br>
                                                </blockquote>
                                                <div><br>
                                                </div>
                                                <div>If a cell is in the
                                                  PetscSF, then it is
                                                  not locally owned. The
                                                  local nodes in the SF
                                                  are sorted, so I use</div>
                                                <div>PetscFindInt (<a
                                                    moz-do-not-send="true"
href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/Sys/PetscFindInt.html"
                                                    target="_blank">http://www.mcs.anl.gov/petsc/<wbr>petsc-current/docs/manualpages<wbr>/Sys/PetscFindInt.html</a>).</div>
                                              </div>
                                            </div>
                                          </div>
                                        </blockquote>
                                        Hi Matt,<br>
                                        <br>
                                        Would you please give me a
                                        little more about how to mark
                                        the ghost cells when overlap
                                        > 0? What do you mean a cell
                                        is in the PetscSF? I use
                                        PetscSFView to export the graph
                                        (original mesh file pile.vtk)
                                        and it exports all the cells,
                                        including the ghost cells
                                        (PETScSFView.txt).<br>
                                      </div>
                                    </blockquote>
                                    <div><br>
                                    </div>
                                    <div>Yes, I will send you some
                                      sample code when I get time. The
                                      first problem is that you are
                                      looking at a different PetscSF.
                                      This looks like the</div>
                                    <div>one returned by
                                      DMPlexDistribute(). This is
                                      mapping the serial mesh to the
                                      parallel mesh. You want</div>
                                    <div><br>
                                    </div>
                                    <div>  <a moz-do-not-send="true"
href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/DM/DMGetPointSF.html"
                                        target="_blank">http://www.mcs.anl.gov/petsc<wbr>/petsc-current/docs/manualpage<wbr>s/DM/DMGetPointSF.html</a></div>
                                    <div><br>
                                    </div>
                                    <div>Then you can look at</div>
                                    <div><br>
                                    </div>
                                    <div>  <a moz-do-not-send="true"
href="https://bitbucket.org/petsc/petsc/src/1788fc36644e622df8cb1a0de85676ccc5af0239/src/dm/impls/plex/plexsubmesh.c?at=master&fileviewer=file-view-default#plexsubmesh.c-683"
                                        target="_blank">https://bitbucket.org/petsc/<wbr>petsc/src/1788fc36644e622df8cb<wbr>1a0de85676ccc5af0239/src/dm/<wbr>impls/plex/plexsubmesh.c?at=<wbr>master&fileviewer=file-view-<wbr>default#plexsubmesh.c-683</a></div>
                                    <div><br>
                                    </div>
                                    <div>I get the pointSF, get out the
                                      list of leaves, and find points in
                                      it using PetscFindInt()</div>
                                  </div>
                                </div>
                              </div>
                            </blockquote>
                            Hi Matt,<br>
                            By using the local dm, I can get the PetscSF
                            I want, as shown below. Now I need to get
                            the number of ghost cells or local cells
                            (here 4944) or number of leaves (here 825)
                            for each processor. I try to use
                            PetscSFGetGraph to get number of leaves in
                            Fortran. After including "petscsf.h", I got
                            compilation error saying "You need a ISO C
                            conforming compiler to use the glibc
                            headers". Is there any alternative way to do
                            this? I do not need the ghost-neighbor
                            mapping, but just the number of local owned
                            cells.<br>
                          </div>
                        </blockquote>
                        <div><br>
                        </div>
                        <div>Also, make sure you are using the latest
                          Fortran style for PETSc:</div>
                        <div><br>
                        </div>
                        <div>  <a moz-do-not-send="true"
href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/Sys/UsingFortran.html"
                            target="_blank">http://www.mcs.anl.gov/<wbr>petsc/petsc-current/docs/<wbr>manualpages/Sys/UsingFortran.<wbr>html</a></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 bgcolor="#FFFFFF">   [0] Number of
                            roots=11449, leaves=825, remote ranks=1<br>
                              [0] 4944 <- (1,0)<br>
                              [0] 4945 <- (1,28)<br>
                              [0] 4946 <- (1,56)<br>
                            ...<br>
                              [1] Number of roots=11695, leaves=538,
                            remote ranks=1<br>
                              [1] 5056 <- (0,21)<br>
                              [1] 5057 <- (0,43)<br>
                              [1] 5058 <- (0,65)<br>
                              [1] 5059 <- (0,87)<br>
                            <br>
                            In file included from
                            /usr/include/features.h:375:0,<br>
                                             from
                            /usr/include/stdio.h:28,<br>
                                             from
                            /home/dsu/Soft/PETSc/petsc-3.8<wbr>.3/include/petscsys.h:175,<br>
                                             from
                            /home/dsu/Soft/PETSc/petsc-3.8<wbr>.3/include/petscsf.h:7,<br>
                                             from
                            ../../solver/solver_ddmethod.F<wbr>90:4837:<br>
                            /usr/include/x86_64-linux-gnu/<wbr>sys/cdefs.h:30:3:
                            error: #error "You need a ISO C conforming
                            compile\<br>
                            r to use the glibc headers"<br>
                             # error "You need a ISO C conforming
                            compiler to use the glibc headers"<br>
                          </div>
                        </blockquote>
                        <div><br>
                        </div>
                        <div>Can you send this to <a
                            moz-do-not-send="true"
                            href="mailto:petsc-maint@mcs.anl.gov"
                            target="_blank">petsc-maint@mcs.anl.gov</a>?
                          It looks like a build problem that can be
                          fixed.</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 bgcolor="#FFFFFF"> Thanks,<br>
                            <br>
                            Danyang<br>
                            <blockquote type="cite">
                              <div dir="ltr">
                                <div class="gmail_extra">
                                  <div class="gmail_quote">
                                    <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 bgcolor="#FFFFFF"> Thanks,<br>
                                        <br>
                                        Danyang <br>
                                        <blockquote type="cite">
                                          <div dir="ltr">
                                            <div class="gmail_extra">
                                              <div class="gmail_quote">
                                                <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">
                                                  Thanks,<br>
                                                  <br>
                                                  Danyang<span
                                                    class="m_3637613153403909148gmail-HOEnZb"><font
                                                      color="#888888"><span
class="m_3637613153403909148gmail-m_-2214224469709245128gmail-HOEnZb"><font
color="#888888"><br>
                                                        </font></span></font></span></blockquote>
                                                <span
                                                  class="m_3637613153403909148gmail-HOEnZb"><font
                                                    color="#888888"> <span
class="m_3637613153403909148gmail-m_-2214224469709245128gmail-HOEnZb"><font
                                                        color="#888888">
                                                      </font></span></font></span></div>
                                              <span
                                                class="m_3637613153403909148gmail-HOEnZb"><font
                                                  color="#888888"> <span
class="m_3637613153403909148gmail-m_-2214224469709245128gmail-HOEnZb"><font
                                                      color="#888888">
                                                      -- <br>
                                                      <div
class="m_3637613153403909148gmail-m_-2214224469709245128gmail-m_-4654060630000521438gmail-m_-8557986044721592658gmail_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
                                                          moz-do-not-send="true"
href="http://www.caam.rice.edu/%7Emk51/" target="_blank">https://www.cse.buffalo.edu/~k<wbr>nepley/</a><br>
                                                          </div>
                                                          </div>
                                                          </div>
                                                        </div>
                                                      </div>
                                                    </font></span></font></span></div>
                                            <span
                                              class="m_3637613153403909148gmail-HOEnZb"><font
                                                color="#888888"> </font></span></div>
                                          <span
                                            class="m_3637613153403909148gmail-HOEnZb"><font
                                              color="#888888"> </font></span></blockquote>
                                        <span
                                          class="m_3637613153403909148gmail-HOEnZb"><font
                                            color="#888888"> <br>
                                          </font></span></div>
                                      <span
                                        class="m_3637613153403909148gmail-HOEnZb"><font
                                          color="#888888"> </font></span></blockquote>
                                    <span
                                      class="m_3637613153403909148gmail-HOEnZb"><font
                                        color="#888888"> </font></span></div>
                                  <span
                                    class="m_3637613153403909148gmail-HOEnZb"><font
                                      color="#888888"> <br>
                                      <br clear="all">
                                      <span class="HOEnZb"><font
                                          color="#888888">
                                          <div><br>
                                          </div>
                                          -- <br>
                                          <div
                                            class="m_3637613153403909148gmail-m_-2214224469709245128gmail_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
                                                      moz-do-not-send="true"
href="http://www.caam.rice.edu/%7Emk51/" target="_blank">https://www.cse.buffalo.edu/~k<wbr>nepley/</a><br>
                                                  </div>
                                                </div>
                                              </div>
                                            </div>
                                          </div>
                                        </font></span></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">
                                <br>
                              </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_3637613153403909148gmail_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 moz-do-not-send="true"
                                      href="http://www.caam.rice.edu/%7Emk51/"
                                      target="_blank">https://www.cse.buffalo.edu/~<wbr>knepley/</a><br>
                                  </div>
                                </div>
                              </div>
                            </div>
                          </div>
                        </font></span></div>
                  </div>
                </blockquote>
                <br>
              </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 moz-do-not-send="true"
                      href="http://www.caam.rice.edu/%7Emk51/"
                      target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
  </body>
</html>