[Dune] isi entscheidung?

Peter Bastian Peter.Bastian at iwr.uni-heidelberg.de
Thu Jun 1 17:05:40 CEST 2006


Andreas Dedner schrieb:
> 
> Oliver Sander wrote:
> 
>>Ich habe folgende Anmerkungen:
>>
>>Die Methode hasBoundaryIntersection() halte ich für einen faulen
>>Kompromiß.  Wofür würde man sie verwenden?  Doch wohl meistens, um einen
>>Iterator über die Randsegmente zu bekommen.  Der wird durch diese
>>Methode zwar schneller, aber man muß immer noch über alle Elemente.
>>Da wäre es doch besser, gleich einen {Level|Leaf}RandIterator
>>einzuführen, der dann z.B. bei uniformen Gittern nochmal deutlich
>>schneller sein kann.
> 
> 
> 1) Wir brauchen dann also noch BoundaryLevelIntersectionIterator und
>    BoundaryLeafIntersectionIterator?
>    D.h. wir haben wir IntersectionIterator. Wobei die nicht Boundary...
>    Teile trotzdem den Rand erfassen sollten.
> 2) Wir sollten auf jeden Fall eine DefaultImpl. anbieten - d.h.
>    DefaultBoundaryLevelIntersectionIterator als Wrapper
>    des LevelIntersectionIterators...
> Wenn das so geht, ist mir das auch recht.

1) Warum wird bei den boundary intersections zwischen level und leaf 
unterschieden? Das macht doch beim externen Rand gar keinen Unterschied.

2) Was ich mich auch noch Frage, ist wie man den Prozessorrand in 
Zukunft erkennen soll. Den erkennt man im Moment ja daran, dass weder 
neighbor noch boundary true ist, der IntersectionIterator aber anhält.

3) Redet ihr da nicht an einander vorbei? Was Andreas meint ist, dass 
die Randintersections von einem extra iterator an einer entity geliefert 
werden, was Oliver meint, ist, dass man einen Level/Leaf Iterator hat, 
der nur über Element iteriert, die am Rand liegen (hier frägt sich dann 
wieder, was ist mit dem Prozessorrand?).

Meine Meinung:
- Bitte nun keine halbgaren Sachen auf die Schnelle beschließen, die uns 
dann wieder unendlich Zeit kosten. Die Trennung 
{Level|Leaf}IntersectionIterator halte ich für überschaubar und harmlos. 
Von allem anderen würde ich jetzt die Finger lassen.
- Die Methode hasBoundaryIntersections löst das Problem meiner Meinung 
nach weitgehend. Da man sich meist ohnehin schon in einer Schleife über 
die Elemente befindet.

Grüße

-- Peter

> 
> 
>>Zweiter Punkt:  Genau wie die IndexSets jetzt schon die zu ihnen
>>gehörigen Level- bzw. Leaf-Iteratoren kennen und bereitstellen
>>müssen sie das in Zukunft auch für die IntersectionIteratoren.
> 
Das habe ich gar nicht kapiert. Wozu verwendet man das?

-- 
------------------------------------------------------------------
Peter Bastian, IWR,Uni Heidelberg, INF 348,R 020, 69120 Heidelberg
email: Peter.Bastian at iwr.uni-heidelberg.de   Tel: +49 6221 54 4984
WWW: http://www.iwr.uni-heidelberg.de/~Peter.Bastian Fax: ... 8860





More information about the Dune mailing list