[Dune] dim in configure.

Thimo Neubauer thimo at debian.org
Wed Jun 23 17:38:21 CEST 2004


Hi,

On Wed, Jun 23, 2004 at 03:36:36PM +0200, Robert Kloefkorn wrote:
> Ich dachte dass man in allen Programmen z.B. SGrids verschiedener dim 
> mischen können sollte.

Klar, bei den Dune-eigenen Gittern kannst Du ja bei der Instanziierung
abgeben, welche Dimension Du brauchst, da kannst Du problemlos
mischen. Bei den externen Gittermanagern ist es halt jeweils die
Frage, ob das gehen kann. Sicherlich wäre es toll, wenn es keine
einkompilierte Dimension mehr geben müsste, technisch ist das aber je
nach Gitter ... anspruchsvoll :)

Speziell bei UG wird's deshalb schwierig, weil es einen ganzen Sack
voller globaler Variablen gibt, die man irgendwie einpacken müsste
(z.B. ein virtuelles Dateisystem in dem sich alle UG-Objekte
registrieren). Zusätzlich enthält der Code Datenstrukturen, die je
nach Dimension anders aussehen (ein paar, die mir über den Weg
gelaufen sind, habe ich mal entfernt), da kann man beim
Dereferenzieren von Zeigern lustige Sachen erleben: ich hatte da mal
eine Struktur, in der die Funktionspointer um genau ein Element
verschoben waren...

Es ist überhaupt Vorsicht angesagt: bei meinem Umbau der #includes und
der Abtrennung einiger dimensionsabhängiger Teile habe ich eine
UG-Version bekommen, die _meistens_ lief, aber bei einem bestimmten
Problem eine Segfault mitten im Gitter erzeugte (da waren die
Nachbarschaftsbeziehungen irgendwie subtil kaputt). Ich empfehle
daher, einen solchen Umbau erst zu machen, wenn Stefans Testumgebung
für die diversen UG-Teile fertig ist, sonst weisst man nie, ob man
irgendwann später Probleme bekommen wird oder nicht.

Gruss
   Thimo




More information about the Dune mailing list