//--------------------------------------------------------------------- ///<summary> ///Initialize an Epidemic - defined as an agent outbreak for an entire landscape ///at a single BDA timestep. One epidemic per agent per BDA timestep ///</summary> public static void Initialize(IAgent agent) { UI.WriteLine("Initializing agent {0}.", agent.AgentName); ecoregions = Model.Core.Ecoregions; //successionPlugIn = Model.Core.GetSuccession(); //cohorts = Model.Core.SuccessionCohorts as ILandscapeCohorts; //if (cohorts == null) // throw new System.ApplicationException("Error: Cohorts don't support age-cohort interface"); //.ActiveSiteValues allows you to reset all active site at once. SiteVars.NeighborResourceDom.ActiveSiteValues = 0; SiteVars.Vulnerability.ActiveSiteValues = 0; SiteVars.SiteResourceDomMod.ActiveSiteValues = 0; SiteVars.SiteResourceDom.ActiveSiteValues = 0; foreach (ActiveSite site in Model.Core.Landscape) { if (agent.OutbreakZone[site] == Zone.Newzone) { agent.OutbreakZone[site] = Zone.Lastzone; } else { agent.OutbreakZone[site] = Zone.Nozone; } } }
//--------------------------------------------------------------------- public ParametersParser(Ecoregions.IDataset ecoregionDataset, Species.IDataset speciesDataset, int startYear, int endYear) : base(ecoregionDataset, speciesDataset) { this.ecoregionDataset = ecoregionDataset; this.speciesDataset = speciesDataset; ClimateChange.InputValidation.Initialize(startYear, endYear); }
public void Init() { Ecoregions.DatasetParser ecoregionsParser = new Ecoregions.DatasetParser(); reader = OpenFile("Ecoregions.txt"); try { ecoregionDataset = ecoregionsParser.Parse(reader); } finally { reader.Close(); } Species.DatasetParser speciesParser = new Species.DatasetParser(); reader = OpenFile("Species.txt"); try { speciesDataset = speciesParser.Parse(reader); } finally { reader.Close(); } parser = new ParametersParser(ecoregionDataset, speciesDataset); }
//--------------------------------------------------------------------- public static void Initialize(IFireParameters[] eventParameters, IFireCurve[] fireCurves, IWindCurve[] windCurves, IDamageTable[] damages) { FireEventParms = eventParameters; FireCurves = fireCurves; WindCurves = windCurves; Event.damages = damages; ecoregions = Model.Ecoregions; successionPlugIn = Model.GetSuccession<AgeCohort.ICohort>(); cohorts = successionPlugIn.Cohorts; }
//--------------------------------------------------------------------- ///<summary> ///Initialize an Epidemic - defined as an agent outbreak for an entire landscape ///at a single BDA timestep. One epidemic per agent per BDA timestep ///</summary> public static void Initialize(IAgent agent) { UI.WriteLine("Initializing agent {0}.", agent.AgentName); ecoregions = Model.Core.Ecoregions; //successionPlugIn = Model.Core.GetSuccession(); //cohorts = Model.Core.SuccessionCohorts as ILandscapeCohorts; //if (cohorts == null) // throw new System.ApplicationException("Error: Cohorts don't support age-cohort interface"); //.ActiveSiteValues allows you to reset all active site at once. SiteVars.NeighborResourceDom.ActiveSiteValues = 0; SiteVars.Vulnerability.ActiveSiteValues = 0; SiteVars.SiteResourceDomMod.ActiveSiteValues = 0; SiteVars.SiteResourceDom.ActiveSiteValues = 0; foreach (ActiveSite site in Model.Core.Landscape) { if(agent.OutbreakZone[site] == Zone.Newzone) agent.OutbreakZone[site] = Zone.Lastzone; else agent.OutbreakZone[site] = Zone.Nozone; } }
//--------------------------------------------------------------------- private static void LoadEcoregions(string path) { Log.Info("Loading ecoregions from file \"{0}\" ...", path); Ecoregions.DatasetParser parser = new Ecoregions.DatasetParser(); ecoregions = Data.Load <Ecoregions.IDataset>(path, parser); }
//--------------------------------------------------------------------- private void LoadEcoregions(string path) { UI.WriteLine("Loading ecoregions from file \"{0}\" ...", path); Ecoregions.DatasetParser parser = new Ecoregions.DatasetParser(); ecoregions = Data.Load <Ecoregions.IDataset>(path, parser); }