Version 2.1
Introduction
Version 2.1 of the Hydrologic Engineering Center Flood Damage Reduced Analysis Software is released. This version supersedes previous versions.
Changes and Resolved Issues
| Issue | Description |
|---|---|
| Graphical Frequency Uncertainty Incorrect | For unique situations, the graphical frequency uncertainty algorithm was ineffective at modeling good sampled frequency curves.
|
| Geospatial |
|
| UI Bug Fixes |
|
| Histograms |
|
| Life Safety Risk |
|
Differences in Results
Several case studies were evaluated to compare differences in results produced by Versions 1.4.3, 2.0.1, and 2.0.2. In this section, we look at differences in the uncertainty about graphical frequency functions and then look at the resulting differences in mean expected annual damage.
Differences in Graphical Frequency Uncertainty
In the below case studies, there is a big improvement the capability of HEC-FDA Version 2 to match the uncertainty produced by HEC-FDA Version 1. HEC-FDA Version 2.0.2 sampled frequency curves overlap HEC-FDA Version 1.4.3 sampled frequency curves very accurately, while HEC-FDA Version 2.0.1 sampled frequency curves have notable departures. The mean functions from all three versions match very accurately. There is however a very small but systematic departure in sampled curves above and below the mean between Versions 2.0.2 and 1.4.3 beyond the nonexceedance probability of 0.99. There appears to be smoothing taking place in Version 1.4.3 which is not documented and thus not carried forward into Version 2.0.2.
Algiers
The Algiers case study involves a unique graphical frequency function with very sharp inflection points. The stage-frequency function has an equivalent record length of 40 years and the following input coordinates. Probability here is represented by nonexceedance probability for ease of visualization, the probabilities entered into the software are provided in terms of exceedance probability.
Nonexceedance Probability | Stage |
|---|---|
.5 | -2 |
.8 | -1.9 |
.9 | 1.93 |
.96 | 1.98 |
.98 | 2.02 |
.99 | 2.04 |
.995 | 2.18 |
.998 | 2.3 |
Mean Graphical Frequency Function
Below are the sampled stage-frequency functions for the Algiers case study at the mean. The Version 2.0.2 function is plotted in solid green, the Version 2.0.1 function is plotted in dashed red, and the Version 1.4.3 function is plotted in dotted green. Nonexceedance probability is on the x-axis and stage in feet is on the y-axis. Observe that the three functions align perfectly.

