diff --git a/ReleaseNotes2_3.md b/ReleaseNotes2_3.md index 2cf6f87..f35ad3c 100644 --- a/ReleaseNotes2_3.md +++ b/ReleaseNotes2_3.md @@ -6,17 +6,17 @@ This document describes the changes and updates that have been made in version 2 - The check for at least two nodes, one tank/reservoir and no unconnected junction nodes was moved from `EN_open` to `EN_openH` and `EN_openQ` so that partial network data files could be opened by the toolkit. - A `EN_setcurvetype` function was added to allow API clients to set a curve's type (e.g., `EN_PUMP_CURVE,` `EN_VOLUME_CURVE,` etc.). - A `EN_setvertex` function was added to allow API clients to change the coordinates of a single link vertex. - - The index of a General Purpose Valve's (GPV's) head loss curve was added to the list of editable Link Properties using the symbolic constant name `EN_GPV_CURVE`. - - The `EN_getlinkvalue` and `EN_setlinkvalue` functions were updated to get and set the value of `EN_GPV_CURVE`. + - The indices of a General Purpose Valve (GPV) and a Positional Control Valve (PCV) were added to the list of editable Link Properties using the symbolic constant names `EN_GPV_CURVE` and `EN_PCV_CURVE`, respectively. + - The `EN_getlinkvalue` and `EN_setlinkvalue` functions were updated to get and set the values of `EN_GPV_CURVE` and `EN_PCV_CURVE`. - Negative pressure values for `EN_SETTING` are now permitted in the `EN_setlinkvalue` function. - The `EN_STARTTIME` parameter was added into the `EN_settimeparam` function. - - A `EN_DEMANDPATTERN` parameter was added as the index of the default time pattern used by demands with no specific pattern assigned. It can be set or retrieved with the `EN_setoption` and `EN_getoption` functions, respectively, and is saved to file when the `EN_saveinpfile` function is called. + - A `EN_DEMANDPATTERN` parameter was added as the index of the default time pattern used by demands with no specific pattern assigned. It can be set or retrieved with the `EN_setoption` and `EN_getoption` functions, respectively, and is saved to the file when the `EN_saveinpfile` function is called. - The `EN_getaveragepatternvalue` function will now accept a pattern index of zero which represents the constant pattern assigned to junction demands by default. - The adjustment of a tank's minimum volume (`Vmin`) when its parameters are changed using `EN_setnodevalue` or `EN_settankdata` has been corrected. - - A pump whose status is set to CLOSED in the input file now also has its speed setting set to zero which allows a simple pressure control activate the pump correctly. - - A failure to raise an error condition for a non-positve pipe roughness in the input file has been fixed. + - A pump whose status is set to CLOSED in the input file now also has its speed setting set to zero which allows a simple pressure control to activate the pump correctly. + - A failure to raise an error condition for a non-positive pipe roughness in the input file has been fixed. - The calculation of head loss gradient for low flow conditions was corrected. - - Improved updating and convergence tests were added to pressure dependent demand analysis. + - Improved updating and convergence tests were added to pressure-dependent demand analysis. - Improved checks to prevent outflow from empty tanks or inflow to full (non-overflow) tanks, including the case where a link is connected to a pair of tanks, were added. - The CI regression test protocol was modified by: - changing the absolute tolerance used to compare the closeness of test results to benchmark values from 0 to 0.0001 @@ -24,9 +24,10 @@ This document describes the changes and updates that have been made in version 2 - dropping the check for identical status report content since it prevents accepting code changes that produce more accurate solutions in fewer iterations. - A possible loss of network connectivity when evaluating a Pressure Sustaining Valve was prevented. - Having the implied loss coefficient for an active Flow Control Valve be less than its fully opened value was prevented. - - A new type of valve, a Positional Control Valve (PCV), was added that uses a valve characteristic curve to relate its loss coefficient to its fraction open setting. - - A new set of functions have been added to get information about upcoming time step events. Users will now see what type of event is going to cause the end of a time step to occur. See `ENtimetonextevent` and `EN_timetonextevent`. - - A new set of functions have been added to allow users to set a reporting callback function. The user-supplied function will recieve all output normally directed to the report file. + - A new type of valve, a Positional Control Valve (PCV), was added. It uses a valve characteristic curve to relate its loss coefficient to a percentage open setting (parameter - `EN_PCV`). + - `EN_VALVE_CURVE` can now be used with the `EN_getcurvetype` and `EN_setcurvetype` to get or set the valve position curve. + - A new set of functions has been added to get information about upcoming time step events. Users will now see what type of event is going to cause the end of a time step to occur. See `EN_timetonextevent`. + - A new set of functions has been added to allow users to set a reporting callback function. The user-supplied function will receive all output normally directed to the report file. - A `EN_EMITBACKFLOW` option was added that either allows emitters to have reverse flow through them (the default) or not. - An incorrect tank elevation value set using `EN_settankdata` with SI units has been fixed. - The `EN_INITSETTING` option in function `EN_getlinkvalue` will now return `EN_MISSING` for a valve whose initial status is fixed to `EN_OPEN` or `EN_CLOSED`. @@ -37,15 +38,14 @@ This document describes the changes and updates that have been made in version 2 - A new error code `263 - node is not a tank` is returned when `EN_settankdata` or `EN_setnodevalue` attempts to set a tank-only parameter for a non-tank node. - The function `EN_saveinpfile` was corrected for simple controls on GPV's by saving their status instead of the index of their head loss curve. - Support was added for Conan dependency manager. - - The internal Qualflag variable is now adjusted when an EPANET input file has a QUALITY option not equal to NONE and simulation duration of zero. + - The internal Qualflag variable is now adjusted when an EPANET input file has a QUALITY option not equal to NONE and a simulation duration of zero. - Support was added for cubic meters per second (`EN_CMS`) flow units. - - An EPANET input file with a simple timer control that has more than 9 input tokens no longer results in an incorrect hour setting. + - An EPANET input file with simple timer control that has more than 9 input tokens no longer results in an incorrect hour setting. - Errors in node and link vertex coordinates are now ignored when reading an EPANET input file. - Only non-zero demands are now included in the `[DEMANDS]` section of the input file produced by `EN_saveinpfile`. - `EN_SET_CLOSED` and `EN_SET_OPEN` constants were added that can be used with `EN_setcontrol` to fix the status of pipes and valves to completely closed or completely open. - `EN_EMITTERFLOW` can now be used with `EN_getnodevalue` to retrieve a node's emitter flow rate. - `EN_STATUS_REPORT` can now be used with `EN_getoption` and `EN_setoption` to get or set the type of status report that EPANET will generate (`EN_NO_REPORT`, `EN_NORMAL_REPORT` or `EN_FULL_REPORT`). - A possible parser error that could result in a Trace Node ID in an input file not being recognized was fixed. - - Additional API functions for enabling/disabling controls and rules were added. - - Updated the internal function `getclosedlink` in report.c to use a loop instead of recursion to prevent a stack overflow during the analysis of very large disconnections. - \ No newline at end of file + - Additional API functions for enabling/disabling controls and rules were added (`EN_getcontrolenabled`, `EN_setcontrolenabled`, `EN_getruleenabled`, `EN_setruleenabled`). + - Updated the internal function `getclosedlink` in report.c to use a loop instead of recursion to prevent a stack overflow during the analysis of very large disconnections. \ No newline at end of file