[Dune] Re: ug intersection methods
Andreas Dedner
dedner at mathematik.uni-freiburg.de
Tue May 9 12:52:49 CEST 2006
Hallo,
Das Fazit vorneweg:
wir setzen nichts voraus an Orientierung und koennen denk
ich fuer 1.0 auch mit der Utility Klasse leben:
(s. dune-grid/grid/utility/twistutility.hh)
Der Intersectioniterator sollte ja sowieso nochmal umgebaut werden...
Gruss Andreas
--------------------------------------------------
Hier eine kurze Zusammenfassung wie wir im Moment DG
implementiert haben mit Caching fuer die Quadraturen
- allerdings im Moment fuer konforme Gitter...
Wir setzen keine Orientierung zwischen der
IntersectionGeom und der Geom in Self/Neigh
voraus. So ist das ganze bei Alberta auch so wie bei
UG, dass in 2d die Intersectionedge von innen
gleich orientiert und von Neigh aus genau Umgekehrt.
Um Caching machen zu koennen definieren wir zusaetzlich
einen twist auf der Intersection (im Moment eine Utility
Klasse, die Spezialisiert ist fuer ALU/Alberta/Yasp/SGrid
der Default ist im Moment nicht sinnvoll implementiert).
Der twist beschreibt, wie die lokalen Knotennummern
aufeinander abgebildet werden. In dem Beispiel waere der
twistInSelf = 0 und der twistInNeigh=-1, da die lokale
Nummer 0 der Intersection auf die lokale Nummer 1 im
Neigh. abgebildet wird (daher 1) und das Vorzeichen beschreibt
die unterschiedliche Orientierung
/|1 |1 0|\
/ | | | \
\ | | | /
\|0 |0 1|/
self Int neigh
Also hat man eigentlich zwei Infos naemlich Orientierung und wohin
die lokale Nummer Null abgebildet wird.
Diese Infos werden dann benutzt um on-the-fly die gecachten Werte
auszuwaehlen.
Gruss Andreas
More information about the Dune
mailing list