Two Standard Deviations Above the Mean
Below are the sampled stage-frequency functions for the Algiers case study at two standard deviations above the mean. The Version 2.0.2 function is plotted in solid green, the Version 2.0.1 function is plotted in dashed red, and the Version 1.4.3 function is plotted in dotted green. Nonexceedance probability is on the x-axis and stage in feet is on the y-axis. The Version 2.0.1 function demonstrates the impact of both issues with the graphical frequency uncertainty algorithm identified above: the order of steps and the need for bidirectional monotonicity forcing. The Version 2.0.2 function aligns with the Version 1.4.3 function nicely, except for nonexceedance probabilities beyond 0.99 where Version 1.4.3 appears to use a smoothing procedure.
- Between nonexceedance probabilities of 0.5 and 0.8, the Version 2.0.1 function is increasing at a much faster rate than the Version 2.0.2 and Version 1.4.3 functions due to the order of operations where interpolation of the sampled frequency function was taking place after uncertainty was calculated for the 0.5 and 0.8 nonexceedance stages. This order of operations matters because the uncertainty at the 0.65 nonexceedance stage should only depend on the equivalent record length and the slope of the frequency curve to the immediate left and right of the 0.65 stage. When the order of operations is such that interpolation takes place after calculation of uncertainty and quantile sampling, then the uncertainty at the 0.65 nonexceedance stage depends on the uncertainty at the 0.5 and 0.8 nonexceedance stages, which means that the uncertainty of the 0.65 nonexceedance stage is incorrectly impacted by the slope to the immediate left and right of the 0.5 and 0.8 nonexceedance stages. Version 2.0.2 corrects this order of operations, and as a result, the Version 2.0.2 sampled function obtains a the correct quantile by first interpolating the input curve, then computing uncertainty about the interpolated curve, and then sampling within that uncertainty, so that the uncertainty of the 0.65 nonexceedance stage depends only on the equivalent record length and the slope to the immediate left and right of the 0.65 nonexceedance stage.
- Between nonexceedance probabilities of 0.8 and 0.9, the Version 2.0.1 function grows much higher than the entire functions computed in Versions 2.0.2 and 1.4.3. This behavior is the result of forcing monotonicity from the bottom up. There is a lot of uncertainty around the stage with a nonexceedance probability of 0.8 due to the relatively rapid increase in stage over a small range of probability. In Versions 1.4.3 and 2.0.2, this large uncertainty is truncated by uncertainty of the same quantiles for less frequent coordinates by forcing monotonicity from the top down. Forcing monotonicity from the top down is especially appealing in this case because the curve is very flat for a large range of the infrequent probabilities reflecting little uncertainty in how much higher the river can get, and that little uncertainty needs to be respected for the entire sampled function.
Two Standard Deviations Below the Mean
Below are the sampled stage-frequency functions for the Algiers case study at two standard deviations below the mean. The Version 2.0.2 function is plotted in solid green, the Version 2.0.1 function is plotted in dashed red, and the Version 1.4.3 function is plotted in dotted green. Nonexceedance probability is on the x-axis and stage in feet is on the y-axis. The Version 2.0.2 function aligns with the Version 1.4.3 function nicely, except for nonexceedance probabilities beyond 0.99 where Version 1.4.3 appears to use a smoothing procedure. This sampled curve in Version 2.0.1 at two standard deviations below the mean only demonstrates the problem of the ineffective order of steps of the frequency algorithm; frequency curves sampled below the input function are forced monotonic from the bottom up in all three versions. Hence, the departure of the sampled frequency function in Version 2.0.1 from Versions 1.4.3 and 2.0.2 between nonexceedance probabilities of .8 and .96 reflects the ineffective interpolation of uncertainty produced by calculating the magnitude of uncertainty before interpolating and extrapolating the input frequency curve.

Tafuna
The Tafuna case study involves a graphical flow-frequency function with an equivalent record length of 20 years with the following input data. Probability here is represented by nonexceedance probability for ease of visualization, the probabilities entered into the software are provided in terms of exceedance probability.
Nonexceedance Probability | Flow |
|---|---|
.01 | 0 |
.5 | 1340.37 |
.8 | 1899.36 |
.9 | 2279.29 |
.96 | 2731.60 |
.98 | 3000.05 |
.99 | 3416.28 |
.995 | 3767.17 |
.998 | 4207.08 |
Mean Graphical Frequency Function
Below are the sampled stage-frequency functions for the Tafuna case study at the mean. The Version 2.0.2 function is plotted in solid green, the Version 2.0.1 function is plotted in dashed red, and the Version 1.4.3 function is plotted in dotted green. Nonexceedance probability is on the x-axis and stage in feet is on the y-axis. Observe that the three functions align perfectly.

Two Standard Deviations Above the Mean
Below are the sampled stage-frequency functions for the Tafuna case study at two standard deviations above the mean. The Version 2.0.2 function is plotted in solid green, the Version 2.0.1 function is plotted in dashed red, and the Version 1.4.3 function is plotted in dotted green. Nonexceedance probability is on the x-axis and stage in feet is on the y-axis. The Version 2.0.2 function aligns with the Version 1.4.3 function nicely, except for nonexceedance probabilities beyond 0.99 where Version 1.4.3 appears to use a smoothing procedure. The difference between the Version 2.0.1 function and the Versions 2.0.2 and 1.4.3 functions is largely due to the direction of monotonicity forcing after sharp increase in flow for a small range of probability.

