//--------------------------------------------------------------------- /// <summary> /// Initializes the instance and its associated site variables. /// </summary> protected void Initialize(PlugIns.ICore modelCore, double[,] establishProbabilities, SeedingAlgorithms seedAlg, Reproduction.Delegates.AddNewCohort addNewCohort) { Model.Core = modelCore; SiteVars.Initialize(); Seeding.InitializeMaxSeedNeighborhood(); disturbedSites = new DisturbedSiteEnumerator(Model.Core.Landscape, SiteVars.Disturbed); SeedingAlgorithm algorithm; switch (seedAlg) { case SeedingAlgorithms.NoDispersal: algorithm = NoDispersal.Algorithm; break; case SeedingAlgorithms.UniversalDispersal: algorithm = UniversalDispersal.Algorithm; break; case SeedingAlgorithms.WardSeedDispersal: algorithm = WardSeedDispersal.Algorithm; break; default: throw new ArgumentException(string.Format("Unknown seeding algorithm: {0}", seedAlg)); } Reproduction.Initialize(establishProbabilities, algorithm, addNewCohort == null ? null : new Reproduction.Delegates.AddNewCohort(addNewCohort)); }
//--------------------------------------------------------------------- /// <summary> /// Initializes the instance and its associated site variables. /// </summary> protected void Initialize(ICore modelCore, SeedingAlgorithms seedAlg) { Model.Core = modelCore; SiteVars.Initialize(); Seeding.InitializeMaxSeedNeighborhood(); disturbedSites = new DisturbedSiteEnumerator(Model.Core.Landscape, SiteVars.Disturbed); SeedingAlgorithm algorithm; switch (seedAlg) { case SeedingAlgorithms.NoDispersal: algorithm = NoDispersal.Algorithm; break; case SeedingAlgorithms.UniversalDispersal: algorithm = UniversalDispersal.Algorithm; break; case SeedingAlgorithms.WardSeedDispersal: algorithm = WardSeedDispersal.Algorithm; break; default: throw new ArgumentException(string.Format("Unknown seeding algorithm: {0}", seedAlg)); } Reproduction.Initialize(algorithm); }
//--------------------------------------------------------------------- /// <summary> /// Initializes the instance and its associated site variables. /// </summary> protected void Initialize(ICore modelCore, SeedingAlgorithms seedAlg)//, //Reproduction.Delegates.AddNewCohort addNewCohort) { Model.Core = modelCore; SiteVars.Initialize(); Seeding.InitializeMaxSeedNeighborhood(); disturbedSites = new DisturbedSiteEnumerator(Model.Core.Landscape, SiteVars.Disturbed); SeedingAlgorithm algorithm; switch (seedAlg) { case SeedingAlgorithms.NoDispersal: algorithm = NoDispersal.Algorithm; break; case SeedingAlgorithms.UniversalDispersal: algorithm = UniversalDispersal.Algorithm; break; case SeedingAlgorithms.WardSeedDispersal: algorithm = WardSeedDispersal.Algorithm; break; default: throw new ArgumentException(string.Format("Unknown seeding algorithm: {0}", seedAlg)); } Reproduction.Initialize(algorithm); }
//--------------------------------------------------------------------- /// <summary> /// Initializes the instance and its associated site variables. /// </summary> protected void Initialize(PlugIns.ICore modelCore, double[,] establishProbabilities, SeedingAlgorithms seedAlg, Reproduction.Delegates.AddNewCohort addNewCohort) { Model.Core = modelCore; SiteVars.Initialize(); Seeding.InitializeMaxSeedNeighborhood(); disturbedSites = new DisturbedSiteEnumerator(Model.Core.Landscape, SiteVars.Disturbed); SeedingAlgorithm algorithm; switch (seedAlg) { case SeedingAlgorithms.NoDispersal: algorithm = NoDispersal.Algorithm; break; case SeedingAlgorithms.UniversalDispersal: algorithm = UniversalDispersal.Algorithm; break; case SeedingAlgorithms.WardSeedDispersal: algorithm = WardSeedDispersal.Algorithm; break; default: throw new ArgumentException(string.Format("Unknown seeding algorithm: {0}", seedAlg)); } Reproduction.Initialize(establishProbabilities, algorithm, addNewCohort == null ? null : new Reproduction.Delegates.AddNewCohort(addNewCohort)); }
//--------------------------------------------------------------------- /// <summary> /// Initializes the instance and its associated site variables. /// </summary> protected void Initialize(ICore modelCore, SeedingAlgorithms seedAlg)//, //Reproduction.Delegates.AddNewCohort addNewCohort) { Model.Core = modelCore; SiteVars.Initialize(); Seeding.InitializeMaxSeedNeighborhood(); disturbedSites = new DisturbedSiteEnumerator(Model.Core.Landscape, SiteVars.Disturbed); SeedingAlgorithm algorithm = SeedingAlgorithmsUtil.GetAlgorithm(seedAlg, Timestep); Reproduction.Initialize(algorithm); }
//--------------------------------------------------------------------- /// <summary> /// Initializes the instance and its associated site variables. /// </summary> protected void Initialize(ICore modelCore, SeedingAlgorithms seedAlg)//, //Reproduction.Delegates.AddNewCohort addNewCohort) { Model.Core = modelCore; SiteVars.Initialize(); Seeding.InitializeMaxSeedNeighborhood(); disturbedSites = new DisturbedSiteEnumerator(Model.Core.Landscape, SiteVars.Disturbed); SeedingAlgorithm algorithm = SeedingAlgorithmsUtil.GetAlgorithm(seedAlg, Timestep); Reproduction.Initialize(algorithm); }
public void MixedLandscape() { ISiteVar<bool> disturbed = DisturbedSites.MixedLandscape.NewSiteVar<bool>(); foreach (Location loc in DisturbedSites.Locations) { ActiveSite site = DisturbedSites.MixedLandscape[loc]; Assert.IsNotNull(site); disturbed[site] = true; } DisturbedSiteEnumerator disturbedSites; disturbedSites = new DisturbedSiteEnumerator(DisturbedSites.MixedLandscape, disturbed); int count = 0; foreach (ActiveSite site in disturbedSites) { count++; Assert.IsTrue(count <= DisturbedSites.Locations.Length); Assert.AreEqual(DisturbedSites.Locations[count-1], site.Location); } Assert.AreEqual(count, DisturbedSites.Locations.Length); }
public void MixedLandscape() { // columns: 123456789 ILandscape landscape = MakeLandscape("---------", // row 1 "---XXXX--", // row 2 "--XXXXX--", // row 3 "--XXXXXX-", // row 4 "-XXX--XX-", // row 5 "-XX---XXX", // row 6 "--XX--X--"); // row 7 ISiteVar <bool> disturbed = landscape.NewSiteVar <bool>(); Location[] disturbedLocs = new Location[] { new Location(2, 6), new Location(3, 4), new Location(3, 5), new Location(5, 7), new Location(5, 8), new Location(6, 2), new Location(7, 7) }; foreach (Location loc in disturbedLocs) { ActiveSite site = landscape[loc]; Assert.IsNotNull(site); disturbed[site] = true; } DisturbedSiteEnumerator disturbedSites; disturbedSites = new DisturbedSiteEnumerator(landscape, disturbed); int count = 0; foreach (ActiveSite site in disturbedSites) { count++; Assert.IsTrue(count <= disturbedLocs.Length); Assert.AreEqual(disturbedLocs[count - 1], site.Location); } Assert.AreEqual(count, disturbedLocs.Length); }
public void MixedLandscape() { // columns: 123456789 ILandscape landscape = MakeLandscape( "---------", // row 1 "---XXXX--", // row 2 "--XXXXX--", // row 3 "--XXXXXX-", // row 4 "-XXX--XX-", // row 5 "-XX---XXX", // row 6 "--XX--X--"); // row 7 ISiteVar<bool> disturbed = landscape.NewSiteVar<bool>(); Location[] disturbedLocs = new Location[] { new Location(2,6), new Location(3,4), new Location(3,5), new Location(5,7), new Location(5,8), new Location(6,2), new Location(7,7) }; foreach (Location loc in disturbedLocs) { ActiveSite site = landscape[loc]; Assert.IsNotNull(site); disturbed[site] = true; } DisturbedSiteEnumerator disturbedSites; disturbedSites = new DisturbedSiteEnumerator(landscape, disturbed); int count = 0; foreach (ActiveSite site in disturbedSites) { count++; Assert.IsTrue(count <= disturbedLocs.Length); Assert.AreEqual(disturbedLocs[count-1], site.Location); } Assert.AreEqual(count, disturbedLocs.Length); }
public void MixedLandscape() { ISiteVar <bool> disturbed = DisturbedSites.MixedLandscape.NewSiteVar <bool>(); foreach (Location loc in DisturbedSites.Locations) { ActiveSite site = DisturbedSites.MixedLandscape[loc]; Assert.IsNotNull(site); disturbed[site] = true; } DisturbedSiteEnumerator disturbedSites; disturbedSites = new DisturbedSiteEnumerator(DisturbedSites.MixedLandscape, disturbed); int count = 0; foreach (ActiveSite site in disturbedSites) { count++; Assert.IsTrue(count <= DisturbedSites.Locations.Length); Assert.AreEqual(DisturbedSites.Locations[count - 1], site.Location); } Assert.AreEqual(count, DisturbedSites.Locations.Length); }