Spreading2: Difference between revisions
Appearance
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
[[Image:Spreading2.gif]] | |||
==Model code== | ==Model code== | ||
===Spreading.scn=== | ===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=== | ===Spreading.lse=== | ||
LSEVENT: | LSEVENT: Spreading | ||
DEFINITIONS | |||
LAYER: TimeSinceFire, Attempted | |||
GLOBAL VARIABLE: SpreadDist, pSpread, SpreadType, pFire | |||
GLOBAL CONSTANT: MaxTSF | |||
GLOBAL | |||
CLUSTER VARIABLE: StartLocation | CLUSTER VARIABLE: StartLocation | ||
CELL VARIABLE: distInc, d | CELL VARIABLE: distInc, d | ||
ENDDEF | ENDDEF | ||
INITIALSTATE | |||
RETURNTIME | INITIALSTATE = 1 | ||
TimeSinceFire = MaxTSF | |||
ENDIS | |||
RETURNTIME | |||
RETURNTIME = 0 | RETURNTIME = 0 | ||
TimeSinceFire = MIN(TimeSinceFire+1, MaxTSF) | |||
ENDRT | Attempted = 0 | ||
ENDRT | |||
EVENTLOCATION | EVENTLOCATION | ||
REGION | REGION WHOLE MAP | ||
DECISION TimeSinceFire > 50 | |||
ENDEL | |||
PROBINIT | NUMCLUSTERS = IF (UNIFORM(0,1) < pFire) THEN 1 ELSE 0 | ||
PROBINIT = | PROBINIT | ||
PROBINIT = TimeSinceFire/MaxTSF | |||
StartLocation = Location | StartLocation = Location | ||
distInc = 0 | distInc = 0 | ||
d = 0 | d = 0 | ||
ENDPI | ENDPI | ||
TRANSITIONS | |||
TRANSITIONS | TRANSITIONS = TimeSinceFire > 0 | ||
TRANSITIONS = | TimeSinceFire = 0 | ||
ENDTR | |||
SPREADTIMESTEP = distInc | |||
ENDTR | SPREADLOCATION | ||
REGION CENTRED(1, SpreadDist) //, WRAPPED) | |||
SPREADTIMESTEP = distInc | DECISION IF SpreadType <= 1 THEN TimeSinceFire > 50 | ||
ELSE (TimeSinceFire > 60) AND (!Attempted) | |||
SPREADLOCATION | |||
REGION CENTRED(1, | |||
DECISION | |||
SPREADPROB | Attempted = 1 | ||
SPREADPROB = | ENDSL | ||
SPREADPROB | |||
SPREADPROB = pSpread | |||
d = ROUND(DISTANCE(StartLocation, Location)) | d = ROUND(DISTANCE(StartLocation, Location)) | ||
distInc = | distInc = IF SpreadType EQ 0 THEN 1 ELSE MAX(0,d - SOURCE d) | ||
ENDSP | |||
ENDSP | |||
Revision as of 21:29, 8 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
