Critical Depth Primer

Written by Chris Goodell | June 24, 2014

Critical depth is an important hydraulic parameter when evaluating hydraulic modeling results.  As we know from our college hydraulics 101 class, water flowing at depths less than critical depth is supercritical and water flowing at depths greater than critical depth is subcritical.  Supercritical flow is characterized by relatively shallow depths and high velocities.  Subcritical flow is characterized by relatively deep depths and slower velocities.  The forces dominating the movement of supercritical flow are inertial, while the forces dominating the movement of subcritical flow are gravitational.  The flow regime (subcritical or supercritical) a particular cross section, or series of cross sections is in, can be determined by the Froude Number, image, where F = Froude Number, V = Velocity, g = gravitational constant, and d = depth. A Froude Number greater than 1 indicates supercritical flow, a Froude Number less than 1 indicates subcritical.  A Froude Number = 1 is considered “critical” and possesses the minimum amount of specific energy (potential energy plus kinematic energy, per unit mass).  This is considered an unstable condition in nature and is very rare.  If you ever get a Froude Number = 1 in your results, most likely, there is a problem with the computations (i.e. in steady flow, RAS could not come up with a valid solution, so it defaults to critical depth).  For those of you who have run steady flow HEC-RAS models, you know that there are three flow regime options for computing a steady flow run:  subcritical, supercritical, and mixed flow (both sub and supercritical).  If you select RAS to run in subcritical, and somewhere in your system RAS is not able to compute a valid subcritical answer, then it defaults to critical depth and moves on.  If you select RAS to run in supercritical, and somewhere in your system RAS is not able to compute a valid supercritical answer, then it also defaults to critical depth and moves on.  If you select mixed flow, RAS will compute both a subcritical and supercritical profile and anywhere there is a valid solution for both regimes, RAS will select the one that has the higher specific force value.  If, in mixed flow, there are any cross sections that “default to critical depth”, that means there was a problem with RAS obtaining a solution.  Usually, this means your cross section spacing is too far apart, you are in an area of rapidly varied flow (with not enough cross sections), or just bad input data.  In unsteady flow, contrary to intuition, checking the “Mixed Flow” box in the unsteady flow analysis window does NOT tell RAS to evaluate both sub and supercritical solutions.  This is done anyway in unsteady flow-whether “Mixed Flow Regime” is checked or not.  Let me repeat:  HEC-RAS can compute solutions in both subcritical and supercritical in unsteady flow regardless of whether “Mixed Flow Regime” is checked or not.  Checking the “Mixed Flow Regime” box in the unsteady flow analysis window simply uses a stabilizing scheme for situations near critical depth and with large changes in velocity with respect to time (the local acceleration term in the St. Venant Equation).  This is described further in   It’s very helpful to understand the solution you’ve obtained after running RAS by viewing the water surface profile plot with the “critical depth” variable turned on.  This allows you to gage how close you are to critical depth, and more importantly, allows you to quickly evaluate if your solution has defaulted to critical depth anywhere, indicating a problem with the solution.  The critical depth variable can be turned on in any of the graphical plots by selecting Options…Variables.  Then check the box next to Critical Depth Elevation.  image   When you do this, RAS will plot critical depth, but ONLY at certain locations.  Notice the plot from the Single Bridge HEC-RAS example data set.  Critical depth (in red) is only plotted downstream of the bridge, and at a couple of cross sections upstream of the bridge.  That is because RAS will only compute critical depth if your answer is supercritical, close to critical depth, or RAS is not able to come up with a valid solution (defaulting to critical depth) and at the boundaries.  image If you would like HEC-RAS to compute critical depth everywhere for you, go to the steady flow analysis window, and select Options…Critical Depth Output Option.  image
Then check the box next to “Critical Always Calculated.



  1. Ghanim Khalaf

    on June 24, 2014

    Thank you very much.

  2. Maria K

    on June 26, 2014

    Thank you very much for this post!

  3. [email protected]

    on March 21, 2016

    can u please tell where do I find the details of how critical depth is calculated by parabolic method in steady flow analysis

  4. Chris Goodell

    on March 28, 2016

    The hydraulic reference manual is a good place to start.

  5. Adam S. Kamara

    on May 24, 2017

    Thanks Prof. Goodell. Just completed a project using RAS. Hydraulic is nice to study.

  6. Sunday Adebayo

    on June 9, 2017

    Thank You… But have being looking for solution to any "Incomplete data error" when running a steady flow analysis in subcritical flow regime… the errors includes:
    * Station data contains a wall with zero width, found the elevation goes up and then down (or down and then up) without moving over. Please remove wall (take out the middle point) or add some width to the wall. At point(s): 2,3,4,5,6,7,8,…26.
    * No manning n data or friction heights K set
    * Right bank station must be greater than left bank
    * Main Channel length is less than or equal to zero, HEC-RAS requires a positive reach length.
    *Right over bank length is less than or equal to zero, HEC- RAS requires a positive reach.
    NB: Am working with two rivers that met at a junction and continues flowing.

    PLS AM NEW TO HEC-RAS, but i need this to do my Masters Thesis. THANKS

  7. Mirko

    on June 9, 2017

    Regarding The hydraulic reference manual (v4.1. page2-13), which value of Froude number in Cross Section Output Table is for critical depth, Fr=1 or Fr=0.94?

  8. Chris Goodell

    on June 12, 2017

    FR=1. FR = 0.94 is just a quick threshold check for when to determine critical depth by more accurate methods (specific energy method).

  9. Richard Smith

    on June 23, 2017

    Great blog. I work a lot with FEMA flood studies where a "no-rise" condition means no rise to the 0.00' comparing pre- and post-project modeling when determining if a conditional letter of map revision (CLOMR) is required. Frequently the post project model will have an identical cross section as the pre-project but will have a different critical depth and this can show as a 0.01 or greater rise which of course is not allowed if trying to achieve a no-rise. The models are all run in subcritical flow mode (a FEMA requirement). I have set both models to parabolic and also multiple methods but although I get different answers the rise still occurs. Adjusting computation tolerances courser does not help with matching the critical depth and adjusting finer appears to make the differences greater. Other identical pre- and post-project cross sections flowing at critical depth match elevations very well. Any thoughts on what is causing this would really be helpful. Thank you.

  10. Richard Smith

    on June 23, 2017

    Chris, my bad, I found the top of bank was set differently between the two models. I do see this a lot and usually can find a tiny error between the cross sections and correcting that solved the problem.

  11. Chris Goodell

    on June 23, 2017

    Not sure what would cause that other than some difference between your cross sections. You might try copying the cross section from one geometry to the other geometry just to double check there is nothing different.

  12. Chris Goodell

    on June 23, 2017

    Glad you found it!

  13. morgan omale

    on August 7, 2017

    Hi chris, its morgan from Nigeria… i just succeeded in running an unsteady flow simulation..using my dam breach hydrograph output data as initial boundary condition..(flow hydro graph…but my water level in the profile was constant even the energy line was also constant…How do i manipulate my way through the energy line and water level..although the discharge Q was reducing from upstream downstream because of the dam breach over topping flood..PLEASE HELP ASAP…

  14. Chris Goodell

    on August 7, 2017

    Sounds like maybe you have a downstream boundary or control in your model that is keeping the water high, level, and slow. Could be an error too. Check your htab parameters and make sure they cover the full range of ws elevations computed in the simulation. Especially the bridge and culvert htabs. Also make sure your computational interval is small enough. For a dam breach model, it should typically be 30 seconds or less.

  15. Nate

    on August 28, 2017

    Chris, do you know the basis for why HEC-RAS (and hydraulic modeling in general) defaults to the flow profile with the higher specific force value at a particular cross-section? Why can't the lower specific force value be just as correct? I've tried searching the HEC-RAS manual and other references but haven't had any luck finding an explanation for why the higher specific force governs.

  16. Chris Goodell

    on August 29, 2017

    You might try reading the Specific Force section in Chow's "Open Channel Hydraulics". That's Chapter 3-7 in my version of Chow. It might help explain.

  17. Unknown

    on September 20, 2017

    Hi Chris- I am running a Hec-Ras model which I am having a divided flow computed for my cross sections and at one of my sections, just downstream of a box culvert my flow hits super critical and the divided flow is not computed. Can you think of any reason or way to fix this? The program wants to push the entire flow back through the channel rather than use the storage as defined outside of the banks. Any help as quick as possible would be greatly appreciated.


  18. Deepak Garggottri Acharya

    on August 12, 2018

    Hi Chris
    How can I analyze the river with Caving (Over hanging) section by HEC-RAS?

  19. Sharif

    on July 30, 2021

    Hi, I have a project in unsteady conditions. I have a flow hydrograph for upstream as the boundary condition. But there is a drop downstream, and the only boundary condition is that critical depth occurs there. How can I model this?

  20. Chris Goodell

    on July 30, 2021

    Sharif, I would just use normal depth and adjust your slope until you more or less land on critical depth there.

  21. Sharif

    on July 31, 2021

    Thanks a lot. it works.

Add Your Comment

Leave a Reply

nineteen − 8 =

Related Posts