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

Sacconi, Andrea a.sacconi11 at imperial.ac.uk
Thu Oct 2 23:10:58 CEST 2014


Hi Andreas,

thanks for your email.
SparseRowLinearOperator is fine, I have used the same code I attached in my previous email, in combination with AdaptiveDiscreteFunction, and even for rectangular matrices everything works correctly.
What I was trying to do is to use various iterative solvers from ISTL to compare different solution methods for my equations, and therefore I wanted to code everything with BlockVectorFunction and ISTLLinearOperator.

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
________________________________
From: Andreas Dedner [a.s.dedner at warwick.ac.uk]
Sent: 02 October 2014 19:45
To: Sacconi, Andrea
Cc: Tobias Malkmus; dune-fem at dune-project.org
Subject: Re: [dune-fem] Does anyone use fem::ISTLLinearOperator for rectangular matrices?

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<mailto:a.sacconi11 at imperial.ac.uk>
>
> ________________________________________
> From: Tobias Malkmus [tomalk at mathematik.uni-freiburg.de<mailto:tomalk at mathematik.uni-freiburg.de>]
> Sent: 02 October 2014 16:16
> To: Sacconi, Andrea; Andreas Dedner; dune-fem at dune-project.org<mailto: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<mailto:a.sacconi11 at imperial.ac.uk>

> ________________________________________ From:
> dune-fem-bounces+a.sacconi11=imperial.ac.uk at dune-project.org<mailto:dune-fem-bounces+a.sacconi11=imperial.ac.uk at dune-project.org>
> [dune-fem-bounces+a.sacconi11=imperial.ac.uk at dune-project.org<mailto:dune-fem-bounces+a.sacconi11=imperial.ac.uk at dune-project.org>] on
> behalf of Andreas Dedner [a.s.dedner at warwick.ac.uk<mailto:a.s.dedner at warwick.ac.uk>] Sent: 02
> October 2014 13:27 To: dune-fem at dune-project.org<mailto: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<mailto:a.sacconi11 at imperial.ac.uk>
>>
>> _______________________________________________ dune-fem mailing
>> list dune-fem at dune-project.org<mailto: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<mailto: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<mailto: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/eb32f961/attachment.htm>


More information about the dune-fem mailing list