Convex Hull: Difference between revisions
Appearance
No edit summary |
|||
| Line 42: | Line 42: | ||
Comments: more here... | Comments: more here... | ||
===GameOfLife. | ===GameOfLife.lse=== | ||
/* This file contains a landscape event definition for Conway's Game of Life */ | /* This file contains a landscape event definition for Conway's Game of Life */ | ||
Revision as of 20:50, 8 November 2006
Summary
Screenshot
Download Model
Download the .scn, .sel and .lse files by clicking on the following link: File:ConvexHull.zip
Model Code Exploration
In the following sections we will examine all of the model files for this model. Note that instead of downloading the zip file above, you could just copy the text in the boxes below into a text editor and save it with the appropriate name (Section title). Opening the resulting .scn file in the SELES simulator would run this model.
GameOfLife.scn
Scenario Information // This statement in the .scn file begins each and every SELES model
GameOfLife.sel // This line tells SELES to go and find the correct .sel model file
SimPriority Low Priority // This line priorizes the modelling process versus other tasks your computer has going.
// More information on SimPriority can be found in Scenario Reference under Simulation Control.
Comments: More...
GameOfLife.sel
Seles Model Model Size: 200, 200 Time Units: na Step 1 Landscape Events: GameOfLife.lse Variable-Output View Maps: CellState PrevCellState Output Model Bounds: CellState: 1 PrevCellState: 1 Global Variables: pInitial = 0.05 Output Frequency: 1
Comments: more here...
GameOfLife.lse
/* This file contains a landscape event definition for Conway's Game of Life */
LSEVENT: GameOfLife
DEFINITIONS
LAYER: CellState, PrevCellState
GLOBAL VARIABLE: pInitial
ENDDEF
INITIALSTATE
INITIALSTATE = 1
CellState = IF UNIFORM(0,1) < pInitial THEN 1 ELSE 0
ENDIS
RETURNTIME
RETURNTIME = 1
PrevCellState = CellState
ENDRT
TRANSITIONS
TRANSITIONS = TRUE
numNeighbs = 0
OVER REGION CENTRED(1,1.5, EUCLIDEAN)
DECISION PrevCellState EQ 1
numNeighbs = numNeighbs + 1
ENDFN
CellState = IF (CellState EQ 0) AND (numNeighbs EQ 3) THEN 1
ELSE IF (CellState EQ 1) AND (2 <= numNeighbs <= 3) THEN 1
ELSE 0
ENDTR
Comments: more here...
Suggested Experiments
To explore this cellular automata model further, try the following:
- Vary pInitial and see what affect this has.
- Change OVER REGION CENTRED to another value. Try "2". What happes when neighbours can live further away from origin cells?
- Change 'numNeighbs EQ 3' to 'numNeighbs EQ 2'; what happens?
- Example: changed pInitial to 0.005 and in GameOfLife.lse "CellState = IF (CellState EQ 0) AND (numNeighbs EQ 2) THEN 1"...
The left window is zoomed (use right mouse button) so you can see a close-up of several groups of cells that move across this virtual landscape.
