We’ve had a tremendous response to the new features in HEC-RAS 5.0 in the courses we’ve held across Australia and New Zealand over the last year or two. Course attendees are consistently impressed with the user friendly functionality and how quickly they are able to create and animate a model from scratch; that said, however, certain glitches and limitations are repeatedly mentioned as potential improvements for future releases.
The RAS Solution Forum has existing threads for HEC-RAS bugs and suggestions, so there’s no need to post a comprehensive list of proposed fixes here, but I thought I’d list some of the items that come up most frequently during our HEC-RAS courses. Sure, I’m just one user, but these are ranked by level of supplication or frustration based on input from hundreds of course attendees, so this particular list comes quite a bit of group consensus weight behind it!
The idea behind this list is to provide workarounds or updates on fixes for course attendees wherever possible rather than serving as a complaint board; so if you have figured out a way around one of the listed issues, please let me know how you’ve managed, and I’ll update this post.
Some of these items will reportedly be addressed in Version 5.0.4 or Version 5.1, according to the HEC Spring 2017 Newsletter, but if I’ve missed any items that are already being addressed in beta releases, please let me know.
HEC-RAS Glitches and Fixes
Bugs to fix:
- Disappearing terrain. By far the #1 complaint in our courses is when the background terrain disappears in the Geometric Data Editor. (WORKAROUND: Luckily it’s a fairly easy fix; here are the steps.)
- Freezing during time series plotting. RAS Mapper can freeze with an unhandled exception error when plotting time series, which sometimes occurs due to corrupted hdf files. (WORKAROUND: If saving, closing, and re-opening doesn’t do the trick, the only way I’ve found around it is to delete the hdf files associated with the geometry and results and re-run the plan.)
- View snaps to origin. The geometry file can jump to the origin if you save before adding features. (WORKAROUND: Fortunately this is another easy fix; scroll to the “paperspace” paragraph here for the steps.)
- Depth * Velocity display. For some models, DV and DV2 don’t display correctly at individual time steps in RAS Mapper – the max usually displays correctly, but values at individual time steps can far exceed the max, which shouldn’t be possible. (WORKAROUND: You can export depth and velocity as separate layers at any given time step and then create an output grid of the product of the two using third-party GIS applications; remember, though, that the max D*V is usually NOT the product of the max D and the max V, so don’t multiply those layers!)
Here’s an example of the DV bug using the Muncie project example that comes with HEC-RAS:
At first glance, you might think the top image is the max and the bottom image is from a particular time step, but it’s just the opposite. As shown above, the poor Munconians get hit by a D*V of 240 ft2/s at midnight on January 2 (even though the maximum that ever occurred during the entire event was less than 2 ft2/s). To get a feel for these numbers, have a look at the following chart for D*V values that comes from the 2016 Australian Rainfall and Runoff guide:
In metric units, D*V values are an order of magnitude less than the Imperial values, but the demo model is still showing a D*V of over 20 m2/s in the middle of Muncie at the final time step. Looking at the chart above, the highest hazard category – indicating forces that will rip buildings off their foundations – is represented by the isoline of 4 m2/s. Imagine what would be left of Muncie if five times that destructive power came ripping through!
I believe this issue only occurs inside 2D flow areas; as shown in the profiles below, the 1D reaches don’t seem to exhibit the same difference. The top image shows the max D*V profile, whereas the bottom image shows the D*V profile at the final time step:
Obviously there’s something wrong here, but I haven’t figured out yet why some models have this glitch and others don’t; it seems to happen in about half the models I’ve checked. You’ll see the same thing happen with the D*V2 values as well. Bottom line: don’t use D*V or D*V2 values from individual time steps in RAS Mapper unless you’ve confirmed both the D and the V values at that time step and spot checked some of the products manually.
Back to the list of selected bugs:
- Save As. If you use “save as” to make a backup copy or new version of your project, RAS Mapper generally won’t retain the projection or preserve terrain and land use associations. (WORKAROUND: If you want to back up files or save a copy in which everything appears the same, you’ll need to copy and paste the entire folder, then delete what you don’t need.)
- Remnant Geometry. Sometimes after you open a different project without closing HEC-RAS first, your previous project will still be there when you open the geometry – This can be embarrassing if you open a project for a client, and their competitor’s project suddenly pops up on the screen! (WORKAROUND: Always close HEC-RAS completely before opening another project if you want to avoid this possibility!)
- Cache Errors. Some errors, including certain versions of the 157 code error, simply can’t be resolved with changes to your model geometry, flow, or plan files. (WORKAROUND: 1. Save the project, 2. Close and re-open HEC-RAS, 3. Re-run the plan.) This seems to solve 90% of the errors, which I assume is a cache issue; if HEC-RAS could automatically clear the cache when plans are run, maybe some of these errors would disappear. It may seem obvious to pick the lowest-hanging fruit on the troubleshooting tree by taking this approach, but if you try to solve things any other way and stop short of exiting the program entirely, you can spend hours troubleshooting errors that you’ll never actually be able to solve! …I’ve done that myself… and when I finally tried restarting HEC-RAS and my model ran just fine with no other changes, I felt a bit like this guy:
Following are some capabilities I am hoping we will see in future releases to get past some of the current computational limitations:
- Depth-varying roughness. Models with significant shallow water areas and high depth variability can have massive uncertainties associated with roughness values. (WORKAROUND: As far as I’m aware, there’s no real workaround to this limitation, other than iteratively looking at depth results, adjusting roughness values to correspond to the most representative depths for your model, and re-running.)
- Infiltration. Direct rainfall models would greatly benefit from the ability to enter initial and continuing losses, particularly if spatially varying loss rates could be entered within each 2D Flow Area. (WORKAROUND: This is reportedly coming in the next version; in the meantime, you can partially get around this limitation by entering rainfall excess only, with infiltration removed manually, but keep in mind that areas with ponded/concentrated flow will react differently from dry areas in models that incorporate infiltration, yielding different total runoff volumes between the two approaches.)
- Spatially varying precipitation. It would be helpful to be able to assign spatially varying precipitation values. (WORKAROUND: Also supposedly coming in the next version; in the meantime, you could create a set of linked 2D Areas, and assign different rainfall patterns for each to simulate the directional movement of a rainfall event through a catchment.)
- Bridges in SA/2D Area Connections. Bridges can only be included in 2D models if piers and abutments are included in the terrain; bridge decks, however, cannot be included for overtopping flow. (WORKAROUND: You can fudge in a bridge as a culvert as described in this blog post, but it takes some creative culvert combinations to try to mimic sloping embankments, variable-shaped piers, etc.)
- Long culverts. Standard culverts in 2D models can only connect adjacent cells, but the cells that actually control headwater and tailwater elevations are often many cells apart. (WORKAROUND: Some additional capabilities are in the works; in the meantime, the wormhole method can get around this for now, but it only works with culverts, not bridges.)
- Internal boundary conditions. At present, inflow can only enter a 2D Flow Area along the external boundary, but sometimes hydrographs need to be reset along the modelled reach to match hydrological nodes, internal tributaries, or flow sources. (WORKAROUND: Pipe inflows are apparently being added to the next version; in the meantime, the wormhole method is a bit tedious for this application but can be used to add or remove flow anywhere in your model.)
And here are some suggested editing features to add:
- Ctrl Z to Undo. “What? There’s no undo?” is probably the #2 complaint after the disappearing terrain. (WORKAROUND: Not a great solution, but if you’re working on something time-consuming in your geometry, save as and save often.)
- One of the main requests for the undo command is while creating a geometric feature. Note that Version 5.1 will reportedly add the capability to undo the creation of individual vertices while features are being delineated, but it would be nice if it could apply to any mistake you might make, especially when you delete a feature that you want to get back! (WORKAROUND: I create everything geospatial in CAD or GIS so that it’s recoverable, “undo-able”, fully editable, and importable into HEC-RAS)
- If you accidentally move the entire 2D Area, which can occur when the handle happens to appear right next to another vertex that you actually meant to move, you will really wish for an undo option! (WORKAROUND: Similar to the above, I like to keep 2D boundaries and other critical features in CAD/GIS applications so that they’re editable outside of HEC-RAS; then if you make a mistake and accidentally move your area, you just copy and paste the coordinates back in. Alternatively, you may want to just keep an Excel workbook and paste the coordinates there for later use or recovery). In my opinion, moving the 2D Flow Area should get its own “Are you sure you want to do this” prompt before it is applied. You may not even realise the 2D Flow Area has moved until you’ve made a number of other edits to your geometry. The cross-hair symbol is appropriate here, because you can shoot your model in the head by moving the 2D area: Realigned cells won’t line up with breaklines, boundary condition locations will be off, etc. So avoid this one at all costs and don’t touch the cross-hairs unless you really, really mean to! Here’s a screen shot showing the dreaded handle for the 2D Flow Area in dangerously close proximity to a breakline vertex:
- Zoom commands (this one comes in a close third for the bronze!)
- In both RAS Mapper and the Geometric Data Editor, allow the escape key to toggle off the current edit or zoom commands and go back to a selection arrow (rather than manually having to de-select the command from the dropdown menu or tool button, similar to AutoCAD and other CAD/GIS applications)
- Allow the middle mouse button to pan and zoom on the fly while delineating features (like most CAD and GIS programs)
- Make pan, measure, and other view commands consistent between RAS Mapper and the Geometric Data Editor (especially the CTRL and Shift key combos)
- Automated geometry adjustments (#1 potential time saver!)
- Automatically split computational cells with more than 8 sides into cells with fewer than 8 sides (perhaps with a prompt asking if you want the program to do it automatically)
- Automatically lift embankment elevations to at or above the corresponding cell elevations (typically the required change is only a few millimetres and currently requires manual adjustment – again, with a prompt asking if you want the program to make the adjustement automatically)
- Automatically lower the terrain elevation to at or below the assigned culvert invert or embankment elevation (again, this would require a prompt with a choice of how to make the adjustment since you may prefer to change the embankment elevation as described above)
- Automatically update all results layer names, legend names, folder names, etc. when short IDs are renamed in a plan (currently you have to re-run your plan to get the layer names to update)
- Alternatively, allow users to right-click on the results file name to rename the plan in RAS Mapper like you can do with shape files, images, etc.
- Generate a shape file or display error locations automatically (instead of having to grab cell ID numbers from the error log and search for them manually)
- Allow terrain modifications using shapefiles or strings with elevations (this would make it much easier to extrude buildings or floodwalls or dig detention basins into terrain surfaces – any TUFLOW user will constantly be looking for zsh/zpoly lines that can do the trick!)
- Allow 2D Flow Areas to be imported from a shape file instead of just coordinates (similar to the way breaklines and other polyline features can be imported)
- In hydrographs, hyetographs, and GIS tables, allow the bottom right corner of a cell to be dragged down to paste values to cells below (like is allowed in profile tables similar to Excel capabilities)
- Allow 2D Mannings n Regions to apply customised roughness values without an underlying shapefile
- File Extensions. Call the HEC-RAS project file extension something other than .prj to avoid confusion with ESRI projection files. I’ve been told it’s way too late to fix this, but if HMS project files can be .hms, why can’t HEC-RAS projects be .ras or .hrp or something similar? I always keep shapefiles in their own subfolder, but when I try to search a parent directory for HEC-RAS projects, the search returns a prj file for every single shapefile in my folders – sometimes hundreds – in addition to my HEC-RAS projects. If it truly is too late to change this, maybe HEC-RAS can include a customised search tool under the “Open” command that recognises the HEC-RAS project file type and returns only those results in a search.
- The projection being used (or even just whether or not a projection has been assigned) should be shown big and bold along the top bar in RAS Mapper
- The equation set being applied (Full Momentum vs. Diffusion Wave) should be shown big and bold on the unsteady plan window in my opinion. Since you can have multiple 2D areas with different equation sets, there would need to be an option of showing that both are being used in a particular run, but given the potential implications of using an inappropriate equation set, it would be nice to see what’s being used without digging through the options. Some users mistakenly think that setting the default equation set will change the default in new projects (it only changes the default for new 2D Flow Areas within the same project).
- Add the units of measure to the errors in the runtime messages
- Dropdown lists
- When adding new terrain, only three file types show up (tif, flt, and adf), yet HEC-RAS will recognise many more – dozens, in fact, if you look at the list in the back of the 2D manual. You won’t see them, however, unless you lower the drop-down list to show all types. Why even limit things with the first list of three?
- The same concept applies to images under map layers; you won’t see them unless you drag down the drop-down list of file types. Why limit it? Why not just show everything you can add right there at once?
- Equation Set. Some users have assumed that the default equation set will apply to new projects rather than just new 2D Flow Areas within the current project. It would be nice to be able to set the default for HEC-RAS as a whole, so that you could set all new 2D Flow Areas to Full Momentum if desired.
- 1D/2D Iterations. The program defaults to 0 iterations between 1D and 2D. This looks like an oversight, since most other iterations values default to 20, but maybe it’s intentional so you’ll check your interfaces closely.
- Computational Time Step. When you first install the program, the default computational time step is 1 hour. Again, maybe that’s intentional so that you’ll remember to always check your Courant Number, but I can’t imagine any hydraulic model (other than perhaps a quasi-unsteady sediment transport model) running at a 3600-second time step. If you targeted a Courant Number of 1, typical velocities of 2 m/s would give you a 7-km x 7-km grid size. That’s a 50 km2 grid, which certainly wouldn’t give any meaningful results in any model I’ve ever seen. I would think the default should be on the order of a few seconds at most to be more reasonable for typical mesh sizes.
- RAS Mapper views:
- Speaking of defaults, the RAS Mapper legend defaults to absurdly high or low values:
- 15-metre depth, which is way too high for most river systems (I always reset this to a much lower max value, especially since particle tracing won’t show up with any contrast unless there’s some dark blue beneath it)
- 15 m/s velocity, which is way too high for most river systems (I usually reset this to around 2-4 m/s to show anything meaningful)
- 5 Pa shear stress, which is way too low for most river systems (I usually reset this to around 200 Pa to show any meaningful results)
- Allow transparency to be defined by a percentage rather than just the graphical slide bar to allow consistent display between layers
- Keep the profile axes fixed during animations instead of jumping around, or at least allow the axis scales to be customised similar to 1D graphing capabilities (WORKAROUND: WaterRIDE’s beta version is just about there with this capability – we’ll update this post when it’s available)
- Allow animation of multiple profiles (currently only one profile will animate, while the rest stay stuck on the original time step)
- Allow contours to be exported as vector shape files. (Perhaps this is covered under “contour bands” which can be exported from a terrain file and then added as a map layer? I’ve tried to do that but got no viewable results and can’t find any documentation on the command. Looking for help on this one if you’ve used it.)
- Allow profile line vertices to be edited in RAS Mapper using similar editing commands to the geometric data editor (rather than with the selection arrow)
- Allow individual profiles to be selected and exported as shape files instead of all at once (WORKAROUND: I create them one at a time, make a shapefile out of the individual line, then delete it. When I need it, I import it back in).
- Allow the measure tool (CTRL-click) to be used in RAS Mapper to get the slope off a profile line like is allowed in profiles cut from terrain in the Geometric Data Editor
- Add a moving vertical bar on time series plots that shows where you are in your plan view animation
- Add depth difference map as display/export option (WORKAROUND: currently you would have to export two different depth grids and subtract them in a separate GIS program to generate afflux)
- Maybe a shot in the dark, but until QGIS can correctly read hdf files with the Crayfish plugin, I would love to have a way to record animations and control the frame rate for the output file. If you use screen capture software you can’t speed it up past zero delay unless you manually move the slider…in which case the animation comes out very choppy. (WORKAROUND: Sounds like WaterRIDE is just about there with the ability to do it – I’ll post an update once that’s confirmed.)
- While we’re on shots in the dark, I would love to have the ability to view and animate results with terrain, etc. obliquely (like in the 3D wireframe view for 1D HEC-RAS models or ArcScene for 2D results) rather than just orthogonally
- Speaking of defaults, the RAS Mapper legend defaults to absurdly high or low values:
- Consistency between RAS Mapper and Geometric Data Editor
- Allow structures, BC lines, breaklines, and other geometric features to be viewable in RAS Mapper. (WORKAROUND: bring all features in as shape files that can be turned on in both RAS Mapper and Geometric Data Editor)
- Allow flood extents to be automatically viewable in the Geometric Data Editor along with the shape files. (WORKAROUND: this can be done by adding the flood extent map layer and converting the extents to a vector shape file in RAS Mapper and/or adding the raster results as a terrain file, but it would be nice to have it automatically available while you’re editing/refining geometric features such as breaklines and structures).
- Combining RAS Mapper and the Geometric Editor into the same interface would avoid all of these issues with consistency, but that’s of course a major overhaul!
- Version 5.1 will reportedly include the GeoRAS editing capabilities within RAS Mapper, so I’ll skip any mention of that here, but taking it further and adding the capabilities of ArcHydro or similar hydrologic delineation applications would be awesome! If you could generate shapefiles of the contributing catchment and flow paths based on a selected point on your terrain, the shapefile of the watershed could then be imported as a 2D Flow Area for direct rainfall, and flow paths could be imported as breaklines.
While we’re speaking of major overhauls, perhaps someday we can look forward to a future software package that combines RAS and HMS into a single interface! But I’ll stop there before we get too far ahead of ourselves! Adding some of the suggested capabilities would obviously take a major amount of effort to build in, but I’m guessing if you turned a programmer loose with the code, quite a few of these suggestions could be incorporated in just a few minutes of code writing and compiling.
I have to acknowledge that some of these items may not be program issues, but rather my own ignorance in not knowing where to find the solutions. Contact me if you have any corrections, updates, or other suggested workarounds, because I’d like this to be a solutions page rather than a problems page. In the meantime, I’ll keep updating this list with feedback from our courses.