//--------------------------------------------------------------------- public static byte CalcSeverity(ActiveSite site, int currentTime) { IFireRegion ecoregion = SiteVars.FireRegion[site]; IFuelCurve fuelCurve = ecoregion.FuelCurve; IWindCurve windCurve = ecoregion.WindCurve; int severity = 0; int timeSinceLastFire = currentTime - SiteVars.TimeOfLastFire[site]; if (fuelCurve.Severity1 != -1 && timeSinceLastFire >= fuelCurve.Severity1) { severity = 1; } if (fuelCurve.Severity2 != -1 && timeSinceLastFire >= fuelCurve.Severity2) { severity = 2; } if (fuelCurve.Severity3 != -1 && timeSinceLastFire >= fuelCurve.Severity3) { severity = 3; } if (fuelCurve.Severity4 != -1 && timeSinceLastFire >= fuelCurve.Severity4) { severity = 4; } if (fuelCurve.Severity5 != -1 && timeSinceLastFire >= fuelCurve.Severity5) { severity = 5; } int windSeverity = 0; int timeSinceLastWind = 0; if (SiteVars.TimeOfLastWind != null) { timeSinceLastWind = currentTime - SiteVars.TimeOfLastWind[site]; if (windCurve.Severity1 != -1 && timeSinceLastWind <= windCurve.Severity1) { windSeverity = 1; } if (windCurve.Severity2 != -1 && timeSinceLastWind <= windCurve.Severity2) { windSeverity = 2; } if (windCurve.Severity3 != -1 && timeSinceLastWind <= windCurve.Severity3) { windSeverity = 3; } if (windCurve.Severity4 != -1 && timeSinceLastWind <= windCurve.Severity4) { windSeverity = 4; } if (windCurve.Severity5 != -1 && timeSinceLastWind <= windCurve.Severity5) { windSeverity = 5; } } if (windSeverity > severity) { severity = windSeverity; } return((byte)severity); }
//--------------------------------------------------------------------- public FireRegion(int index) { this.fuelCurve = new FuelCurve(); this.windCurve = new WindCurve(); this.index = index; }