LANDIS-II Libraries
To-do list for LANDIS-II libraries
Base Cohorts - Srinivas
- Re-enable the unit test in SpeciesCohorts_Test that's now disabled because of age-related mortality’s use of the core’s Util.Random static class (priority=low). (not done)
- This can only be done once SpeciesCohorts is rewritten not to use the static class, and instead use a mock random number generator. (not done)
- Generate documentation from source code. (not done)
- Species added with age of zero (0) (DONE)
Biomass Cohorts - Srinivas
- Determine if method BiomassReduced event needed (medium). (not done)
- Move PrevYearSiteMortality (SiteMortality) to MySuccession.SiteVars (medium). (not done)
- Revise OldToYoungIterator to use some other mechanism to represent no more cohorts; the current mechanism (currentCohortAge = 0) fails with succession timestep = 0.
- JD: done already?
- Species added with age of zero (0) (DONE)
Succession - Srinivas
- Double-check name spaces! (DONE)
- Establishment Probabilities should be contained within the succession extensions, not within the Reproduction class. (medium - almost done)
- Modify Reproduction.Initialize (done)
- Remove Reproduction.ChangeEstablishProbabilies, Reproduction.GetEstablishProbability (done)
- Modify Establish to be a delegates method, add default method to ReproductionDefaults class (HIGH - DONE)
- Determine where Reproduction.MaturePresent belong. We might consider turning this into a BitArray for the species (see Planting.cs for an example), contained within SiteVars. (done)
- Remove the SiteVarRegs class (HIGH - DONE)
- Rename Reproduction.SufficientLight to SufficientResources (low) (done)
- Rename Reproduction.Do to Reproduction.Reproduce() (medium) (done)
- Rename the PlugIn class as ExtensionBase to clearly indicate its purpose (low) (done)
- Why is Disturbed_get repeated in PlugIn class?
- Modify PlugIn.Initialize to not require establishProbabilities
- Move progress meter (indicator) class (code) to console project (medium) (done)
- It should implement Landis.IProgressMeter interface (part of utility module in core)
- Rename SufficientLight method to SufficientCellResources so as to be more generic (low) (done)
- Modify PlugIn base class to get a new progress meter from the core (done)
- Model.Core.UI.GetProgressMeter(…)
- Update PlugIn.Initialize method & Reproduction class to use new [AuxParm|Array] classes in species and ecoregion modules instead of double [,] for establishment probabilities. (done)
- Remove the last statement in PlugIn.InitializeSites method is pointless (medium): (done)
- Add protected method to flag a site as disturbed. (low) (not done)
- It should keep a running total of disturbed sites to be used with progress meter when succession runs during disturbance timesteps. Currently, the meter isn't used during disturbance timesteps.
- Age-only succession and biomass succession should call this method instead of updating Disturbed site var directly.
- Seed dispersal algorithms (Rob)
- Write unit tests for neighborhood code.
Testing (Landis.TestUtil)
- Library for testing libraries and plug-ins that interact w/the core
- Already done for version 6/dual-scale branches?
- Has default, simple implementation of ICore for test code to use
- Make sure that this library doesn't duplicate code used by the test projects for the individual core modules.
Testing (Landis.GeospatialModeling.RasterIO.Testing) [moved spatial-library to-do list]
- Need simple implementations (using arrays) of raster driver and raster manager for testing.
- Used by the test projects for individual core modules (e.g., Ecoregions)
- Used by test projects for extensions