Two Standard Deviations Below the Mean
Below are the sampled stage-frequency functions for the Tafuna case study at two standard deviations below the mean. The Version 2.0.2 function is plotted in solid green, the Version 2.0.1 function is plotted in dashed red, and the Version 1.4.3 function is plotted in dotted green. Nonexceedance probability is on the x-axis and stage in feet is on the y-axis. The Version 2.0.2 function aligns with the Version 1.4.3 function nicely, except for nonexceedance probabilities beyond 0.99 where Version 1.4.3 appears to use a smoothing procedure. The difference between the Version 2.0.1 function and the Versions 2.0.2 and 1.4.3 functions is due to the order of operations. Sampling uncertainty before interpolating and extrapolating ignored reduction in uncertainty due to flatness of the curve.

Glendive
The Glendive case study involves a graphical stage-frequency function with an equivalent record length of 81 years with the following input data. Probability here is represented by nonexceedance probability for ease of visualization, the probabilities entered into the software are provided in terms of exceedance probability.
Nonexceedance Probability | Stage |
|---|---|
.5 | 1.242 |
.8 | 6.646 |
.9 | 9.821 |
.96 | 12.54 |
.98 | 14.803 |
.99 | 16.29 |
.995 | 17.492 |
.998 | 18.196 |
Mean Graphical Frequency Function
Below are the sampled stage-frequency functions for the Glendive case study at the mean. The Version 2.0.2 function is plotted in solid green, the Version 2.0.1 function is plotted in dashed red, and the Version 1.4.3 function is plotted in dotted green. Nonexceedance probability is on the x-axis and stage in feet is on the y-axis. Observe that the three functions align very closely.

Two Standard Deviations Above the Mean
Below are the sampled stage-frequency functions for the Glendive case study at two standard deviations above the mean. The Version 2.0.2 function is plotted in solid green, the Version 2.0.1 function is plotted in dashed red, and the Version 1.4.3 function is plotted in dotted green. Nonexceedance probability is on the x-axis and stage in feet is on the y-axis. Observe that the three functions align very closely except for some inflection points where the order of operations resulted in loss of important nonlinearity in Version 2.0.1. The Version 2.0.2 function aligns with the Version 1.4.3 function nicely, except for nonexceedance probabilities beyond 0.99 where Version 1.4.3 appears to use a smoothing procedure.

Two Standard Deviations Below the Mean
Below are the sampled stage-frequency functions for the Glendive case study at two standard deviations below the mean. The Version 2.0.2 function is plotted in solid green, the Version 2.0.1 function is plotted in dashed red, and the Version 1.4.3 function is plotted in dotted green. Nonexceedance probability is on the x-axis and stage in feet is on the y-axis. The Version 2.0.2 function aligns with the Version 1.4.3 function nicely, except for nonexceedance probabilities beyond 0.99 where Version 1.4.3 appears to use a smoothing procedure. The difference between the Version 2.0.1 function and the Versions 2.0.2 and 1.4.3 functions at the lower nonexceedance probabilities is due to the order of operations.

London-Orleans
The London-Orleans case study involves a graphical stage-frequency function with an equivalent record length of 50 years with the following input data. Probability here is represented by nonexceedance probability for ease of visualization, the probabilities entered into the software are provided in terms of exceedance probability.
Nonexceedance Probability | Flow |
|---|---|
.5 | 3.902 |
.8 | 5.677 |
.9 | 6.322 |
.96 | 6.952 |
.98 | 7.56 |
.99 | 8.127 |
.995 | 8.598 |
.998 | 9.14 |
Mean Graphical Frequency Function
Below are the sampled stage-frequency functions for the London Orleans case study at the mean. The Version 2.0.2 function is plotted in solid green, the Version 2.0.1 function is plotted in dashed red, and the Version 1.4.3 function is plotted in dotted green. Nonexceedance probability is on the x-axis and stage in feet is on the y-axis. Observe that the three functions align perfectly.

