![]() |
![]() |
![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() 3.3.2 Die Theorie zellulärer AutomatenZur Lösung des eben angegebenen DGS wird wieder ein iteratives Verfahren verwendet. Allerdings spielt sich die Simulation in einem zellulären Automaten (ZA) ab. Ein ZA ist ein Automat, der als Eingangszustand ein Feld von Zellen (1,2,3,...n-dimensional) in unterschiedlichen Zuständen hat und ein ebensolches ausgibt. Jede Zelle entspricht dabei einem Raumpunkt. Man kann sich z.B. ein solches zweidimensionales Feld wie ein Schachbrett vorstellen. Jedes Quadrat dieses Schachbrettes (eine Zelle) enthält die dortigen Konzentrationen der beteiligten Stoffe und wird über seine zwei Koordinaten angesprochen. Der Automat ändert nun diese Konzentrationen, indem er das Reaktions-Diffusions-System auf jedes Feld anwendet. Pro Zeiteinheit ändern sich also die Konzentrationen jeder Zelle genau einmal (durch Diffusion und Reaktion). Wurden alle Zellen bearbeitet, so wird das nun erzeugte neue Feld wieder als Eingangsfeld dem Automaten zugeführt (Iteration). Als Startfeld (t=0) wird eine zufällige Konzentrationsverteilung auf dem Feld eingesetzt [Weimar 1997]. Abbildung 19 verdeutlicht dieses noch einmal.
3.3.3 Anwendung auf den BrüsselatorDas Modell, das ich auf einen zellulären Automaten übertragen habe, ist der Brüsselator. Dies erfolgte nach dem Prinzip, das ich in den letzten beiden Abschnitten beschrieben habe. Ich habe den Brüsselator zuerst für einen eindimensionalen Raum (Linie) implementiert. Das Programm dazu sieht wie folgt aus:1 A <-- A0
3 wiederhole für r = 0 bis r =
Länge
7 wiederhole
9 10 11 Ende wiederhole 12 wiederhole für r = 1 bis r
= Länge-1
18 Zeichne Xt[r] undYt[r]
für
alle r als Linie
Hierbei bedeutet Xt[r] (bzw. Yt[r]) die Stoffmenge von X (bzw. Y) am Raumpunkt r zur Zeit t. In den Zeilen 1-6 des Programmes werden die Zellen des Raumes (Feldes) mit den Ausgangswerten X0 und Y0 plus einer zufälligen Abweichung (pos./neg.) gesetzt. A und B bleiben wieder an allen Raumpunkten gleich, um ein Fließgleichgewicht zu erreichen. Danach beginnt die Hauptschleife (Z. 7-19). In ihr wird zuerst die Diffusionsformel auf die X- und Y-Stoffmenge jeder Zelle der Linie angewendet (Z. 8-11). Danach werden die Reaktionsformeln für den Brüsselator (siehe 3.2.1) auf jede Zelle (jeden Raumpunkt) angewendet (Z. 12-17). Die bei der Diffusion auf Xt+1 und Yt+1 zugewiesenen Werte werden jetzt als Xt und Yt angesprochen. Das bedeutet, dass zu den Werten des Eingangsfeldes zuerst die Diffusion addiert wird und dann die Konzentrationsänderung durch die Reaktion, also ![]() Die so erhaltenen Ausgangsfelder mit den Stoffmengen Xt+1[r] und Yt+1[r] werden nach der Ausgabe auf dem Bildschirm (Z. 18) wieder als Eingansfelder eingesetzt (Iteration). Interessant ist die Betrachtung der Randbedingungen des ZA. Diese beschreiben das Verhalten der Randzellen der Linie, da diese ja auf einer Seite eine nicht existente, also auch in Bezug auf X[r] und Y[r] undefinierte ,,Zelle`` haben, die aber in die Formeln eingeht. Im Falle meiner Implementierung verhalten sich diese Randzellen so, als hätten sie immer die Startkonzentrationen X0 und Y0. Das eben beschriebene Programm habe ich wieder in Delphi umgesetzt. Abbildung 20 zeigt das ausgegebene Ergebnis. Entlang der Zeit-Achse (nach unten) werden einfach die Zustände der Zellen aufgetragen (Raumachse nach rechts).
Wie man sieht, bilden sich ineinander verschachtelte Dreiecke. Dieses Bild bedeutet, dass Konzentrationswellen vom Rand aus (Störstelle) nach innen laufen und sich dort auslöschen. Dies ist ein Ergebnis, das schon ZHABOTINSKY im Experiment beschrieben hat. Er führte die BZR in einer dünnen Kanüle durch [Zaikin, Zhabotinsky 1970]. Nun habe ich den Brüsselator auf einen zweidimensionalen Raum (Fläche)
übertragen. Daraus folgt, dass nun jeder Raumpunkt r zwei Koordinaten
hat, nämlich rx und ry. Damit
ist r formal der Vektor Ich verwende die einfachere von-Neumann-Nachbarschaft. Daraus ergibt
sich folgende Formel für die Konzentrationsänderung ![]() 1 A <-- A0
9 wiederhole
24 Zeichne Xt[rx,
ry]
und
Yt[rx, ry]
für
alle Diesmal sind die Randbedingungen so gewählt, dass den Randzellen auf die gleiche Weise, wie den normalen Zellen zufällig schwankende X- und Y-Konzentrationen zugewiesen werden, die aber während der gesamten Simulation wie A und B konstant bleiben. Die Umsetzung des obigen Programmes in Delphi ergibt die Ausgabe in Abbildung 21. Unter den Bildern sind jeweils die verstrichenen Rechenschritte (Generationen) angegeben.
Auf dem ersten Bild (10. Generation) sieht man den zufälligen Ausgangszustand des ZA. Auf den folgenden Bildern entstehen dann stabile Spiralenmuster. Der Rand wirkt aufgrund der Randbedingungen ebenfalls als Störzentrum. Von ihm gehen konzentrische Kreiswellen aus. Treffen zwei Wellenfronten aufeinander, so löschen sie sich gegenseitig aus. Die Farbgebung wurde in Anlehnung an das Experiment mit Ferroin/Ferriin gewählt.
Die vom Brüsselator erzeugten Wellen (sowohl im ein-, als auch im
zweidimensionalen Raum) gleichen in ihren Eigenschaften den chemischen
Wellen, die ich im Experiment beobachtet habe (siehe Abbildungen 11 bis
13). Beide bilden konzentrische Kreise, die von Störzentren ausgehen
und sich gegenseitig auslöschen, aber nicht von Hindernissen reflektiert
werden. Die Simulation bildet auch Spiralwellen aus, die ich leider im
Experiment nicht erzeugen konnte, über die aber in der Literatur berichtet
wird [Kauffman 1996]. Abbildung
22 zeigt solche Spiralmuster in der BZR.
|
|
![]() |
[ Home/Inhalt | Elektronik
| Download | Links
| jkrieger.de | Impressum | Datenschutzerklärung ]
|
![]() |