<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hi.<br>
    I agree that we need to improve the matrix class (again).<br>
    Splitting the preconditioning away from the matrix class. Actually
    it does not<br>
    belong in the matrix class but in the inverse class....<br>
    Just a question for a quick fix: why can't you use the<br>
    SparseRowLinearOperator?<br>
    That class should work also with BlockVectorDF and you should be
    able to assemble a<br>
    non square matrix.<br>
    Andreas<br>
    <br>
    On 02/10/14 17:36, Sacconi, Andrea wrote:<br>
    <span style="white-space: pre;">> Hi all,<br>
      ><br>
      > thanks to Tobias for the effort. If you want to see the
      errors, I forgot to comment the include of surfacelaplace.hh. If
      you comment that line, you should be able to replicate the
      compilation errors I got.<br>
      ><br>
      > Anyway, as you pointed out, the problem is the
      preconditioning.<br>
      > Let me know about the trunk; we have installed both the 1.4.0
      and the trunk, so I could recompile everything with the trunk when
      you push the changes (provided they are working), hoping that not
      many other modifications have been made ......<br>
      ><br>
      > Thanks again!<br>
      > Andrea<br>
      > __________________________________________________________<br>
      ><br>
      > Andrea Sacconi<br>
      > PhD student, Applied Mathematics<br>
      > AMMP Section, Department of Mathematics, Imperial College
      London,<br>
      > London SW7 2AZ, UK<br>
      > <a class="moz-txt-link-abbreviated" href="mailto:a.sacconi11@imperial.ac.uk">a.sacconi11@imperial.ac.uk</a><br>
      ><br>
      > ________________________________________<br>
      > From: Tobias Malkmus [<a class="moz-txt-link-abbreviated" href="mailto:tomalk@mathematik.uni-freiburg.de">tomalk@mathematik.uni-freiburg.de</a>]<br>
      > Sent: 02 October 2014 16:16<br>
      > To: Sacconi, Andrea; Andreas Dedner;
      <a class="moz-txt-link-abbreviated" href="mailto:dune-fem@dune-project.org">dune-fem@dune-project.org</a><br>
      > Subject: Re: [dune-fem] Does anyone use
      fem::ISTLLinearOperator for rectangular matrices?<br>
      ></span><br>
    <blockquote type="cite">Hi Andrea, Andreas<br>
      <br>
      Since the example of Andrea does not compile, there are some files<br>
      missing, it wrote a small example code for the case domainSpace !=<br>
      rangeSpace with ISTLLinearOeprator, main file is attached.<br>
      <br>
      The problem is that the preconditioners (istl and fem) are hard
      linked<br>
      into the matrix class. Most of the preconditioners expect
      domainSpace<br>
      == rangeSpace.<br>
      <br>
      In a private branch i have extracted them into a separate class
      some<br>
      time ago, i will see whether i can merge this changes into the
      master.<br>
      <br>
      Andrea, this means you will have to change to the master branch of<br>
      dune-fem or will have to wait for the next release.<br>
      <br>
      I think its time to review the matrix implementations and
      bindings.<br>
      <br>
      Best Tobias<br>
      <br>
      On 10/02/2014 02:43 PM, Sacconi, Andrea wrote:<br>
      > Hi Andreas,<br>
      <br>
      > the problem is (or at least I think it is) related to the<br>
      > definition of the preconditioner. When the matrix is square,<br>
      > everything goes fine, I have already solved Poisson and other
      stuff<br>
      > using ISTLLinearOperator class successfully.<br>
      <br>
      > When instead I need to assemble a rectangular matrix, since<br>
      > DomainType and RangeType are different, issues arise. In this
      case,<br>
      > preconditioning doesn't have much sense, and the compiler
      complains<br>
      > that methods are not compatible or some conversions can't be
      made.<br>
      > I attach a simple test case (with Makefile.am, main file,
      operator<br>
      > definition and output of the compilation).<br>
      <br>
      > Thanks for your help! Andrea<br>
      > __________________________________________________________<br>
      <br>
      > Andrea Sacconi PhD student, Applied Mathematics AMMP Section,<br>
      > Department of Mathematics, Imperial College London, London
      SW7 2AZ,<br>
      > UK <a class="moz-txt-link-abbreviated" href="mailto:a.sacconi11@imperial.ac.uk">a.sacconi11@imperial.ac.uk</a><br>
      <br>
      > ________________________________________ From:<br>
      > <a class="moz-txt-link-abbreviated" href="mailto:dune-fem-bounces+a.sacconi11=imperial.ac.uk@dune-project.org">dune-fem-bounces+a.sacconi11=imperial.ac.uk@dune-project.org</a><br>
      >
      [<a class="moz-txt-link-abbreviated" href="mailto:dune-fem-bounces+a.sacconi11=imperial.ac.uk@dune-project.org">dune-fem-bounces+a.sacconi11=imperial.ac.uk@dune-project.org</a>] on<br>
      > behalf of Andreas Dedner [<a class="moz-txt-link-abbreviated" href="mailto:a.s.dedner@warwick.ac.uk">a.s.dedner@warwick.ac.uk</a>] Sent: 02<br>
      > October 2014 13:27 To: <a class="moz-txt-link-abbreviated" href="mailto:dune-fem@dune-project.org">dune-fem@dune-project.org</a> Subject: Re:<br>
      > [dune-fem] Does anyone use fem::ISTLLinearOperator for
      rectangular<br>
      > matrices?<br>
      <br>
      > Hi Andreas. Whats the issue? I'm not doing it (but I thought
      I<br>
      > tried that in some project). What sort of error messages are
      you<br>
      > getting? Andreas<br>
      <br>
      > On 02/10/14 11:35, Sacconi, Andrea wrote:<br>
      >> Hi all,<br>
      >><br>
      >> is there anyone in dune-fem community successfully using
      and<br>
      >> assembling a rectangular operator (for example,
      divergence of the<br>
      >> velocity in Stokes, or any operator with domain and range
      with<br>
      >> different dimensions), with Dune::Fem::ISTLLinearOperator
      as<br>
      >> linear operator counterpart (instead of<br>
      >> Dune::Fem::SparseRowLinearOperator)?<br>
      >><br>
      >> Cheers, Andrea<br>
      >>
      __________________________________________________________<br>
      >><br>
      >> Andrea Sacconi PhD student, Applied Mathematics AMMP
      Section,<br>
      >> Department of Mathematics, Imperial College London,
      London SW7<br>
      >> 2AZ, UK <a class="moz-txt-link-abbreviated" href="mailto:a.sacconi11@imperial.ac.uk">a.sacconi11@imperial.ac.uk</a><br>
      >><br>
      >> _______________________________________________ dune-fem
      mailing<br>
      >> list <a class="moz-txt-link-abbreviated" href="mailto:dune-fem@dune-project.org">dune-fem@dune-project.org</a><br>
      >> <a class="moz-txt-link-freetext" href="http://lists.dune-project.org/mailman/listinfo/dune-fem">http://lists.dune-project.org/mailman/listinfo/dune-fem</a><br>
      <br>
      <br>
      > _______________________________________________ dune-fem
      mailing<br>
      > list <a class="moz-txt-link-abbreviated" href="mailto:dune-fem@dune-project.org">dune-fem@dune-project.org</a><br>
      > <a class="moz-txt-link-freetext" href="http://lists.dune-project.org/mailman/listinfo/dune-fem">http://lists.dune-project.org/mailman/listinfo/dune-fem</a><br>
      <br>
      <br>
      <br>
      > _______________________________________________ dune-fem
      mailing<br>
      > list <a class="moz-txt-link-abbreviated" href="mailto:dune-fem@dune-project.org">dune-fem@dune-project.org</a><br>
      > <a class="moz-txt-link-freetext" href="http://lists.dune-project.org/mailman/listinfo/dune-fem">http://lists.dune-project.org/mailman/listinfo/dune-fem</a><br>
      <br>
      <br>
      <br>
    </blockquote>
    <br>
  </body>
</html>