[Dune-devel] [dune-functions] hierarchicVectorWrapper and hierarchicMatrixWrapper

Carsten Gräser graeser at mi.fu-berlin.de
Wed Feb 21 13:42:11 CET 2018


Hi Simon,
we have a dedicated dune-functions mailing list

  dune-functions at lists.dune-project.org

and this discussion should probably go there.
Hence I'll reply to this list regarding your
proposal.

Best,
Carsten

Am 21.02.2018 um 13:17 schrieb Simon Praetorius:
> Hi folks,
> 
> during my development of a discretization module based directly on
> dune-functions, I've implemented wrappers for hierarchically nested
> vectors and matrices. The former was already available, but I don't see
> how it can be extended from vectors to matrices. Thus, I've made a new
> approach and came up with the idea of coupling the hierarchically nested
> vector/matrix with the corresponding nesting structure. When declaring
> the vector/matrix type this must already be known and is naturally
> related to the index-merging strategy of the GlobalBasis.
> 
> This coupling of data-structure and nesting-structure works quite fine
> and (nearly) all the former tests for hierarchicVectorWrapper can be
> passed. Additionally, some more data-structures are supported, e.g. for
> a taylor-hood basis
> 
> - TupleVector<std::array<std::vector<bool>,dim>, std::vector<bool>>
> - TupleVector<BitFieldVector<dim>, std::vector<bool>>
> 
> usable as a bit-field in interpolation methods, for example.
> 
> With "nesting-structure" I mean a light-weight representation of the
> index-merging strategies, e.g. for the examples above:
> 
> - Blocked<Blocked<Flat>, Flat>
> - Blocked<LeafBlocked<dim>, Flat>
> 
> where `Blocked` is related to `BlockedLexicographic`, `Flat` is related
> to (`FlatLexicographic`, `FlatInterleaved`) and `LeafBlocked<dim>` is
> related to `LeafBlockedInterleaved`.
> 
> This development is now ported back from our discretization module to
> dune-functions and is uploaded as an experimental branch, see MR !90.
> Currently, a lot of utility code is necessary. But maybe this can be
> eliminated or replaced with other code.
> 
> What do you think? Is this a way to go or should we look for a another
> way to write wrappers purely on the data-structure without knowledge of
> the nesting-structure?
> 
> Best wishes,
> Simon
> 
> 
> _______________________________________________
> Dune-devel mailing list
> Dune-devel at lists.dune-project.org
> http://lists.dune-project.org/mailman/listinfo/dune-devel


-- 
Prof. Dr. Carsten Gräser
Freie Universität Berlin
Institut für Mathematik
Arnimallee 6
14195 Berlin, Germany
phone: +49 30 838 72637
fax  : +49 30 838 472637
email: graeser at mi.fu-berlin.de
URL  : http://page.mi.fu-berlin.de/graeser

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 455 bytes
Desc: OpenPGP digital signature
URL: <https://lists.dune-project.org/pipermail/dune-devel/attachments/20180221/86c9da38/attachment.sig>


More information about the Dune-devel mailing list