// Finds extreme event rainfall depths for a choice of precip. station and // climate projection year. private static void UpdateMaxRainAdjustments() { string rainID = GeoData.GetStationID(SiteData.rainSourceIndex); double[] y = new double[6]; string precTable; maxrain1.Clear(); if (SiteData.climateYear == 2035) { precTable = StormwaterCalculator.Properties.Resources.GEVdepth2035Hot; } else { precTable = StormwaterCalculator.Properties.Resources.GEVdepth2060Hot; } if (GetMaxRainAdjustments(precTable, rainID, ref y)) { maxrain1.Add(null, y); } maxrain2.Clear(); if (SiteData.climateYear == 2035) { precTable = StormwaterCalculator.Properties.Resources.GEVdepth2035Med; } else { precTable = StormwaterCalculator.Properties.Resources.GEVdepth2060Med; } if (GetMaxRainAdjustments(precTable, rainID, ref y)) { maxrain2.Add(null, y); } maxrain3.Clear(); if (SiteData.climateYear == 2035) { precTable = StormwaterCalculator.Properties.Resources.GEVdepth2035Wet; } else { precTable = StormwaterCalculator.Properties.Resources.GEVdepth2060Wet; } if (GetMaxRainAdjustments(precTable, rainID, ref y)) { maxrain3.Add(null, y); } maxrain0.Clear(); precTable = StormwaterCalculator.Properties.Resources.GEVdepth_historical; if (GetMaxRainAdjustments(precTable, rainID, ref y)) { maxrain0.Add(null, y); } }
// Finds adjustments to monthly average rainfall depths for a choice of // precip. station location and climate projection year. private static void UpdateRainfallAdjustments() { // Get rainfall adjustments for each scenario string rainID = GeoData.GetStationID(SiteData.rainSourceIndex); double[] y = new double[12]; string precTable; rainDelta1.Clear(); if (SiteData.climateYear == 2035) { precTable = StormwaterCalculator.Properties.Resources.PREC2035Hot; } else { precTable = StormwaterCalculator.Properties.Resources.PREC2060Hot; } if (GetRainfallAdjustments(precTable, rainID, ref y)) { rainDelta1.Add(null, y); } rainDelta2.Clear(); if (SiteData.climateYear == 2035) { precTable = StormwaterCalculator.Properties.Resources.PREC2035Med; } else { precTable = StormwaterCalculator.Properties.Resources.PREC2060Med; } if (GetRainfallAdjustments(precTable, rainID, ref y)) { rainDelta2.Add(null, y); } rainDelta3.Clear(); if (SiteData.climateYear == 2035) { precTable = StormwaterCalculator.Properties.Resources.PREC2035Wet; } else { precTable = StormwaterCalculator.Properties.Resources.PREC2060Wet; } if (GetRainfallAdjustments(precTable, rainID, ref y)) { rainDelta3.Add(null, y); } }
public static void SaveRainfallData(int stationIndex) { SaveFileDialog saveFileDialog1 = new SaveFileDialog(); saveFileDialog1.Filter = "Data files (*.dat)|*.dat|All files (*.*)|*.*"; saveFileDialog1.FilterIndex = 1; saveFileDialog1.FileName = "Rain - " + GeoData.GetStationID(stationIndex) + ".dat"; if (saveFileDialog1.ShowDialog() == DialogResult.OK) { if (GeoData.GetSwmmRainfall(stationIndex) == 0) { System.IO.File.Copy(SiteData.rainFile, saveFileDialog1.FileName, true); } } }
public static void WriteLongTermInpFile() { File.Copy(inpFile1, inpFile, true); using (StreamWriter sw = File.AppendText(inpFile)) { sw.WriteLine("[RAINGAGES]"); string stationID = GeoData.GetStationID(SiteData.rainSourceIndex); string fname = rainFile; sw.WriteLine( "RainGage1 INTENSITY 1:00 1.0 FILE \"" + fname + "\" " + stationID + " IN"); sw.WriteLine(); // Rainfall adjustments if (climateScenarioIndex > 0) { sw.WriteLine("[ADJUSTMENTS]"); sw.WriteLine(Climate.GetPrecipData(climateScenarioIndex)); sw.WriteLine(); } } }
//------------------------------------------------------------------------ // Retrieves the SCS design storm distribution type for a precip. station. //------------------------------------------------------------------------ public static string GetScsType() { string rainID = GeoData.GetStationID(SiteData.rainSourceIndex); string table = StormwaterCalculator.Properties.Resources.PREC_SCS_Types; string line; try { using (StringReader sr = new StringReader(table)) { line = sr.ReadLine(); while (true) { line = sr.ReadLine(); if (line == null) { return("II"); } if (line.StartsWith(rainID)) { string[] values = line.Split(default(Char[]), StringSplitOptions.RemoveEmptyEntries); if (values.Length >= 2) { return(values[1]); } } } } } catch (Exception ex) { MessageBox.Show(ex.Message, "File Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return("II"); } }