[Dune] Feature request.

Christian Engwer christi at uni-hd.de
Wed Jun 22 10:54:05 CEST 2005


> I request the following features for the LeafItertors:
> LeafIterators shouold have the same template parameter list as
> LevelIterators, because we also need them for higher codimensions and
> also for all partition tpyes.

I agree with Robert, we do need patitiontype and codimensions for the
leafiteraotor. Otherwise you can only do sequential finite volumn
computations on the leaflevel.

> I think the changes to the interface are not that big 
> and we also should
> set the normal LeafIterator typedef inside the Grid class to
I'm not sure whether the the changes arre really so small.
1) Changing the interface wrapper class is easy.
2) We do need a different default implementation because the
   hierarchiciterator only exists for codim 0 and the essential isLeaf()
   method exists only for codim 0.

We could solve point 2 if we introduce isLeaf for all codims. We then
could just start all leveliterator for level 0 to maxlevel and return
only the isLeaf entities. This would be reasonably fast for all grids
offering fast leveliterators. For alberta this default implementation
would be horribly slow, so alberta would be one of the first grid to
become a real implementation.

> LeafIterator<codim=0,PartitionType=InteriorBorder_Partition> or
> something like that, that all implementation using the LeafIterator will
> work after the change.
I would prefere setting the default template parameter to
All_Partition as this is the parameter needed for sequential programs
and it's the parameter used by leveliterator. Updating existing
programs is really easy... just as simple query-replace-regexp.

CU Christian

More information about the Dune mailing list