Open smalers opened 2 years ago
I added a command parameter OutputVersion
to the ReadStateModB
TSTool command and handled Total_Release
and Total_Supply
being duplicates. However, I am not sure how to handle the other cases. The result is that comparisons of StateMod 15.00.02 and 17.x will always show differences for those time series as unmatched across the datasets. However, at least the duplicate parameter issue can be handled and by using OutputVersion=Latest
(default is Original
). This is in TSTool 14.0.1.dev3, and will be in 14.0.1.
🇶🇦
This issue is causing testing that involves older versions of StateMod (e.g., 15.00.01) to show differences.
While running the testing framework on full datasets, TSTool prints warnings similar to the following for data read from
b44
(reservoir) files that were produced with 15.00.01 executable:I turned on debug level 1 and the following is shown. Notice that
Total_Release
is shown in position 12 and 19. The output is in Java-style 0-index array posirion reference whereas Fortran uses 1-reference.This is defined in the following, which looks OK for current code:
setpar
A difference of the code shows the following:
Difference of current code and old code
One option to fix this would be to update the TSTool code to automatically change the parameters as if the code fix had been in place. For example, the second
Total_Release
would becomeRiver_Release
. However, I need confirmation from Ray Bennett and I don't know how many such changes occurred without researching the code. This could impact multiple binary files. I need something like:b44
Total_Release
(Fortran position 20, Java position 19)River_Release
b44
Total Supply
(Fortran position 21, Java position 20)River_Divert
With the above guidance, I could change the TSTool code and make it return the correct parameter for old binary files and then the tests would be "apples to apples". Otherwise, the
CompareTimeSeries
command will continue to report the warnings and the comparison is incomplete.