[dune-fem] Does anyone use fem::ISTLLinearOperator for rectangular matrices?

Andreas Dedner a.s.dedner at warwick.ac.uk
Thu Oct 2 20:45:23 CEST 2014


Hi.
I agree that we need to improve the matrix class (again).
Splitting the preconditioning away from the matrix class. Actually it
does not
belong in the matrix class but in the inverse class....
Just a question for a quick fix: why can't you use the
SparseRowLinearOperator?
That class should work also with BlockVectorDF and you should be able to
assemble a
non square matrix.
Andreas

On 02/10/14 17:36, Sacconi, Andrea wrote:
> Hi all,
>
> 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.
>
> Anyway, as you pointed out, the problem is the preconditioning.
> 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 ......
>
> Thanks again!
> Andrea
> __________________________________________________________
>
> Andrea Sacconi
> PhD student, Applied Mathematics
> AMMP Section, Department of Mathematics, Imperial College London,
> London SW7 2AZ, UK
> a.sacconi11 at imperial.ac.uk
>
> ________________________________________
> From: Tobias Malkmus [tomalk at mathematik.uni-freiburg.de]
> Sent: 02 October 2014 16:16
> To: Sacconi, Andrea; Andreas Dedner; dune-fem at dune-project.org
> Subject: Re: [dune-fem] Does anyone use fem::ISTLLinearOperator for
rectangular matrices?
>
> Hi Andrea, Andreas
>
> Since the example of Andrea does not compile, there are some files
> missing, it wrote a small example code for the case domainSpace !=
> rangeSpace with ISTLLinearOeprator, main file is attached.
>
> The problem is that the preconditioners (istl and fem) are hard linked
> into the matrix class. Most of the preconditioners expect domainSpace
> == rangeSpace.
>
> In a private branch i have extracted them into a separate class some
> time ago, i will see whether i can merge this changes into the master.
>
> Andrea, this means you will have to change to the master branch of
> dune-fem or will have to wait for the next release.
>
> I think its time to review the matrix implementations and bindings.
>
> Best Tobias
>
> On 10/02/2014 02:43 PM, Sacconi, Andrea wrote:
> > Hi Andreas,
>
> > the problem is (or at least I think it is) related to the
> > definition of the preconditioner. When the matrix is square,
> > everything goes fine, I have already solved Poisson and other stuff
> > using ISTLLinearOperator class successfully.
>
> > When instead I need to assemble a rectangular matrix, since
> > DomainType and RangeType are different, issues arise. In this case,
> > preconditioning doesn't have much sense, and the compiler complains
> > that methods are not compatible or some conversions can't be made.
> > I attach a simple test case (with Makefile.am, main file, operator
> > definition and output of the compilation).
>
> > Thanks for your help! Andrea
> > __________________________________________________________
>
> > Andrea Sacconi PhD student, Applied Mathematics AMMP Section,
> > Department of Mathematics, Imperial College London, London SW7 2AZ,
> > UK a.sacconi11 at imperial.ac.uk
>
> > ________________________________________ From:
> > dune-fem-bounces+a.sacconi11=imperial.ac.uk at dune-project.org
> > [dune-fem-bounces+a.sacconi11=imperial.ac.uk at dune-project.org] on
> > behalf of Andreas Dedner [a.s.dedner at warwick.ac.uk] Sent: 02
> > October 2014 13:27 To: dune-fem at dune-project.org Subject: Re:
> > [dune-fem] Does anyone use fem::ISTLLinearOperator for rectangular
> > matrices?
>
> > Hi Andreas. Whats the issue? I'm not doing it (but I thought I
> > tried that in some project). What sort of error messages are you
> > getting? Andreas
>
> > On 02/10/14 11:35, Sacconi, Andrea wrote:
> >> Hi all,
> >>
> >> is there anyone in dune-fem community successfully using and
> >> assembling a rectangular operator (for example, divergence of the
> >> velocity in Stokes, or any operator with domain and range with
> >> different dimensions), with Dune::Fem::ISTLLinearOperator as
> >> linear operator counterpart (instead of
> >> Dune::Fem::SparseRowLinearOperator)?
> >>
> >> Cheers, Andrea
> >> __________________________________________________________
> >>
> >> Andrea Sacconi PhD student, Applied Mathematics AMMP Section,
> >> Department of Mathematics, Imperial College London, London SW7
> >> 2AZ, UK a.sacconi11 at imperial.ac.uk
> >>
> >> _______________________________________________ dune-fem mailing
> >> list dune-fem at dune-project.org
> >> http://lists.dune-project.org/mailman/listinfo/dune-fem
>
>
> > _______________________________________________ dune-fem mailing
> > list dune-fem at dune-project.org
> > http://lists.dune-project.org/mailman/listinfo/dune-fem
>
>
>
> > _______________________________________________ dune-fem mailing
> > list dune-fem at dune-project.org
> > http://lists.dune-project.org/mailman/listinfo/dune-fem
>
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.dune-project.org/pipermail/dune-fem/attachments/20141002/c0b7ff3d/attachment.htm>


More information about the dune-fem mailing list