用Mathematica玩转一维元胞自动机

 时间:2026-02-14 13:40:02

1、元胞自动机的函数是CellularAutomaton:

a = CellularAutomaton[30, {0, 0, 0, 1, 1, 0, 0, 0}, 6];

这是用规则30构造的元胞自动机;

初始状态是{0, 0, 0, 1, 1, 0, 0, 0};

迭代了6次,得到了{0, 0, 1, 0, 0, 0, 1, 0}。

你能看出规则30的具体规则吗?

用Mathematica玩转一维元胞自动机

2、CellularAutomaton[30, {{1}, 0}, 6]

仍旧是规则30;

初始状态只有一个元胞,其余的全是0;

这个元胞在一维方向上分裂演化;

演化六次,得到{1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1}。

用Mathematica玩转一维元胞自动机

3、步骤1和步骤2都是一维的元胞自动机,却不相同:

前者的范围受到限制,只有8个位置供元胞自动机进行演化,触边即消;

后者在一维方向上,可以无限延伸。

用Mathematica玩转一维元胞自动机

用Mathematica玩转一维元胞自动机

4、把元胞自动机的演化过程,画成彩色的像素图:

ColorRules -> {1 -> Blue, 0 -> Lighter@Lighter@Lighter@Orange}

用Mathematica玩转一维元胞自动机

5、使用规则26,和一个一维元胞。

用Mathematica玩转一维元胞自动机

6、使用规则13,和一个一维元胞。

用Mathematica玩转一维元胞自动机

7、下图包括了规则2到规则31的像素图。

用Mathematica玩转一维元胞自动机

  • Mathematica对于列表的各种操作①
  • 手把手教你用MATLAB做一个“半透明”视图
  • 如何在matlab中使图形标题变小?
  • 进一步学习Maple的求导功能
  • 如何在MATLAB图形中描述±?
  • 热门搜索
    面部过敏怎么办 免费的黄网站网址大全 美食菜谱大全做法 眼线膏干了怎么办 努尔哈赤简介 儿童图画大全 黄永玉简介 小学一年级日记大全 何香凝简介 捕鱼网具大全