Wolfram Language

Kern-Sprache

Periodizität in zellulären Automaten

Die neue Funktion FindTransientRepeat identifiziert die transienten und wiederholten Teile einer Liste. Sie kann zur Untersuchung zellulärer Automaten verwendet werden.

Untersuchen Sie den zellulären Automat Regel 30. Die in Version 11 eingeführte Funktion RulePlot ist ein nützliches Tool, um die zugehörigen Übergangsregeln zu ermitteln.

In[1]:=
Click for copyable input
RulePlot[CellularAutomaton[30]]
Out[1]=

Bestimmen Sie mithilfe der neuen Funktion CenterArray die Anfangskonditionen des zellulären Automatens.

In[2]:=
Click for copyable input
initc = CenterArray[7]
Out[2]=

Berechnen Sie die Regel 30 mit den obigen Anfangsbedingungen und plotten Sie diese in einem diskreten Gitter aus Quadraten.

In[3]:=
Click for copyable input
ca30 = CellularAutomaton[30, initc, 20]; ArrayPlot[ca30, Mesh -> True]
Out[3]=

FindTransientRepeat gibt den Teil dieses zellulären Automatens an, der wiederholt wird.

In[4]:=
Click for copyable input
tr30 = FindTransientRepeat[ca30, 2]; ArrayPlot[Last[tr30], Mesh -> True]
Out[4]=

Wiederholen Sie dieselben Schritte für Regel 90.

In[5]:=
Click for copyable input
RulePlot[CellularAutomaton[90]]
Out[5]=
In[6]:=
Click for copyable input
ca90 = CellularAutomaton[90, initc, 20]; ArrayPlot[ca90, Mesh -> True]
Out[6]=
In[7]:=
Click for copyable input
tr90 = FindTransientRepeat[ca90, 2]; ArrayPlot[Last[tr90], Mesh -> True]
Out[7]=

Verwandte Beispiele

en es fr ja ko pt-br ru zh