[Dune-devel] MultiLinearGeometry with static GeometryType

Martin Nolte nolte at mathematik.uni-freiburg.de
Mon Oct 29 09:59:04 CET 2012


Hi Oli,

statically known topologyIds are already implemented in the 
MultiLinearGeometry (see hasSingleGeometryType in the traits class). 
GeometryGrid makes use of this feature, if the host grid consists solely of 
either simplices or cubes. My first tests indicate that the "new" code is 
superior in peformance to the old one (around 20% faster). However, further 
test have to be performed.

As to AlbertaGrid: The GenericGeometries are only used if you define 
DUNE_ALBERTA_USE_GENERICGEOMETRY (as proof of concept). The specialized 
Geometry implementation for AlbertaGrid makes use of some Alberta internals 
and should be slightly more efficient. I am not yet decided whether to adapt 
the GeneridGeometry variant to MultiLinearGeometry or to it entirely.

With your second point you seem to have read my mind. Indeed, I intended to 
use some helper class (call it factory, if you like) to generate them. 
However, to my knowledge they are only used in the reference element (where I 
have a simple replacement). So I currently don't consider this a priority task.

Discussing migrations from BasicGeometry to MultiLinearGeometry: What should 
we do with the "old" implementation? It is quite a few files and classes that 
are no longer needed. Would deprecating the constructors of BasicGeometry be 
sufficient?

Best,

Martin


On 10/29/2012 08:43 AM, Oliver Sander wrote:
> Hi Martin,
> I would like to get your opinion on something.  As far as I understand
> there are at least two things that BasicGeometry does and MultiLinearGeometry
> does not.
>    The first one is to provide a Geometry with a GeometryType/topologyId that is
> known at compile time.  Do you think that feature is still necessary? Or is a
> MultiLinearGeometry called with a compile-time topologyId argument just as
> fast?  Do you plan to implement a MultiLinearGeometry with a compile-time
> topologyId in the future?
> One place where that feature is used is in AlbertaGrid.  Would you object
> to replacing the BasicGeometry in AlbertaGrid by a MultiLinearGeometry?
>    The second point is the construction of trace geometries.  Do you think
> it is feasable/a good idea to have that functionality in a sort-of factory class?
> Ideally, such a factory would take a Geometry implementation and a subentity
> number as input, and provide the corresponding trace geometry.
> Thanks for you time,
> Oliver
>
> _______________________________________________
> Dune-devel mailing list
> Dune-devel at dune-project.org
> http://lists.dune-project.org/mailman/listinfo/dune-devel

-- 
Dr. Martin Nolte <nolte at mathematik.uni-freiburg.de>

Universität Freiburg                                   phone: +49-761-203-5630
Abteilung für angewandte Mathematik                    fax:   +49-761-203-5632
Hermann-Herder-Straße 10
79104 Freiburg, Germany




More information about the Dune-devel mailing list