File: HPP.rle

package info (click to toggle)
golly 2.3-1
  • links: PTS
  • area: main
  • in suites: wheezy
  • size: 10,080 kB
  • sloc: cpp: 41,951; python: 6,339; sh: 3,912; perl: 1,172; java: 49; makefile: 47
file content (35 lines) | stat: -rw-r--r-- 1,510 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#CXRLE Pos=-10,-10
# HPP Gas implemented in the Margolus neighborhood, as described in:
#
# T. Toffoli, N. Margolus "Cellular Automata Machines: A New 
# Environment for Modeling", MIT Press (1987)
#
# At the time of writing, Golly does not support the Margolus neighborhood,
# so we are emulating it by using some extra states. The odd-numbered cells
# are those in the top-left corner of the 2x2 block to be updated. 
# Configurations must have the correct pattern of states to work correctly 
# - you can't just scribble on the pattern! First run export.py in 
# Scripts/Python/Margolus. Then draw, using state 1. Next select-all and 
# run import.py. You can now continue running the CA.
#
# Rule tree produced by RuleTableToTree.py from the Margolus rule table:
#
# n_states:2
# neighborhood:Margolus
# symmetries:rotate4
# 
# # The Margolus transition a,b,c,d : e,f,g,h means:
# #
# #      a  b   becomes    e  f
# #      c  d              g  h
#
# 1,0,0,0 : 0,0,0,1   # one particle moves to the opposite corner
# 1,1,0,0 : 0,0,1,1   # two particles pass through each other
# 1,0,0,1 : 0,1,1,0   # two particles collide head-on
# 1,1,1,0 : 0,1,1,1   # three particles pass through each other
# 
x = 20, y = 20, rule = HPPMargolus_emulated:T20,20
20B$BABABABABABABABABABA$20B$BABABABABABABABABABA$12BD7B$BABABABABABA
BCBABABA$20B$BABABABABABABABABABA$20B$BABABABABABABABABABA$20B$BABABA
BABABABABABABA$20B$BABABABABABABABABABA$20B$BABABABABABABABABABA$20B$
BABABABABABABABABABA$20B$BABABABABABABABABABA!