Wormhole Culverts

Written by ironcore | September 27, 2016

This is one of the coolest workaround ideas for HEC-RAS that I’ve seen in a long time.  One of my joys in teaching HEC-RAS to professionals and students around the world is seeing the clever ways that people use and apply HEC-RAS.  Whether in a training class, giving technical support, or just simply over discussions with other HEC-RAS users, I still learn new ways to use HEC-RAS almost daily.  However, “Wormhole Culverts” has to be right up near the top of ingenious workarounds.

One current limitation in HEC-RAS 5 is that when you put a culvert or gate in a 2D Area Connection, flow through the culvert or gate can only go from a cell adjacent to the 2D Area Connection line on the upstream side to a cell adjacent to the 2D Area Connection on the downstream side.  If your cell size is relatively small and your culvert is relatively long, then your culvert may in reality span many cells between its upstream side and downstream side.  But the current limitation doesn’t allow this.

wormhole_method_culvert_resultsBut we’re in luck!  Mr. Con Katsoulas, a senior water resources engineering from SMEC in Sydney Australia came up with a method to get around this limitation.  He first discussed this in The RAS Solution forum.  And my friend and colleague, Mr. Krey Price of Surface Water Solutions wrote a detailed explanation on how to use this technique. Please read his blog post on wormhole culverts for the full description.

