Index: wflow/wflow_lib.py =================================================================== diff -u -r2b2aefc178129a9b2ecc721db1b4724a0d159f6e -r23c90f8aa3489399dfee6fdd86e2a82d793ff6f1 --- wflow/wflow_lib.py (.../wflow_lib.py) (revision 2b2aefc178129a9b2ecc721db1b4724a0d159f6e) +++ wflow/wflow_lib.py (.../wflow_lib.py) (revision 23c90f8aa3489399dfee6fdd86e2a82d793ff6f1) @@ -201,7 +201,7 @@ :return: storage (m^3), outflow (m^3/s), PercentageFull (0-1), Release (m^3/sec) """ - inflow = pcr.ifthen(pcr.boolean(ReserVoirLocs), inflow) + inflow = ifthen(boolean(ReserVoirLocs), inflow) oldstorage = storage storage = ( @@ -211,17 +211,17 @@ percfull = ((storage + oldstorage) * 0.5) / maxstorage # first determine minimum (environmental) flow using a simple sigmoid curve to scale for target level - fac = pcr.sCurve(percfull, a=minimum_full_perc, c=30.0) - demandRelease = pcr.min(fac * demand * timestepsecs, storage) + fac = sCurve(percfull, a=minimum_full_perc, c=30.0) + demandRelease = min(fac * demand * timestepsecs, storage) storage = storage - demandRelease # Re-determine percfull percfull = ((storage + oldstorage) * 0.5) / maxstorage - wantrel = pcr.max(0.0, storage - (maxstorage * target_perc_full)) + wantrel = max(0.0, storage - (maxstorage * target_perc_full)) # Assume extra maximum Q if spilling overflowQ = (percfull - 1.0) * (storage - maxstorage) - torelease = pcr.min(wantrel, overflowQ + maximum_Q * timestepsecs) + torelease = min(wantrel, overflowQ + maximum_Q * timestepsecs) storage = storage - torelease outflow = (torelease + demandRelease) / timestepsecs percfull = storage / maxstorage