/**
@addtogroup GeometryDuneREToGenericRE 

@section GeometryDuneTrans1 New Header File and Class Name
To obtain the new reference element include the file
and use the new reference element class
@code
  dune/geometry/genericreferenceelements.hh
  Dune::GenericReferenceElements
  Dune::GenericReferenceElement
@endcode
instead of 
@code
  dune/grid/common/referenceelements.hh
  Dune::ReferenceElements
  Dune::ReferenceElement
@endcode
The interface of the GenericReferenceElements and 
of the GenericReferenceElement is the same
as before.

@section GeometryDuneTrans2 Methods for the new SubEntity Numbering

In order to facilitate the transition we introduced new method names for
methods that rely on a numbering.  Methods in the second column of the
table below will give you the old numbering, and methods in the third
column will give you the new one.  In many cases the new names are also
more meaningful.  The old methods still work, but they are deprecated
and will be removed for %Dune 1.4.

<table>
<tr>
<td>class</td><td>deprecated method with old numbering</td><td>method with new numbering</td>
</tr><tr>
<td>Entity<0></td>    <td>entity</td>               <td>subEntity</td>
</tr><tr>
<td>Intersection</td> <td>numberInSelf</td>         <td>indexInInside</td>
</tr><tr>
<td></td>             <td>numberInNeighbor</td>     <td>indexInOutside</td>
</tr><tr>
<td>IndexSet</td>     <td>subIndex<c>(...)</td>     <td>subIndex(...,c)</td>      
</tr><tr>
<td>IdSet</td>        <td>subId<c>(...)</td>        <td>subId(...,c)</td>
</tr><tr>
<td>Mapper</td>       <td>map<c>(...)</td>          <td>map(...,c)</td>      
</tr><tr>
<td></td>             <td>contains<c>(...)</td>     <td>contains(...,c,result)</td>
</tr><tr>
<td>Geometry</td>     <td>operator[] (returns reference) </td> <td>corner (returns value)</td>
</tr>
</table>

@section GeometryDuneTrans25 Permanently Switching off old Numbering

If you don't want to rely on deprecation warnings and make sure that your code really
doesn't use any old numbering stuff, then you can configure %Dune with <tt>--disable-old-numbering</tt>.
If this is set, all methods providing old numbers are removed from the header files.


@section GeometryDuneTrans3 Numbering Conversion Utility
To map a new subentity number to an old number or vice versa
use the methods provided by the static methods
of the class GenericGeometry::MapNumberingProvider.
To obtain for a given reference element of a fixed 
dimension and dune geometry type 
the new number for a new subentity of given codimension
given the old one (or vice versa) use
@code
  // get class with static methods 
  // using the dimension of the reference elements
    typedef GenericGeometry::MapNumberingProvider< dimension > 
            Numbering;

  // obtain the number of the dune reference element 
  // in the new numbering provided by the generic geometries
    const unsigned int tid = 
          GenericGeometry::topologyId( duneGeometryType );

  // for a subentity<codimension,oldNumber> get the new number
    newNumber = Numbering::template 
                dune2generic< codimension >( tid, oldNumber );
  // for a subentity<codimension,newNumber> get the old number
    oldNumber = Numbering::template 
                generic2dune< codimension >( tid, newNumber );
@endcode

@section GeometryDuneTrans4 Change in Numbering
<table>
<tr>
<th>Geometry type</th><th>Codim 1</th><th>Codim 2</th><th>Codim 3</th>
</tr><tr>
<td>(Simplex,1)</td>  <td>identity</td>    <td></td>                      <td></td>
</tr><tr>
<td>(Cube,1)</td>     <td>identity</td>    <td></td>                      <td></td>
</tr><tr>
<td>(Simplex,2)</td>  <td>2-index</td>     <td>identity</td>              <td></td>
</tr><tr>
<td>(Cube,2)</td>     <td>identity</td>    <td>identity</td>              <td></td>
</tr><tr>
<td>(Simplex,3)</td>  <td>3-index</td>     <td>xchg(1,2)</td>             <td>identity</td>
</tr><tr>
<td>(Cube,3)</td>     <td>identity</td>    <td>xchg(6,8), xchg(7,9)</td>  <td>identity</td>
</tr><tr>
<td>(Prism,3)</td>    <td>see below</td>   <td>see below</td>             <td>identity</td>
</tr><tr>
<td>(Pyramid,3)</td>  <td>see below</td>   <td>see below</td>             <td>xchg(3,2)</td>
</tr>
</table>

@subsection GeometryDuneTrans4a Prism 
<table>
<tr>
<th></th><th>Dune to generic</th><th>generic to Dune</th>
</tr><tr>
<th>Codim 1</th><td>(3,0,2,1,4)</td>        <td>(1,3,2,0,4)</td>
</tr><tr>
<th>Codim 2</th><td>(3,5,4,0,1,2,6,8,7)</td><td>(3,4,5,0,2,1,6,8,7)</td>
</tr>
</table>
@subsubsection GeometryDuneTrans4aa Generic reference element
   <table class="imagelist"><tr>
       <td>\image html gg_prism.png "Face Numbering"</td>
       <td>\image html gg_prism_edges.png "Edge Numbering"</td>
   </tr></table>
@subsubsection GeometryDuneTrans4ab Dune reference element
   <table class="imagelist"><tr>
       <td>\image html prism.png "Face Numbering"</td>
       <td>\image html prism_edges.png "Edge Numbering"</td>
   </tr></table>

@subsection GeometryDuneTrans4b Pyramid
<table>
<tr>
<th></th><th>Dune to generic</th><th>generic to Dune</th>
</tr><tr>
<th>Codim 1</th><td>(0,3,2,4,1)</td>      <td>(0,4,2,1,3)</td>
</tr><tr>
<th>Codim 2</th><td>(2,1,3,0,4,5,7,6)</td><td>(3,1,0,2,4,5,7,6)</td>
</tr>
</table>

@subsubsection GeometryDuneTrans4ba Generic reference element
   <table class="imagelist"><tr>
       <td>\image html gg_pyramid.png "Face Numbering"</td>
       <td>\image html gg_pyramid_edges.png "Edge Numbering"</td>
   </tr></table>
@subsubsection GeometryDuneTrans4bb Dune reference element
   <table class="imagelist"><tr>
       <td>\image html pyramid.png "Face Numbering"</td>
       <td>\image html pyramid_edges.png "Edge Numbering"</td>
   </tr></table>
**/
