<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">On 16/10/17 13:12, Matthew Knepley
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAMYG4G==29ezkub=zSq9LCKqWT8xCxmzpCrTOr-cQy8ojUD2jQ@mail.gmail.com">
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      <div dir="ltr">
        <div class="gmail_extra">
          <div class="gmail_quote"><br>
            <div>Okay, I was wrong about what gets produced. Barry
              rewrote the Fortran bindings last, and I did not
              understand how everything</div>
            <div>was put together. You will need to make some
              modifications. Here is the idea: we build an F90 module
              for each class, and your</div>
            <div>stuff will go in the Vec module here:</div>
            <div><br>
            </div>
            <div>  <a
href="https://bitbucket.org/petsc/petsc/src/c99b676fdc4d0978b5621d138ceee2e1b7869aa6/src/vec/f90-mod/petscvecmod.F?at=master&fileviewer=file-view-default"
                moz-do-not-send="true">https://bitbucket.org/petsc/petsc/src/c99b676fdc4d0978b5621d138ceee2e1b7869aa6/src/vec/f90-mod/petscvecmod.F?at=master&fileviewer=file-view-default</a></div>
            <div><br>
            </div>
            <div>You will need to make a module in this file petscsf. It
              should look about like the petscao module. That means
              making</div>
            <div>a petscsf.h90 with your new interfaces, like this one</div>
            <div><br>
            </div>
            <div>  <a
href="https://bitbucket.org/petsc/petsc/src/c99b676fdc4d0978b5621d138ceee2e1b7869aa6/src/vec/f90-mod/petscis.h90?at=master&fileviewer=file-view-default"
                moz-do-not-send="true">https://bitbucket.org/petsc/petsc/src/c99b676fdc4d0978b5621d138ceee2e1b7869aa6/src/vec/f90-mod/petscis.h90?at=master&fileviewer=file-view-default</a></div>
            <div><br>
            </div>
            <div>and also a generic petscsf.h, like this one</div>
            <div><br>
            </div>
            <div>  <a
href="https://bitbucket.org/petsc/petsc/src/c99b676fdc4d0978b5621d138ceee2e1b7869aa6/src/vec/f90-mod/petscao.h?at=master&fileviewer=file-view-default"
                moz-do-not-send="true">https://bitbucket.org/petsc/petsc/src/c99b676fdc4d0978b5621d138ceee2e1b7869aa6/src/vec/f90-mod/petscao.h?at=master&fileviewer=file-view-default</a></div>
            <div><br>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    This last file petscao.h is including a "petsc/finclude/petscao.h",
    which contains various definitions including the definition of AO.
    Do I need to make some sort of similar "petsc/finclude/petscsf.h"?<br>
    <br>
    It looks like PetscSF is already defined inside
    petsc/finclude/petscis.h. It's not clear to me which bits of the SF
    interface need to be in their own files and which are lumped in with
    the IS interface.<br>
    <br>
    - Adrian<br>
    <pre class="moz-signature" cols="72">-- 
Dr Adrian Croucher
Senior Research Fellow
Department of Engineering Science
University of Auckland, New Zealand
email: <a class="moz-txt-link-abbreviated" href="mailto:a.croucher@auckland.ac.nz">a.croucher@auckland.ac.nz</a>
tel: +64 (0)9 923 4611
</pre>
  </body>
</html>