[Dune] Changes during constification - Renaming?
Oliver Sander
sander at math.fu-berlin.de
Wed Dec 1 13:25:11 CET 2004
Hi!
Sounds all very nice and reasonable to me!
Greetings,
Oliver
************************************************************************
* Oliver Sander ** *
* Freie Universität Berlin ** email: sander at math.fu-berlin.de *
* Institut für Mathematik II ** phone: + 49 (30) 838 75217 *
* Arnimallee 2-6 ** fax : + 49 (30) 838 54977 *
* 14195 Berlin, Germany ** URL : www.math.fu-berlin.de/~sander *
************************************************************************
On Wed, 1 Dec 2004, Thimo Neubauer wrote:
> Hi,
>
> during the refactoring of Dune found some naming problems which we
> would like to fix:
>
> Traits -> codim or nothing
>
> Types reported by datastructures are currently in a "Traits"-struct,
> sometimes parametrized by the codimension. First of all the name is
> incorrect (normally used to map a type to something that expresses a
> feature of this type) and secondly it's unneeded in most
> datastructures. We clearly favour
>
> Entity::HierarchicIterator
>
> over
>
> Entity::Traits::HierarchicIterator
>
> There are some subtleties in the instantiation of the template
> classes which force us to offer a struct with the types sometimes
> (which I guess was the initial reason for the Traits-struct) but we
> think that we should hide those problems from the user.
>
> Additionally for the types depending on a codim the Trais can be
> renamed to codim which yields
>
> Grid::codim<0>::LevelIterator
>
> which is pretty nice :)
>
> Element::mydimension
>
> There is a bit of confusion about weather template parameters are
> the dimension of the created object or the grid dimension. We
> renamed them a bit (especially in element) and created the enum
> "mydimension" so that it's perfectly clear that Element::dimension
> is the grid-dimension
>
> IntersectionIterator::outer_normal
>
> currently there are the methods unit_outer_normal (quite clear) and
> outer_normal, which reports a normal vector scaled for easy
> integration. We changed this to
>
> outer_normal any normal the grid can report, length
> not known (e.g. if only direction of
> flow needs to be checked)
>
> unit_outer_normal normal scaled to length 1 (for flow value)
>
> integration_outer_normal for integration, named after
> "integration_element"
>
> Entity<0>::father_relative_local -> geometryInFather
>
> clearly tell that an Element is returned and that it reports the
> entities position inside the father
>
> Entity<0>::hasChildren
>
> is only used for the LeafIterator, is it? A programmer could expect
> a method to travel to children when there are any. Therefore we
> propose to change
>
> Entity<0>::hasChildren -> isLeaf
>
> and invert the return value.
>
> Entity<dim>::father and local
>
> The method names are a bit confusing: logically, one would
> interpret the grid-cell whose corner you are in as the father of
> the vertex. Instead, the method returns the father of the grid
> cell. We decided to put this into the method names by changing
>
> father -> ownersFather
> local -> positionInOwnersFather
>
> Granted, those names aren't perfect but at least it's quite clear
> what they return.
>
> Last but not least we would like to rename the type "Element" to
> "Geometry": this is what this type represents, it would be the logical
> return value for methods like geometry() and talking about grid cells
> aka grid elements gets to be less confusing :)
>
> All substitutions but the last one are already used in our
> "const-refactoring-1"-branch, you're invited to have a look :)
>
> We will show you the two major ways of visiting the other branch so
> that you don't have to read the [CENSORED] CVS-docs:
>
> Directly checking out the branch:
>
> cvs -d :ext:blah at hal...:/var/lib/cvs checkout -r const-refactoring-1 dune
>
> Move a normal checkout to the branch:
>
> cvs update -r const-refactoring-1
>
> Warning! cvs will try to preserve your local modifications during the
> switch! You'll most probably get collisions when there are
> non-committed changes!
>
> Change a const-refactoring-1 to the normal branch:
>
> cvs update -A
>
>
> That's it for now, we'll be happy to hear your opinions about the
> proposed changes.
>
> Cheers
>
> Christian & Thimo
>
> _______________________________________________
> Dune mailing list
> Dune at hal.iwr.uni-heidelberg.de
> http://hal.iwr.uni-heidelberg.de/cgi-bin/mailman/listinfo/dune
>
More information about the Dune
mailing list