Code covered by the BSD License  

Highlights from
Digital Karma: State Graphing

image thumbnail
from Digital Karma: State Graphing by Aman Siddiqi
Evolutionary Simulation, Interaction Graph

rules_oned_any_nearest_reversible.m
%Reversible nearest neighbor 2 color generator
addedzeros=0;
[arowlength,acollength]=size(a);
if arowlength==2; a=cat(1,(zeros(1,columns)),a); addedzeros=1; end;
b=a(end,:,end);
for point = 1:columns;
    if 1<point & point<columns;
        pointleft=(point-1);
        pointright=(point+1);
    elseif point==1;
        pointleft=columns;
        pointright=(point+1);
    elseif point==columns;
        pointleft=(point-1);
        pointright=1;
    end;
    
    ruleplacenumber=(a(end,pointleft,end)*2^(2)) + (a(end,point,end)*2^(1)) + (a(end,pointright,end)*2^(0))+1;
    ruleplacenumber=(8+1)-ruleplacenumber; %reverses order
    %zero on prevoius line equals normal, one on previous line equals reverse
    if a(end-2,point,end)==0; 
        b(end,point)=rulenumberbinary(ruleplacenumber);
    else;
        b(end,point)=all(rulenumberbinary(ruleplacenumber))==0;
    end; 
    
end;
a(end,:,end)=b;
[arowlength,acollength]=size(a);
if addedzeros==1; a=a(2:end,:); addedzeros=0; end;

Contact us at files@mathworks.com