<div dir="ltr"><div dir="ltr">On Mon, Mar 23, 2020 at 8:38 AM Elias Karabelas <<a href="mailto:karabelaselias@gmail.com">karabelaselias@gmail.com</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
  
    
  
  <div>
    <p><br>
    </p>
    <div>On 23/03/2020 13:36, Matthew Knepley
      wrote:<br>
    </div>
    <blockquote type="cite">
      
      <div dir="ltr">
        <div dir="ltr">On Mon, Mar 23, 2020 at 8:31 AM Elias Karabelas
          <<a href="mailto:karabelaselias@gmail.com" target="_blank">karabelaselias@gmail.com</a>>
          wrote:<br>
        </div>
        <div class="gmail_quote">
          <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
            <div>
              <p>Dear Matt,</p>
              <p>I've just found this answer from 2014</p>
              <p><a href="https://lists.mcs.anl.gov/pipermail/petsc-users/2014-August/022450.html" target="_blank">https://lists.mcs.anl.gov/pipermail/petsc-users/2014-August/022450.html</a></p>
              <p>wondering if this would theoretically work.</p>
            </div>
          </blockquote>
          <div>In serial certainly, I just don't see how it works in
            parallel since you might not own the row you need from the
            transpose. </div>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
            <div>
              <p>And the thing with this FCT-Schemes is, that they're
                build on purely algebraic considerations (like AMG) so I
                don't want to break it back down to mesh information if
                possible at all.</p>
            </div>
          </blockquote>
          <div>The FEM-FCT I am familiar with from Lohner was phrased on
            a mesh.</div>
        </div>
      </div>
    </blockquote>
    <p>Can you give me a reference to that? I based my things on this
      work <a href="https://www.sciencedirect.com/science/article/pii/S0045782508003150#!" target="_blank">https://www.sciencedirect.com/science/article/pii/S0045782508003150#!</a></p></div></blockquote><div>Volker is of course great. I believe I was thinking of <a href="https://onlinelibrary.wiley.com/doi/abs/10.1002/fld.1650071007">https://onlinelibrary.wiley.com/doi/abs/10.1002/fld.1650071007</a></div><div><br></div><div>  Thanks,</div><div><br></div><div>    Matt <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>
    <p>Best regards</p>
    <p>Elias<br>
    </p>
    <p><br>
    </p>
    <blockquote type="cite">
      <div dir="ltr">
        <div class="gmail_quote">
          <div><br>
          </div>
          <div>  Thanks,</div>
          <div><br>
          </div>
          <div>    Matt </div>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
            <div>
              <p>Best regards</p>
              <p>Elias<br>
              </p>
              <div>On 23/03/2020 13:02, Matthew Knepley wrote:<br>
              </div>
              <blockquote type="cite">
                <div dir="ltr">
                  <div dir="ltr">On Mon, Mar 23, 2020 at 7:46 AM Elias
                    Karabelas <<a href="mailto:karabelaselias@gmail.com" target="_blank">karabelaselias@gmail.com</a>>
                    wrote:<br>
                  </div>
                  <div class="gmail_quote">
                    <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Dear Users,<br>
                      <br>
                      I want to implement a FCT (flux corrected
                      transport) scheme with PETSc. <br>
                      To this end I have amongst other things create a
                      Matrix whose entries <br>
                      are given by<br>
                      <br>
                      L_ij = -max(0, A_ij, A_ji) for i neq j<br>
                      <br>
                      L_ii = Sum_{j=0,..n, j neq i} L_ij<br>
                      <br>
                      where Mat A is an (non-symmetric) Input Matrix
                      created beforehand.<br>
                      <br>
                      I was wondering how to do this. My first search
                      brought me to <br>
                      <a href="https://www.mcs.anl.gov/petsc/petsc-current/src/mat/examples/tutorials/ex16.c.html" rel="noreferrer" target="_blank">https://www.mcs.anl.gov/petsc/petsc-current/src/mat/examples/tutorials/ex16.c.html</a>
                      <br>
                      <br>
                      <br>
                      but this just goes over the rows of one matrix to
                      set new values and now <br>
                      I would need to run over the rows and columns of
                      the matrix. My Idea was <br>
                      to just create a transpose of A and do the same
                      but then the row-layout <br>
                      will be different and I can't use the same for
                      loop for A and AT and <br>
                      thus also won't be able to calculate the max's
                      above.<br>
                      <br>
                      Any help would be appreciated<br>
                    </blockquote>
                    <div><br>
                    </div>
                    <div>I think it would likely be much easier to write
                      your algorithm directly on the mesh, rather than
                      using matrices, since the locality information is
                      explicit with the mesh, but has to be
                      reconstructed with the matrix.</div>
                    <div><br>
                    </div>
                    <div>The problem here is that in parallel there
                      would be no easy way to get the halo you need
                      using a matrix. You</div>
                    <div>really want the ghosted space for assembly, and
                      that is provided by the DM objects. Does this make
                      sense?</div>
                    <div>Unless anybody in PETSc has a better idea.</div>
                    <div><br>
                    </div>
                    <div>  Thanks,</div>
                    <div><br>
                    </div>
                    <div>     Matt</div>
                    <div> <br>
                    </div>
                    <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> Best regards<br>
                      <br>
                      Elias<br>
                      <br>
                    </blockquote>
                  </div>
                  <br clear="all">
                  <div><br>
                  </div>
                  -- <br>
                  <div dir="ltr">
                    <div dir="ltr">
                      <div>
                        <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.cse.buffalo.edu/~knepley/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br>
                              </div>
                            </div>
                          </div>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </blockquote>
            </div>
          </blockquote>
        </div>
        <br clear="all">
        <div><br>
        </div>
        -- <br>
        <div dir="ltr">
          <div dir="ltr">
            <div>
              <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.cse.buffalo.edu/~knepley/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
  </div>

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