+ create: (id <Zone>)aZonesetSizeX: (unsigned)xY: (unsigned)ysetDiffusionConstant: (double)dsetEvaporationRate: (double)e Convenience constructor for Diffuse2d
+ createBegin: (id <Zone>)aZone Set diffusion constant and evaporation rate to 1.0, numStates to 0x7fff.
- initializeLattice Initialize world to 0.
Phase: Setting
- setDiffusionConstant: (double)d Set the diffusion constant. Values over 1.0 might not be valid.
- setEvaporationRate: (double)e Set the evaporation rate. Values over 1.0 don't make much sense
Phase: Using
- stepRule Run discrete approximation to diffusion. Roughly, it's newHeat = evapRate * (self + diffuseConstant*(nbdavg - self)) where nbdavg is the weighted average of the 8 neighbours.