static void Main(string[] args) { bool piscesFormat = false; Stopwatch swTotal = Stopwatch.StartNew(); var fn = @"c:\temp\sqlite-ensemble-test.db"; if (piscesFormat) { fn = @"c:\temp\pisces-ensemble-test.pdb"; } File.Delete(fn); CsvEnsembleReader r = new CsvEnsembleReader(EnsembleTester.CacheDir); var watershedNames = new string[] { "RussianNapa", "EastSierra", "FeatherYuba" }; //var watershedNames = new string[] { "EastSierra", "FeatherYuba" }; var sw = new Stopwatch(); foreach (var name in watershedNames) { var t1 = new DateTime(2013, 11, 3, 12, 0, 0); var t2 = new DateTime(2014, 11, 3, 12, 0, 0); var ws = r.Read(name, t1, t2); sw.Start(); SqLiteEnsemble.Write(fn, ws, true, piscesFormat); sw.Stop(); } Console.WriteLine(sw.Elapsed.TotalSeconds.ToString("F1") + " sqlite elapsed seconds"); Console.WriteLine(swTotal.Elapsed.TotalSeconds.ToString("F1") + " Total elapsed seconds"); }
private static void RoundTrip(string fn, Watershed ws, DateTime t, bool piscesFormat = false) { SqLiteEnsemble.Write(fn, ws, true, piscesFormat); var ws2 = SqLiteEnsemble.Read("simple", t, t.AddDays(1), fn); Assert.AreEqual(1, ws2.Locations.Count); var data = ws2.Locations[0].Forecasts[0].Ensemble; Assert.AreEqual(-1.0f, data[0, 0]); Assert.AreEqual(-2.1f, data[0, 1]); Assert.AreEqual(-3.1f, data[0, 2]); Assert.AreEqual(-59.0f, data[58, 0]); Assert.AreEqual(-59.1f, data[58, 1]); Assert.AreEqual(-59.2f, data[58, 2]); }
public void GenerateFromCsv() { var fn = @"c:\temp\pisces-ensemble-test.pdb"; File.Delete(fn); CsvEnsembleReader r = new CsvEnsembleReader(EnsembleTester.CacheDir); var watershedNames = new string[] { "RussianNapa", "EastSierra", "FeatherYuba" }; //var watershedNames = new string[] { "EastSierra", "FeatherYuba" }; foreach (var name in watershedNames) { var t1 = new DateTime(2013, 11, 3, 12, 0, 0); var ws = r.Read(name, t1, t1.AddDays(40)); SqLiteEnsemble.Write(fn, ws, true, true); } }