[dune-pdelab] Matrix-Vector / Scalar Products in Parallel
Bernd Flemisch
bernd at iws.uni-stuttgart.de
Mon Aug 1 21:18:38 CEST 2011
Hey Volker,
if you only want matrix-vector and scalar products, you do
not need an explicit solver backends. In
novlpistlsolverbackend.hh, you find the classes
NonoverlappingOperator and NonoverlappingScalarProduct.
Construction should work like
Dune::PDELab::NonoverlappingOperator<GFS, M, X, X>
novlpOperator(gfs, A);
Dune::PDELab::ParallelISTLHelper<GFS> helper(gfs);
Dune::PDELab::NonoverlappingScalarProduct<GFS, X>
novlpSP(gfs, helper);
Using the methods apply and dot of these two classes, you
should be able to perform the required matrix-vector and
scalar product:
novlpOperator.apply(x, y);
product = novlpSP.dot(x, y);
Kind regards
Bernd
On Mon, 01 Aug 2011 17:50:24 +0200
schauer <schauer at mechbau.uni-stuttgart.de> wrote:
>
> Dear Dune,
>
> I use Dune together with Arpack to solve an eigenvalue
>problem. I
> produce the BCRS-Matrix (of which I want to know the
> eigenvectors-/values) with Dune-PDElab and calculate
>Matrix-Vector
> products for the Eigenvalue solver. Serial everything
>works fine but now
> I want to parallelize the code.
> When I now parallelize (e.g.without overlap) I build up
>parts of the
> Matrix on every processor and the vector is also
>distributed where
> indices on the boundary of the process are present on
>more than 1
> process. Therefore now the Matrix/Vector-products need
>communication of
> the distributed parts of the vector.
>
> The IstlSolvers, addressed via the SolverBackends, now
>also should
> calculate Matrix-Vector products and to communicate the
>right parts.
> Is there now a simple way to directly use the
>Matrix/Vector- and
> Scalarproducts implemented in these solvers ?
>
>
> And if not I have to find the corresponding parts of the
>vectors in the
> different processes - I suppose that means first finding
>corresponding
> entities on the processes and then also finding the
>index of the vector,
> that corresponds to this entity. How can I do this
>efficiently ?
>
> Thanks for your answers
>
> Volker
>
>
> --
>
> _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
>
> Volker Schauer (Dipl.Phys)
>
> Institute of Applied Mechanics (Civil Engineering),
>Chair 1
> University of Stuttgart
> Pfaffenwaldring 7
> D-70569 Stuttgart
> GERMANY
>
> Phone ++49 (0)711-68560044
> email: schauer at mechbau.uni-stuttgart.de
>
>
> _______________________________________________
> dune-pdelab mailing list
> dune-pdelab at dune-project.org
> http://lists.dune-project.org/mailman/listinfo/dune-pdelab
___________________________________________________________
Bernd Flemisch phone: +49 711 685
69162
IWS, Universitaet Stuttgart fax: +49 711 685
67020
Pfaffenwaldring 61 email:
bernd at iws.uni-stuttgart.de
D-70569 Stuttgart url:
www.hydrosys.uni-stuttgart.de
___________________________________________________________
More information about the dune-pdelab
mailing list