Two Standard Deviations Above the Mean
Below are the sampled stage-frequency functions for the London Orleans case study at two standard deviations above the mean. The Version 2.0.2 function is plotted in solid green, the Version 2.0.1 function is plotted in dashed red, and the Version 1.4.3 function is plotted in dotted green. Nonexceedance probability is on the x-axis and stage in feet is on the y-axis. Observe that the three functions align very closely except for some inflection points at low nonexceedance probabilities where the order of operations resulted in loss of important nonlinearity in Version 2.0.1.

Two Standard Deviations Below the Mean
Below are the sampled stage-frequency functions for the London Orleans case study at two standard deviations below the mean. The Version 2.0.2 function is plotted in solid green, the Version 2.0.1 function is plotted in dashed red, and the Version 1.4.3 function is plotted in dotted green. Nonexceedance probability is on the x-axis and stage in feet is on the y-axis. The Version 2.0.2 function aligns with the Version 1.4.3 function nicely, except for nonexceedance probabilities beyond 0.99 where Version 1.4.3 appears to use a smoothing procedure. The difference between the Version 2.0.1 function and the Versions 2.0.2 and 1.4.3 functions at the lower nonexceedance probabilities is due to the order of operations.

Histogram Sample Mean
In response to erroneous results from a model run in FDA 2.0.1, The FDA 2.1 update makes a significant change to the way the software reports result statistics. The change itself is minor, but the impact on results can be meaningful for some configurations. The issue was apparent in a dataset where the mean Equivalent Annual Damage (EqAD) fell outside the range of the Base Year to Future Year mean Expected Annual Damage (EAD) which is a mathematic impossibility.
In HEC-FDA, the number of results we'd ideally wish to store for a given scenario quickly exceeds the reasonable expectations for computer memory or disk storage. To manage the many numbers, ex. estimates of EAD, we store our results in histograms. Histograms let us record the shape and scale of the distribution of results, without storing every value at full precision, and if the histogram bins are sized well, this works great for being able to get any desired statistic or quantile from the result.
Currently, HEC-FDA is using an implementation of Stokes law to size our histograms and Stokes works best in situations where the sample distribution looks roughly normal. The following is a histogram of random values sampled with a heavy skew toward 20,000. Notice the mean calculated from the sample is nearly the same as the calculated from the histogram. We didn't lose much precision in our simplification of the data. This histogram is used routinely to query quantiles for EAD, EqAD, etc, while the mean we report is sample mean, as it is our most reliable metric.

However, when calculating EqAD in 2.0.2 and prior, we were making our calculations based on the histogram mean. For some datasets that was fine, like the histogram above, where the Sample mean and histogram mean are roughly equal, but for samples that are both skewed and polar, like what you might get from a levee without a system response curve, where most of the results are zero or near zero, but a few which represent overtopping are quite high, the histogram no longer captures the mean nearly as well. This is demonstrated in the histogram below. The vast majority of the sample has zero damage, but when damage does occur, it's quite large. The histogram now misses the mean dramatically.


The change in 2.1 to address this propagates the sample mean through the EqAD calculation, and saves sample mean to disk with your results. This way even if the histogram fails to capture well, mean is still a reliable metric.
This change in the code will change, to varying degrees, the EqAD result for most studies. The change will be more pronounced in studies with with large, impermeable (not using a system response curve) lateral structures.
Supporting Documentation and Data
The Github home page can be found here.
Additional technical release notes on Github can be found here.
The draft certification report can be found here.
The Validation and Verification (V&V) documentation can be found here.
HEC-FDA Version 2.1 (beta) can be found here. Download the portable package to a location where you have write access, such as C:\Programs and extract the contents of the zip file. Open the HEC-FDA 2.0 folder that contains the extracted contents to find the .exe application HEC.FDA.View with the green house icon. Double-click on HEC.FDA.View to launch the software.
Support Policy
The HEC support policy can be viewed on the HEC website. We encourage users of HEC-FDA to use HEC-FDA Discourse for bug reports and technical questions.
