Ejemplo n.º 1
0
        //---------------------------------------------------------------------
        ///<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;
                }
            }
        }
Ejemplo n.º 2
0
        //---------------------------------------------------------------------

        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);
        }
Ejemplo n.º 3
0
        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;
            }

        }
Ejemplo n.º 6
0
        //---------------------------------------------------------------------

        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);
        }
Ejemplo n.º 7
0
        //---------------------------------------------------------------------

        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);
        }