CellularAutomaton

CellularAutomaton[rule,init,t]
产生一个表示元胞自动机演化的列表,该元胞自动机指定的规则,其初始条件 init,共有 t 步.

CellularAutomaton[rule,init]
给出 init 演化一步的结果.

CellularAutomaton[rule,init,{tspec,xspec,}]
仅给出由 tspecxspec,等指定的演化部分.

CellularAutomaton[rule,init,{t,All,}]
在各步包括在 t 步中受影响的所有元胞.

CellularAutomaton[rule]
CellularAutomaton 的操作符形式,表示演化过程中的一步.

更多信息更多信息

  • rule 的可能形式有:
  • n,规则号为 n 的初等规则
    {n,k}产生 k 色 的最近邻规则
    {n,k,r}产生 k 色、范围为 r 的一般规则
    {n,k,{r1,r2,,rd}} 邻近的 d 维规则
    {n,k,{{off1},{off2},,{offs}}} 指定偏移量的近邻规则
    {n,k,rspec,s}s 阶规则
    {n,{k,1}}k 色最近邻极权规则
    {n,{k,1},r}k 色、范围为 r 的极权规则
    {n,{k,{wt1,wt2,}},rspec}近邻 i 的权重被赋为 wti 的规则
    {lhs1->rhs1,lhs2->rhs2,}近邻列表的明确替换
    {fun,{},rspec}应用于各个近邻列表的一般函数 fun
    bfun应用于近邻集合的布尔函数
    CellularAutomaton[rule]规则的运算符形式
  • CellularAutomaton[{n,k},] 等价于 CellularAutomaton[{n,{k,{k^2,k,1}}},].
  • 二维元胞自动操作的一般形式包括:
  • {n,{k,1},{1,1}}9 近邻极权规则
    {n,{k,{{0,1,0},{1,1,1},{0,1,0}}},{1,1}}
    5 近邻极权规则
    {n,{k,{{0,k,0},{k,1,k},{0,k,0}}},{1,1}}
    5 近邻外部极权规则
  • 元胞自动机规则的可能数量如下:
  • 基本规则256
    一维常规规则
    一维极权规则
    二维常规规则
    二维9近邻极权规则
    二维5近邻极权规则
    二维5近邻外部极权规则
  • 通常,init 中的所有元素在和演化列表是 0 和 间的整数.
  • 当使用一般函数或替换列表时, init 的元素和演化列表可以是任何表达式. »
  • 明确替换规则 lhsi->rhsi 可以包括模式.
  • 在一维元胞自动机中,替换规则或明确函数 fun 可以用于一维近邻列表. 若近邻指定明确偏移量,则它们按偏移量顺序给定.
  • 当多维元胞自动机的近邻在指定范围内定义,例如 {r1,r2,},则近邻列表采用 2{r1,r2,}+1 维全数组.
  • 若多维元胞自动机的近邻由显式偏移量列表指定,则近邻按指定顺序的偏移量的一维列表提供.
  • 若给定明确函数 fun,则所提供的第一个自变量将是近邻列表,第二自变量是从 0 开始的步数.
  • 如果 BooleanVariables[bfun] 产生一个整数 v,则完整的规则说明被认为是纯布尔函数 bfun. 在这种情况下,bfun 将在每一步应用于 v 元胞的近邻. 这个近邻将把 Ceiling[v/2] 个元胞扩展到左侧.
  • 在由 {rule,kspec,rspec,s} 指定的 s 阶元胞自动机中,各步取决于之前的 s 步.
  • 初始情况由 init 构造如下:
  • {a1,a2,}假定循环时,值 ai 的明确列表
    {{a1,a2,},b}ai 叠加于背景 b
    {{a1,a2,},{b1,b2,}}ai 叠加于重复背景 b1b2
    {{{{a11,a12,},off1}, {{a21,},off2},},bspec}
    aij 在背景的偏移量 offi
    {{a11,a12,},{a21,},}二维明确值列表
    {aspec,bspec}d 维填充下的 d 维值
  • aspec 的第一个元素被叠加的背景位于各个坐标正向相对原点的第一个坐标处. 也就是说,bspec[[1,1,]]aspec[[1,1,]] 对齐.
  • CellularAutomaton[rule,init,t] 生成长度为 的演化列表.
  • s 阶元胞自动机,init 是给出演化系统中初始 s 步的一个列表.
  • {tspec,xspec,} 中的时间指定 tspec 如下:
  • t0 到 t 的所有步
    {t}仅包含第 t 步的列表
    {{t}}仅第 t
    {t1,t2}t1t2
    {t1,t2,dt}t1, t1+dt,
  • 第 0 步作为初始条件.
  • CellularAutomaton[rule,init,{tspec}]xspec 使用缺省 Automatic.
  • 空间指定 xspec 如下:
  • All受指定的初始情况影响的所有元胞
    Automatic与背景不同的区域内的所有元胞
    0aspec 的开始对齐的元胞
    x向右的偏移量至多为 x 的元胞
    -x向左的偏移量至多为 x 的元胞
    {x}向右的偏移量为 x 的元胞
    {-x}向左的偏移量为 x 的元胞
    {x1,x2}偏移量为 x1x2 的元胞
    {x1,x2,dx}元胞 x1, x1+dx,
  • 一维时,aspec 的第一个元素在缺省的情况下有空间偏移量 0.
  • 在任意维数时,aspec[[1,1,1,]] 在缺省的情况下有空间偏移量 {0,0,0,}.
  • CellularAutomaton 生成的演化列表的各个元素恒有相同的大小.
  • 在由宽度为 aspec 指定的初始条件下,在 步后能够被范围为 的规则影响的的区域具有宽度 .
  • bspec 背景不被指定,则 AllAutomatic 的空间偏移量将包括 aspec 的每个元胞.
  • All 的空间偏移量包括初始条件下所有受影响的元胞.
  • Automatic 的空间偏移量可用于剪切元胞自动机模式各边的背景.
  • 在确定区域的宽度时,Automatic 仅考虑由 offt 指定的各步的结果.
  • CellularAutomaton[rule][init] 等价于 CellularAutomaton[rule,init].
2002年引入
(4.2)
| 2008年更新
(7.0)