Good luck!  Give it a try and let me know how it works for you.


  1. sajaad ali soomro

    on September 28, 2016

    this is really great ]

  2. Jon Viducich

    on September 28, 2016

    Wow, what a clever and useful idea! Thanks for sharing, Con (and Chris)! I'd love to about the accuracy of this method, beyond its brute functionality in moving water from Point A to B. Hopefully, a few people with calibrated 1D bridge/culvert models can try this out and share their findings.

  3. Ryan Sauer

    on September 28, 2016

    I was able to make the long culvert work (still testing to see how effective it is for my situation), but I was very curious about utilizing this method to add internal boundary conditions for inflows. I didn't quite understand how you were able to make that work. I have used the "PAC-MAN" method before and it seems like I always have flow that needs to cross that PAC-MAN border.

    When you say you introduced an "artificial upstream storage area" are you referring to simple DEM manipulation to contain the inflow in this artificial storage area just inside the 2D model boundary and then utilizing your snake method to route your hydrograph to the desired point of internal inflow?

    Any clarification would be welcome. It is a wonderful idea on how to deal with the limitations of the model and was a well written piece. Thanks for the insight.

  4. Krey Price

    on September 28, 2016

    Thanks for your query. I posted an additional example at http://www.surfacewater.biz/wormhole/ showing a case where flow has been moved from an artificial storage area (a fake reservoir) to another tributary. The artificial storage area is just anywhere within my 2D Area where I choose to store water for use elsewhere. As long as it doesn't interfere with the rest of my model, I can just put a dam around it (using the SA/2D Area Conn with a raised weir embankment), adjust the inflow to fill it up, and make a reservoir that I can draw on to route the flow anywhere else within the model using a wormhole culvert. A bit cumbersome (and hopefully won't be required as a workaround in future HEC-RAS releases) but for now it seems to do the trick. By the way, the example also shows the Pac-Man method…in case that designation isn't as self-explanatory as I might think as a retro fan. 🙂

  5. Chris H

    on September 29, 2016


    I have a hopefully simple question related to lateral structures in a simple steady-flow 1-D HEC-RAS model (although I'd also be curious if the same rule applies to a 2-D model).

    Is it possible to connect a lateral structure from one reach so that it discharges to the most upstream cross section of another reach? Or must the discharge point always be "between" two cross sections on the "receiving" reach?

    Right now it appears to me that the discharge point must always be between two cross sections.

    Thanks for any explanation you can provide.

  6. Chris Goodell

    on September 29, 2016

    Yes. You are correct. It has to go between two cross sections.

  7. Anonymous

    on October 3, 2016

    My question is little different from the topics. I have two pumps in my unsteady RAS model. The head difference between"pump from" and "pump to" stations is consistently not less than 8ft. However, my model is using flow rate for only 0ft head from pump efficiency curve. Can you tell what might cause this?

  8. Chris Goodell

    on October 3, 2016

    Not sure.

  9. Dan Jones

    on November 4, 2016

    Very cool! Thanks for the workaround!

  10. Jennifer Womack

    on May 2, 2017

    I've been using these wormhole culverts for a model and posted some observations in the forum. Would be interested in other's thoughts.

  11. Krey Price

    on May 24, 2017

    If you're interested in more details, the May 16 2017 post on the blog presents a comparison of the wormhole culvert hydraulics against 1D bridge/culvert models, and the May 23 2017 post presents a comparison of upstream and downstream hydrographs to check the hydrological effects of wormhole culverts.

  12. Luke

    on October 13, 2017

    Howdy folks! I'd encourage you to revisit Jennifer's thread and see if you can help contribute to working knowledge of wormhole culvert modeling. There have been a few great contributions here that you might be able to draw knowledge from.

    I've also posted one of my own challenges that you might be able to help me think through.


  13. Anonymous

    on November 23, 2017

    Hi! I have a project where I have to build a wall surrounding the property. I use a breakline to represent the wall in a 2D model. I need to use the culvert across the property to prevent the water from being trapped by the wall of the property on the upstream. My question is how can I apply this wormhole culvert in my model given that the property is surrounded by breakline which is a perimeter wall?

  14. Unknown

    on May 10, 2018

    Is there a way to show how much flow goes through the culvert only? I have a model and there is a substantial amount of overland flow in addition to the flow through the culvert. I want to capture just flow through the culvert.

  15. Erik Moreno

    on May 10, 2018

    Is there a way to pull the flow results for just the culvert? My project has a lot of flow so water spills through the culvert and also overland, across the weir. I want to capture just flow in the culvert. Is there a way to do this?

  16. Chris Goodell

    on May 15, 2018

    What about the detailed output table? It should show what only goes through the culvert(s).

  17. shishir tiwari

    on November 5, 2018

    Hi Chris & Krey, I know that pump is not available for 2D yet but can we mimic pump with a 2D connection by defining an outlet rating curve?

  18. Chris Goodell

    on December 13, 2018

    As long as you can make a rating curve that replicates the pump and how it operates, yes you can use that as a 2D area outflow boundary condition.

  19. Unknown

    on January 31, 2019

    Hi Chris, Hi Krey.
    Is it possible to show low flow profile inside a culvert when I have a full 2D model? In a Hydro-Flattened DEM (without the deck of the bridges) this is possible but in non-Hydro-Flattened DEM, in the profile result (RAS Mapper), I see only the water upstream and downstream of the bridge/culvert.
    Thank you in advance for the answer.

  20. Chris Goodell

    on January 31, 2019

    Not currently (5.0.6), but I hope they add that soon. For now, if you want to see a water surface profile through a culvert, you have to do that in 1D.


  21. Unknown

    on February 13, 2019

    Hi Chris, Hi Krey.
    Another little question concerning the culverts in 2D Simulation. When I create a ‘Standard 2D Culvert’ over an Hydro-Flattened DEM, there’s like a ‘glass wall’ inside the culvert. This ‘barrier’, which matches to SA/2D Area Connection, is visible in RAS Mapper when I visualize the velocity particles: there’s no continuity between upstream and downstream velocity particles. Is it normal? Thank you in advance.

  22. Krey Price

    on February 13, 2019

    As long as there is no overtopping/weir flow, the only flow transfer that occurs across the SA/2D Area Connection line will take place inside the culvert. Even if you are using a full 2D model, the culvert will be a 1D element within that model, with flow computed based on HDS5 methods. You won't be able to visualize that flow in RAS Mapper because there are technically no gridded elements within the culvert itself (even if you are using the culvert as a proxy for a large bridge structure). As I understand it, the particle tracing in RAS Mapper will show the inflow and outflow taking place at the connecting cells. In a standard culvert, that will be the two cells that touch the intersection of the 2D/SA Area Connection line and the barrel centerline. In a "coordivert" where the barrel centerline is defined by coordinates, the flow transfer will be shown in the grid cells that coincide with the inlet and outlet location. In either case, the 2D/SA Area Connection line would act as a glass wall and the particle tracing would not show any vectors passing through it. As soon as there is overtopping flow, you should see both flow across the connection line as well as inflow/outflow for the culvert (unless it becomes negligible relative to the weir flow).

Add Your Comment

Related Posts