Spread() private method

private Spread ( int currentTime ) : void
currentTime int
return void
Esempio n. 1
0
        //---------------------------------------------------------------------

        public static Event Initiate(ActiveSite site,
                                     int currentTime,
                                     int timestep)
        {
            IFireRegion ecoregion = SiteVars.FireRegion[site];

            //Adjust ignition probability (measured on an annual basis) for the
            //user determined fire time step.
            double ignitionProb = ecoregion.IgnitionProbability * timestep;

            //The initial site must exceed the probability of initiation and
            //have a severity > 0 and exceed the ignition threshold:

            if (PlugIn.ModelCore.GenerateUniform() <= ignitionProb &&
                PlugIn.ModelCore.GenerateUniform() <= ComputeFireInitSpreadProb(site, currentTime) &&
                CalcSeverity(site, currentTime) > 0)
            {
                Event FireEvent = new Event(site);
                FireEvent.Spread(currentTime);
                return(FireEvent);
            }
            else
            {
                return(null);
            }
        }
        //---------------------------------------------------------------------

        public static Event Initiate(ActiveSite site,
                                     int        currentTime,
                                     int        timestep)
        {
            IFireRegion ecoregion = SiteVars.FireRegion[site];
            
            //Adjust ignition probability (measured on an annual basis) for the 
            //user determined fire time step.
            double ignitionProb = ecoregion.IgnitionProbability * timestep;

            //The initial site must exceed the probability of initiation and
            //have a severity > 0 and exceed the ignition threshold:

            if (PlugIn.ModelCore.GenerateUniform() <= ignitionProb
                && PlugIn.ModelCore.GenerateUniform() <= ComputeFireInitSpreadProb(site, currentTime)
                && CalcSeverity(site, currentTime) > 0) 
            {
                Event FireEvent = new Event(site);
                FireEvent.Spread(currentTime);
                return FireEvent;
            }
            else
                return null;
        }