<<Universe-97/SpaceNetworks.m
TwoD[5]
{1{6,21,2},6{11,1,10},11{16,6,12},16{21,11,20},21{1,16,22},2{7,22,1},7{12,2,8},12{17,7,11},17{22,12,18},22{2,17,21},3{8,23,4},8{13,3,7},13{18,8,14},18{23,13,17},23{3,18,24},4{9,24,3},9{14,4,10},14{19,9,13},19{24,14,20},24{4,19,23},5{10,25,1},10{15,5,9},15{20,10,11},20{25,15,19},25{5,20,21}}
NeighborLists[%3,4]
{{4},{3,9,24},{4,8,10,14,19,23},{3,5,7,9,13,14,15,18,19,20,24},{1,2,4,8,9,10,11,12,13,14,15,17,18,19,20,23,24,25},{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},{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}}
NumberedNetworkRule[n_]:=Partition[IntegerDigits[n,2,8],2]
NetworkCAStep[{rule_,g_},a_]:=MapThread[Part,{rule[[4-Apply[Plus,a[[#]]&/@(Range[Length[g]]/.g),1]]],2-a}]
NetworkCAEvolveList[{rn_,g_},a_,t_]:=With[{rule=NumberedNetworkRule[rn]},NestList[NetworkCAStep[{rule,g},#]&,a,t]]
Show[CellGraphics[NetworkCAEvolveList[{30,%3},CenterList[Length[%3],{1}],10]]];
Show[CellGraphics[NetworkCAEvolveList[{30,TwoD[12]},CenterList[Length[TwoD[12]],{1}],60]]];
Show[CellGraphics[NetworkCAEvolveList[{30,OneD[40]},CenterList[Length[OneD[40]],{1}],20]]];
Show[CellGraphics[NetworkCAEvolveList[{30,OneD[100]},CenterList[Length[OneD[100]],{1}],40]]];
OneD[10]
{1{3,9,2},2{4,10,1},3{5,1,4},4{6,2,3},5{7,3,6},6{8,4,5},7{9,5,8},8{10,6,7},9{1,7,10},10{2,8,9}}
Note: TreeNetwork is not closed....
Show[CellGraphics[NetworkCAEvolveList[{30,TreeNetwork[4]},CenterList[TreeNetwork[4],{1}],10]]];
$Aborted
Show[CellGraphics[NetworkCAEvolveList[{30,RandomNetwork[100]},CenterList[100,{1}],60]]];
Show[CellGraphics[NetworkCAEvolveList[{30,RandomNetwork[100]},CenterList[100,{1}],150]]];
rand=RandomNetwork[50];
Show/@MakeGraphicsArrays[Table[LabelWrapper[CellGraphics[NetworkCAEvolveList[{i,rand},CenterList[50,{1}],75]],BigFont[i]],{i,0,255}],{8,8}];