//--------------------------------------------------------------------- public override void Initialize() { //event_id = 1; HarvestMgmtLib.SiteVars.GetExternalVars(); SiteVars.Initialize(); Timestep = parameters.Timestep; managementAreas = parameters.ManagementAreas; ModelCore.UI.WriteLine(" Reading management-area map {0} ...", parameters.ManagementAreaMap); ManagementAreas.ReadMap(parameters.ManagementAreaMap, managementAreas); ModelCore.UI.WriteLine(" Reading stand map {0} ...", parameters.StandMap); Stands.ReadMap(parameters.StandMap); foreach (ManagementArea mgmtArea in managementAreas) mgmtArea.FinishInitialization(); prescriptionMaps = new PrescriptionMaps(parameters.PrescriptionMapNames); nameTemplate = parameters.PrescriptionMapNames; if (parameters.BiomassMapNames != null) biomassMaps = new BiomassMaps(parameters.BiomassMapNames); //open log file and write header ModelCore.UI.WriteLine(" Opening harvest log file \"{0}\" ...", parameters.EventLog); try { log = Landis.Data.CreateTextFile(parameters.EventLog); } catch (Exception err) { string mesg = string.Format("{0}", err.Message); throw new System.ApplicationException(mesg); } log.AutoFlush = true; //include a column for each species in the species dictionary string species_header_names = ""; int i = 0; for (i = 0; i < modelCore.Species.Count; i++) { species_header_names += "," + modelCore.Species[i].Name; } log.WriteLine("Time,ManagementArea,Prescription,StandMapCode,EventId,StandAge,StandRank,StandSiteCount,DamagedSites,MgBiomassRemoved,MgBioRemovedPerDamagedHa,CohortsDamaged,CohortsKilled{0}", species_header_names); ModelCore.UI.WriteLine(" Opening summary harvest log file \"{0}\" ...", parameters.SummaryLog); try { summaryLog = Landis.Data.CreateTextFile(parameters.SummaryLog); } catch (Exception err) { string mesg = string.Format("{0}", err.Message); throw new System.ApplicationException(mesg); } summaryLog.AutoFlush = true; summaryLog.WriteLine("Time,ManagementArea,Prescription,TotalDamagedSites,TotalCohortsDamaged,TotalCohortsKilled{0}", species_header_names); }
//--------------------------------------------------------------------- public override void Initialize() { modelCore.UI.WriteLine(" Creating metadata ..."); MetadataHandler.InitializeMetadata(parameters.Timestep, parameters.PrescriptionMapNames, parameters.BiomassMapNames, modelCore); SiteVars.Initialize(); Timestep = parameters.Timestep; managementAreas = parameters.ManagementAreas; //read management area map modelCore.UI.WriteLine(" Reading management-area map {0} ...", parameters.ManagementAreaMap); ManagementAreas.ReadMap(parameters.ManagementAreaMap, managementAreas); // readMap reads the stand map and adds all the stands to a management area modelCore.UI.WriteLine(" Reading stand map {0} ...", parameters.StandMap); Stands.ReadMap(parameters.StandMap); //finish each managementArea's initialization foreach (ManagementArea mgmtArea in managementAreas) mgmtArea.FinishInitialization(); prescriptionMaps = new PrescriptionMaps(parameters.PrescriptionMapNames); nameTemplate = parameters.PrescriptionMapNames; if (parameters.BiomassMapNames != null) biomassMaps = new BiomassMaps(parameters.BiomassMapNames); //open log file and write header //modelCore.UI.WriteLine(" Opening harvest log file \"{0}\" ...", parameters.EventLog); //try //{ // log = Landis.Data.CreateTextFile(parameters.EventLog); //} //catch (Exception err) //{ // string mesg = string.Format("{0}", err.Message); // throw new System.ApplicationException(mesg); //} //log.AutoFlush = true; //include a column for each species in the species dictionary //string species_header_names = ""; //int i = 0; //for (i = 0; i < modelCore.Species.Count; i++) { // species_header_names += "," + modelCore.Species[i].Name; //} //modelCore.UI.WriteLine(" Opening summary harvest log file \"{0}\" ...", parameters.SummaryLog); //log.WriteLine("Time,ManagementArea,Prescription,StandMapCode,EventId,StandAge,StandRank,StandSiteCount,DamagedSites,MgBiomassRemoved,MgBioRemovedPerDamagedHa,CohortsDamaged,CohortsKilled{0}", species_header_names); //try //{ // summaryLog = Landis.Data.CreateTextFile(parameters.SummaryLog); //} //catch (Exception err) //{ // string mesg = string.Format("{0}", err.Message); // throw new System.ApplicationException(mesg); //} //summaryLog.AutoFlush = true; //summaryLog.WriteLine("Time,ManagementArea,Prescription,TotalDamagedSites,TotalCohortsDamaged,TotalCohortsKilled{0}", species_header_names); }