Index: examples/openstreams_w3ra_usa/outstate/Sd1.map =================================================================== diff -u -r34093e71c2f49d90a1e7df46b73ecf07913ca68f -r6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9 Binary files differ Index: examples/openstreams_w3ra_usa/outstate/Sd2.map =================================================================== diff -u -r34093e71c2f49d90a1e7df46b73ecf07913ca68f -r6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9 Binary files differ Index: examples/openstreams_w3ra_usa/outstate/Sg.map =================================================================== diff -u -r34093e71c2f49d90a1e7df46b73ecf07913ca68f -r6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9 Binary files differ Index: examples/openstreams_w3ra_usa/outstate/Sr.map =================================================================== diff -u -r34093e71c2f49d90a1e7df46b73ecf07913ca68f -r6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9 Binary files differ Index: examples/openstreams_w3ra_usa/outstate/Ss1.map =================================================================== diff -u -r34093e71c2f49d90a1e7df46b73ecf07913ca68f -r6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9 Binary files differ Index: examples/openstreams_w3ra_usa/outstate/Ss2.map =================================================================== diff -u -r34093e71c2f49d90a1e7df46b73ecf07913ca68f -r6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9 Binary files differ Index: examples/wflow_rhine_sbm/instate/UStoreLayerDepth_0.map =================================================================== diff -u Binary files differ Index: wflow-py/UnitTests/TestBMI.py =================================================================== diff -u -ra2d5db9d67efc6c468ab40fe6cf898fbe32a87bf -r6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9 --- wflow-py/UnitTests/TestBMI.py (.../TestBMI.py) (revision a2d5db9d67efc6c468ab40fe6cf898fbe32a87bf) +++ wflow-py/UnitTests/TestBMI.py (.../TestBMI.py) (revision 6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9) @@ -143,6 +143,7 @@ def testbmirun(self): bmiobj = bmi.wflowbmi_csdms() bmiobj.initialize('wflow_sceleton/wflow_sceleton.ini',loglevel=logging.DEBUG) + bmiobj.set_attribute_value('run:runlengthdetermination', 'intervals') print(bmiobj.get_var_type("IF")) et = bmiobj.get_end_time() st = bmiobj.get_start_time() @@ -155,8 +156,23 @@ print et - bmiobj.get_current_time() self.assertEquals(et,bmiobj.get_current_time()) + def testbmirun_hr(self): + bmiobj = bmi.wflowbmi_csdms() + bmiobj.initialize('wflow_sceleton/wflow_sceleton_hr.ini',loglevel=logging.DEBUG) + print(bmiobj.get_var_type("IF")) + et = bmiobj.get_end_time() + st = bmiobj.get_start_time() + ts = 3600 + # Do timesteps and chak + bmiobj.update_until(et) + bmiobj.get_current_time() + bmiobj.finalize() + print et - bmiobj.get_current_time() + self.assertEquals(et,bmiobj.get_current_time()) + + def testbmirun_l(self): print 'Run with update(-1)' bmiobj = bmi.wflowbmi_light() Index: wflow-py/UnitTests/wflow_sceleton/intss/Temp.tss =================================================================== diff -u -r6a7bc8aa1448ca6ea1197143f25524e413ac27b5 -r6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9 --- wflow-py/UnitTests/wflow_sceleton/intss/Temp.tss (.../Temp.tss) (revision 6a7bc8aa1448ca6ea1197143f25524e413ac27b5) +++ wflow-py/UnitTests/wflow_sceleton/intss/Temp.tss (.../Temp.tss) (revision 6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9) @@ -22,3 +22,31 @@ 1.800000e+001 0.000000e+000 1.900000e+001 0.000000e+000 2.000000e+001 0.000000e+000 + 21 0 + 22 0 + 23 0 + 24 0 + 25 0 + 26 0 + 27 0 + 28 0 + 29 0 + 30 0 + 31 0 + 32 0 + 33 0 + 34 0 + 35 0 + 36 0 + 37 0 + 38 0 + 39 0 + 40 0 + 41 0 + 42 0 + 43 0 + 44 0 + 45 0 + 46 0 + 47 0 + 48 0 \ No newline at end of file Index: wflow-py/UnitTests/wflow_sceleton/outstate/TSoil.map =================================================================== diff -u -r1779d0977fdb473bf98a99cc22853d83e9cec801 -r6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9 Binary files differ Index: wflow-py/_version.py =================================================================== diff -u -rc75cd39c7ab3f016871f42465d695511a39cd8b6 -r6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9 --- wflow-py/_version.py (.../_version.py) (revision c75cd39c7ab3f016871f42465d695511a39cd8b6) +++ wflow-py/_version.py (.../_version.py) (revision 6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9) @@ -1,4 +1,4 @@ VERSION="1.0.master.1" MVERSION="1.0.master" NVERSION="1.0.1" -BUILD="2017-02-16 14:17:40.297000" +BUILD="2017-03-06 18:13:19.490000" Index: wflow-py/wflow/__init__.py =================================================================== diff -u -rc75cd39c7ab3f016871f42465d695511a39cd8b6 -r6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9 --- wflow-py/wflow/__init__.py (.../__init__.py) (revision c75cd39c7ab3f016871f42465d695511a39cd8b6) +++ wflow-py/wflow/__init__.py (.../__init__.py) (revision 6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9) @@ -2,7 +2,7 @@ __version__="1.0.master" __release__="1.0.master.1" __versionnr__="1.0.1" -__build__="2017-02-16 14:17:40.297000" +__build__="2017-03-06 18:13:19.490000" import osgeo.gdal as gdal import os, sys Index: wflow-py/wflow/wf_DynamicFramework.py =================================================================== diff -u -rc75cd39c7ab3f016871f42465d695511a39cd8b6 -r6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9 --- wflow-py/wflow/wf_DynamicFramework.py (.../wf_DynamicFramework.py) (revision c75cd39c7ab3f016871f42465d695511a39cd8b6) +++ wflow-py/wflow/wf_DynamicFramework.py (.../wf_DynamicFramework.py) (revision 6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9) @@ -2091,9 +2091,9 @@ laststep = self._d_lastTimestep self._userModel()._setNrTimeSteps(int(laststep)) - self.logger.debug("1 - time = " + str(self.DT.currentDateTime)) + self.DT.update(currentTimeStep=self.DT.currentTimeStep, mode=self.runlengthdetermination) - self.logger.debug("2 - time = " + str(self.DT.currentDateTime)) + self.logger.debug(self.DT.currentDateTime) while step <= self._userModel().nrTimeSteps(): self._incrementIndentLevel() @@ -2124,12 +2124,12 @@ #self.currentdatetime = self.currentdatetime + dt.timedelta(seconds=self._userModel().timestepsecs) - self.logger.debug("3 - time = " + str(self.DT.currentDateTime)) + self.DT.update(currentTimeStep=self.DT.currentTimeStep+1, mode=self.runlengthdetermination) self._userModel().currentdatetime = self.DT.currentDateTime self.logger.debug("timestep: " + str(self.DT.currentTimeStep-1) + "/" + str(self.DT.runTimeSteps) + " (" + str(self.DT.currentDateTime) + ")") - self.logger.debug("4 - time = " + str(self.DT.currentDateTime)) + self._timeStepFinished() self._decrementIndentLevel() step += 1 Index: wflow-py/wflow/wflow_bmi.py =================================================================== diff -u -r1779d0977fdb473bf98a99cc22853d83e9cec801 -r6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9 --- wflow-py/wflow/wflow_bmi.py (.../wflow_bmi.py) (revision 1779d0977fdb473bf98a99cc22853d83e9cec801) +++ wflow-py/wflow/wflow_bmi.py (.../wflow_bmi.py) (revision 6feb4db7b1bd34e7acb019e3393dd5774bdd5fa9) @@ -21,7 +21,7 @@ """ config = ConfigParser.SafeConfigParser() config.optionxform = str - config.read(configfile) + ret = config.read(configfile) return config @@ -739,14 +739,18 @@ raise ValueError("Time more than one timestep before current time.") self.dynModel.wf_QuickResume() else: - timespan = time - curtime - nrsteps = int(timespan/self.dynModel.DT.timeStepSecs) + smethod = configget(self.config,'run','runlengthdetermination','intervals') + if smethod == 'steps': + timespan = time - curtime + self.dynModel.DT.timeStepSecs + else: + timespan = time - curtime + nrsteps = int(timespan/self.dynModel.DT.timeStepSecs) + 1 self.bmilogger.debug('update_until: update ' + str(nrsteps) + ' timesteps forward from ' + str(curtime) + ' to ' + str(curtime + timespan)) self.bmilogger.debug('update_until: step ' + str(self.currenttimestep) + ' to ' + str(self.currenttimestep + nrsteps -1)) self.dynModel._runDynamic(self.currenttimestep, self.currenttimestep + nrsteps -1) self.currenttimestep = self.currenttimestep + nrsteps - self.bmilogger.debug("XX - Current time now: " + str(self.get_current_time())) + def update_frac(self, time_frac): """ Not implemented. Raises a NotImplementedError