One method for obtaining solutions for single-and multi-layer flow over bottom humps and through sidewall contractions is to consider the variation in mechanical energy with layer thickness at key cross-sections. However, previous models of gradually-varying multi-layer flow have been restricted to flows which remain subcritical with respect to all but the slowest internal wave speed. This paper shows how the energy extrema method can be used over the full range of flow conditions; from subcritical with respect to all internal wave speeds to supercritical with respect to the free surface wave. The complete energy curves for three-layer flow are found to have up to seven different energy extrema at a given cross-section. The energy extrema are classified according to whether the flow is critical with respect to the first-or second-mode internal wave or the free-surface wave, whether the energy is a local maximum or minimum, and which layers are active. Froude numbers based on the actual wave speeds are used to determine whether the flow at a given cross-section is subcritical, critical or supercritical with respect to each of the three possible wave modes. All seven energy extrema represent possible energy conditions at a hydraulic control. Which energy extrema are applicable for a particular three-layer flow depends on the obstruction geometry and the upstream and downstream boundary conditions. RESUME Une methode pour calculer l'écoulement a une ou plusieurs couches, par dessus un seuil de fond et au passage de contractions latérales, consiste a prendre en compte la variation d'énergie mécanique en fonction de Pépaisseur de la couche a certaines sections remarquables. Cependant, les modèles existants de multicouches en regime graduellement varié sont limités aux écoulements sous-critiques partout sauf en ce qui concerne la célérité d'onde interne la plus faible. Cet article montre comment la methode des extremas d'énergie peut être appliquée a toute la gamme des conditions d'écoulement: depuis les écoulements souscritiques en ce qui conceme toutes les célérités d'ondes internes jusqu'aux écoulements super-critiques en ce qui concerne les ondes a la surface libre. Les courbes completes d'énergie pour un écoulement a trois couches peuvent présenter jusqu'a sept extremas différents d'énergie en une section donnée. Les extremas d'énergie sont classes soit selon que l'écoulement est critique en ce qui concerne les ondes internes de premier et du second mode ou les ondes de surface, soit selon que l'énergie est un maximum ou un minimum local et en fonction des couches qui sont actives. Des nombres de Froude construits avec les célérités d'ondes réelles sont utilises pour determiner en une section donnée si l'écoulement est sous-critique, critique ou super-critique en ce qui concerne chacun des trois modes d'ondes possibles. Chacun des sept extremas d'énergie représente une condition d'énergie possible a une section de controle; la distinction entre les différentrs extremas applicables a un écoulement particulier a tro...