Spreading2: Difference between revisions
Appearance
| Line 28: | Line 28: | ||
DEFINITIONS | DEFINITIONS | ||
LAYER: TimeSinceFire, Attempted | LAYER: TimeSinceFire, Attempted | ||
GLOBAL VARIABLE: SpreadDist, pSpread, SpreadType, pFire | GLOBAL VARIABLE: SpreadDist, pSpread, SpreadType, pFire | ||
GLOBAL CONSTANT: MaxTSF | GLOBAL CONSTANT: MaxTSF | ||
CLUSTER VARIABLE: StartLocation | CLUSTER VARIABLE: StartLocation | ||
CELL VARIABLE: distInc, d | CELL VARIABLE: distInc, d | ||
| Line 64: | Line 62: | ||
DECISION IF SpreadType <= 1 THEN TimeSinceFire > 50 | DECISION IF SpreadType <= 1 THEN TimeSinceFire > 50 | ||
ELSE (TimeSinceFire > 60) AND (!Attempted) | ELSE (TimeSinceFire > 60) AND (!Attempted) | ||
Attempted = 1 | Attempted = 1 | ||
ENDSL | ENDSL | ||
Latest revision as of 18:10, 14 November 2006
Model code
Spreading.scn
SELES Scenario Model Dimensions: 500, 500 Model.sel SimPriority Low Priority
Model.sel
Seles Model Time Units: milliYear Year 1000 1000000 Landscape Events: Spreading.lse DEBUG Global Constants: MaxTSF = 100 Spatial Variables: TimeSinceFire[MaxTSF] Attempted[1] Global Variables: SpreadDist = 1 pSpread = 1 SpreadType = 1 pFire = 1
Spreading.lse
LSEVENT: Spreading
DEFINITIONS
LAYER: TimeSinceFire, Attempted
GLOBAL VARIABLE: SpreadDist, pSpread, SpreadType, pFire
GLOBAL CONSTANT: MaxTSF
CLUSTER VARIABLE: StartLocation
CELL VARIABLE: distInc, d
ENDDEF
INITIALSTATE
INITIALSTATE = 1
TimeSinceFire = MaxTSF
ENDIS
RETURNTIME
RETURNTIME = 0
TimeSinceFire = MIN(TimeSinceFire+1, MaxTSF)
Attempted = 0
ENDRT
EVENTLOCATION
REGION WHOLE MAP
DECISION TimeSinceFire > 50
ENDEL
NUMCLUSTERS = IF (UNIFORM(0,1) < pFire) THEN 1 ELSE 0
PROBINIT
PROBINIT = TimeSinceFire/MaxTSF
StartLocation = Location
distInc = 0
d = 0
ENDPI
TRANSITIONS
TRANSITIONS = TimeSinceFire > 0
TimeSinceFire = 0
ENDTR
SPREADTIMESTEP = distInc
SPREADLOCATION
REGION CENTRED(1, SpreadDist) //, WRAPPED)
DECISION IF SpreadType <= 1 THEN TimeSinceFire > 50
ELSE (TimeSinceFire > 60) AND (!Attempted)
Attempted = 1
ENDSL
SPREADPROB
SPREADPROB = pSpread
d = ROUND(DISTANCE(StartLocation, Location))
distInc = IF SpreadType EQ 0 THEN 1 ELSE MAX(0,d - SOURCE d)
ENDSP
