In[]:=
<<SetReplace`
In[]:=
$SetReplaceGitSHA
Out[]=
d09cfd9fbcd7ff9f316bb5ed5798e5bc33eb9804*
In[]:=
evolution=WolframModel[{{-1},{-1,-2}}{{-2}},{{1},{1,2},{3},{3,4},{2,5},{4,5},{5,6}},∞,"EventSelectionFunction"None]
Out[]=
In[]:=
evolution[[1]]
Out[]=
In[]:=
Dynamic[evolution["AllEventsCount"]]
Out[]=
evolution[AllEventsCount]
In[]:=
Dynamic[evolution["GenerationsCount"]]
Out[]=
evolution[GenerationsCount]
In[]:=
Dynamic[evolution["GenerationEventsCountList"]]
Out[]=
evolution[GenerationEventsCountList]
In[]:=
Dynamic[evolution["AllEventsGenerationsList"]]
Out[]=
evolution[AllEventsGenerationsList]
In[]:=
evolution["FinalStatePlot"]
In[]:=
evolution["StateAfterEvent",#]&/@Range[0,evolution["EventsCount"]]
Out[]=
In[]:=
WolframModelPlot/@(evolution["StateAfterEvent",#]&/@Range[0,evolution["EventsCount"]])
Out[]=
In[]:=
Thread/@Thread[Map[edge[#]&,evolution[[1]]["EventInputs"],{2}]event/@Range[0,evolution["EventsCount"]]]
Out[]=
In[]:=
Thread/@Thread[event/@Range[0,evolution["EventsCount"]]Map[edge[#]&,evolution[[1]]["EventOutputs"],{2}]]
Out[]=
In[]:=
ClearAll[eventEdgeGraph]
In[]:=
eventEdgeGraph[evolution_,opts___]:=Graph[Catenate[Catenate[{Thread/@Thread[Map[edge[#]&,evolution[[1]]["EventInputs"],{2}]event/@Range[0,evolution["EventsCount"]]],Thread/@Thread[event/@Range[0,evolution["EventsCount"]]Map[edge[#]&,evolution[[1]]["EventOutputs"],{2}]]}]],opts,VertexStyle{edge[_]Blue,event[_]Orange}]
In[]:=
Graph[Catenate[Catenate[{Thread/@Thread[Map[edge[#]&,evolution[[1]]["EventInputs"],{2}]event/@Range[0,evolution["EventsCount"]]],Thread/@Thread[event/@Range[0,evolution["EventsCount"]]Map[edge[#]&,evolution[[1]]["EventOutputs"],{2}]]}]],VertexLabelsAutomatic,VertexStyle{edge[_]Blue,event[_]Orange}]
Out[]=
In[]:=
LayeredGraphPlot[eventEdgeGraph[WolframModel[{{x,y},{x,z}}{{x,z},{x,w},{y,w},{z,w}},Automatic,2,"EventSelectionFunction"None]],AspectRatio1/2,VertexSize3]
Out[]=