This is a major new release, and has been improved with new modelling features, new algorithms, quality checks on inputs, and minor bug fixes. First, the big one:
* Water Management Optimization
Raven is now a fully integrated surface water hydrology/water resources management model, supporting general user-defined and conditionally-applied management goals expressed in terms of flows, reservoir stages, water demands, soil and SWE states, date, or time of year. Users set priorities for management goals, and Raven will determine the optimal satisfaction of these goals in a manner consistent with real world operation of managed systems. This toolkit can support evaluation of reservoir operating plans, water demand licensing during drought, dam safety protocols, or the resilience of watershed management plans. Critically, it allows the user to encode complex real-world operational decisions about water delivery, diversion, or release within a hydrologic model. This new functionality is supported with the open-source lp_solve linear programming library.
The following features have also been added since the v3.8 release (Jan 2024):
* Frozen wetlands which can accumulate snow using the LakeFreeze process.
* WATER-type HRUs via special soil profile. These water HRUs, intended to represent stream reaches or other small water bodies, support canopy processes and use sub-canopy incoming longwave radiation (unlike LAKE type HRUs) while still disabling soil processes.
* Transport simulation with :Convolution is now supported. This was the only process type which did not previously support transport, enabling temperature and tracer transport with (e.g.) the GR4J or HMETS model configurations.
* New :AnnualPattern command - Provision of time series as repeating patterns.
* New diagnostic metrics: ABS_ERR_RUN (running average absolute error), KGE_PRIME (revised Kling-Gupta which uses coefficient of variation instead of standard deviation), FUZZY_NASH (Nash Sutcliffe Efficiency which only penalizes errors greater than a fixed percentage of observed flow); Lake area can be provided as observation type; New diagnostic variable TOTAL_SWE for tracking sum of multilayer SNOW and SNOW_LIQ.
* netCDF output of stream temperature output model results.
* Command line support for writing RVP template file with the -template command line argument.
* New command :AllowSoilOverfill to better support :Overflow process in conceptual/compartment soil models.
* New command :WriteNetReservoirInflows which adds reservoir net inflow reporting to Hydrographs.csv output.
* Support for nested :RedirectToFile commands, allowing this command to be used not only in the primary model rvt, rvp, and rvm files, but also files referenced from the primary model files.
* Can now support subbasin and HRU IDs longer than 9 digits.
* Major bug fixes: Issue with :LandUseChange command introduced in v3.8 fixed; failure of stream temperature model with zero-length streams; multiple minor bug fixes.