//--------------------------------------------------------------------- /// <summary> /// Writes an output map of biomass removed from each active site. /// </summary> /// <param name="timestep"> /// Timestep to use in the map's name. /// </param> public void WriteMap(int timestep) { string path = BaseHarvest.MapNames.ReplaceTemplateVars(nameTemplate, timestep); using (IOutputRaster<BiomassPixel> map = CreateMap(path)) { BiomassPixel pixel = new BiomassPixel(); foreach (Site site in Model.Core.Landscape.AllSites) { pixel.Band0 = (ushort) (SiteVars.BiomassRemoved[site] / 10.0); map.WritePixel(pixel); } } }
//--------------------------------------------------------------------- private void WriteSpeciesMaps() { foreach (ISpecies species in selectedSpecies) { foreach(AgeClass ageclass in ageClasses[species.Name]) { IOutputRaster<BiomassPixel> map = CreateMap(MakeSpeciesMapName(species.Name, ageclass.Name)); using (map) { BiomassPixel pixel = new BiomassPixel(); foreach (Site site in modelCore.Landscape.AllSites) { if (site.IsActive) pixel.Band0 = (ushort)((float)Util.ComputeAgeClassBiomass(cohorts[site][species], ageclass) / 100.0); else pixel.Band0 = 0; map.WritePixel(pixel); } } } } }
//--------------------------------------------------------------------- private void WriteMapForAllSpecies() { // Biomass map for all species IOutputRaster<BiomassPixel> map = CreateMap(MakeSpeciesMapName("TotalBiomass")); using (map) { BiomassPixel pixel = new BiomassPixel(); foreach (Site site in modelCore.Landscape.AllSites) { if (site.IsActive) pixel.Band0 = (ushort) ((float) Util.ComputeBiomass(cohorts[site]) / 100.0); else pixel.Band0 = 0; map.WritePixel(pixel); } } }
//--------------------------------------------------------------------- private void WritePoolMap(string poolName, ISiteVar<Pool> poolSiteVar) { string path = PoolMapNames.ReplaceTemplateVars(poolMapNameTemplate, poolName, modelCore.CurrentTime); IOutputRaster<BiomassPixel> map = CreateMap(path); using (map) { BiomassPixel pixel = new BiomassPixel(); foreach (Site site in modelCore.Landscape.AllSites) { if (site.IsActive) pixel.Band0 = (ushort) ((float) poolSiteVar[site].Biomass / 100.0); else pixel.Band0 = 0; map.WritePixel(pixel); } } }
//--------------------------------------------------------------------- private void WriteSpeciesMaps() { foreach (ISpecies species in selectedSpecies) { IOutputRaster<BiomassPixel> map = CreateMap(MakeSpeciesMapName(species.Name)); using (map) { BiomassPixel pixel = new BiomassPixel(); foreach (Site site in Model.Core.Landscape.AllSites) { if (site.IsActive) pixel.Band0 = (ushort) Math.Round((double) ComputeSpeciesBiomass(cohorts[site][species]) / 100.0); else pixel.Band0 = 0; map.WritePixel(pixel); } } } }
//--------------------------------------------------------------------- private void WriteSpeciesMaps() { foreach (ISpecies species in selectedSpecies) { IOutputRaster<BiomassPixel> map = CreateMap(MakeSpeciesMapName(species.Name)); using (map) { BiomassPixel pixel = new BiomassPixel(); foreach (Site site in modelCore.Landscape.AllSites) { if (site.IsActive) pixel.Band0 = Util.ComputeBiomass(cohorts[site][species]); else pixel.Band0 = 0; map.WritePixel(pixel); } } } WriteMapForAllSpecies(); }