public void Initialize() { SCSUnitHydrograph NRCS = new SCSUnitHydrograph(); Hashtable arguments = new Hashtable(); arguments.Add("ConfigFile", "./configTest.xml"); NRCS.Initialize(arguments); }
public void PTS() { //intialize the component SCSUnitHydrograph NRCS = new SCSUnitHydrograph(); Hashtable arguments = new Hashtable(); arguments.Add("ConfigFile", "./configTest.xml"); NRCS.Initialize(arguments); //input incremental excess precipitation values double[,] pe = new double[20, 1] { { 0.0 }, { 0.0 }, { 0.0 }, { 0.056015 }, { 0.11552 }, { 0.0 }, { 0.0 }, { 0.0 }, { 0.0 }, { 0.0 }, { 0.0 }, { 0.0 }, { 0.0 }, { 0.057091 }, { 0.0 }, { 0.0 }, { 0.0 }, { 0.0 }, { 0.0 }, { 0.0 } }; for (int j = 0; j <= pe.GetLength(0) - 1; j++) { Console.WriteLine("TimeStep " + Convert.ToString(j + 1)); double[] peArray = new double[pe.GetLength(1)]; for (int k = 0; k < 1; k++) { //create double array for the first element peArray[k] = pe[j, k]; } IValueSet Pe = new ScalarSet(peArray); //set the values defined above into the datatable NRCS.SetValues("Excess Rainfall", "Smith Branch", Pe); NRCS.PerformTimeStep(); ScalarSet NRCS_Excess = (ScalarSet)NRCS.GetValues("Runoff", "Smith Branch"); for (int i = 0; i <= NRCS_Excess.Count - 1; i++) { Console.WriteLine("Watershed: " + i.ToString() + "\t Runoff: " + NRCS_Excess.data[i].ToString()); } } NRCS.Finish(); }