Muskingum Routing
  • 21 Oct 2022
  • 3 Minutes to read
  • Dark

Muskingum Routing

  • Dark

The Muskingum Routing unit models the flow of water in open channels based on the continuity equation and the Muskingum storage relationship.


Field in Data Entry Form
Name in Datafile

Section Label

node label at discharge point



Distance to Next

distance to next discharge point or cross section in metres (a zero specifies the end of the reach and for this last node the k and x values will not be used)



Bed Elevation

bed elevation in m AD (not used in computations)



K Parameter

Muskingum k parameter (s)



X Parameter

Muskingum x parameter



Specify Velocity Using

For “VQ Power Law”, enter the coefficients a, b, V0 and Q0 to define the flow-velocity relationship; otherwise (VQ Rating), enter the relationship at discrete points in the supplied table



Constant a

scaling parameter for velocity calculation (>0)


Exponent b

power law parameter for velocity calculation (>0)


Lowest Permitted Velocity

lowest permitted velocity (>0)


Flow Threshold

flow below which velocity is set to Vo (>0)



number of subsequent V Q data pairs


Velocity and Flow Table

a table of velocity and flow values used to interpolate velocity values for subsequent Flood Modeller Quality simulations


   - These fields are only used when the results of the simulation are to be used for a subsequent water quality simulation. However, dummy data values must always be specified.

Theory and Guidance

The Muskingum Routing unit models the flow of water in natural and man-made open channels using the Muskingum method to route the flow.

The Muskingum Routing calculates the discharge within a river or channel reach given the inflow hydrograph at the upstream end.

The unit is based on the continuity equation and the Muskingum storage relationship (McCarthy G.T. (1938)).

Cross section details are not required and only the Muskingum parameters k and x are specified. Both parameters are fixed.

A minimum of two Muskingum Routing sections are required for each end of the river or channel reach.

Intermediate discharge points can be specified by using additional Muskingum Routing nodes.


The equations used in the Muskingum Routing are the continuity equation:



and the storage relationship:

S = k * [ x * I + (1 - x) * O ]



I = inflow to the reach [m3/s]

O = outflow from the reach [m3/s]

S = storage in the reach [m3]

t = time [s]

x = weighting coefficient

k = storage constant [s]

The basic principle is that storage is a linear function of the weighted average flux, where the latter is defined as the term x * I + (1 - x) * O in equation (2).

Combining both equations an explicit equation can be obtained to calculate the outflow at the next time step:


O2 = C 0 I 2 + C 1 I 1 + C 2 O 1


where the coefficients C0, C1 and C2 are defined as:







The subscripts 1 and 2 on I and O represent the values at time t1 and t2 respectively.

The values of k and x may be obtained by calibration, with the recommended constraints that

0 < x < ½, and

x < Δt/2k < 1-x,

where Δt is the simulation timestep.

Water Quality Simulations

If the flood routing model is to be used to generate output for a future water quality simulation, an approximate method must be used to calculate the nodal velocities required. See Routing Velocity Calculation for more information.


A feature of the Muskingum method is the possible generation of undershoots in flow in advance of the rising limb for certain parameter values.

The timestep should never be greater than the value of the k parameter. This value can be approximated by the travel time of the wave through the reach. A value for x between 0.0 and 0.3 is recommended.

The performance of the routing depends upon the values chosen for the routing parameters. When measured flood hydrographs are available calibration of the Muskingum parameters can be derived.

Muskingum units can be preceded or followed by normal Flood Modeller river reaches. However a rating curve (QRATING) needs to be defined at the downstream end of a river reach if it joins a Muskingum unit. The normal Flood Modeller connectivity rules apply for Muskingum units and therefore a HTBDY is required (but not used) at the downstream end of a model coincident with a Muskingum routing reach.

RIVER units should not be directly connected to Conduit units. Users can connect CONDUIT and RIVER reaches using a Junction if no head loss occurs at the join. Alternatively, the specialised Culvert Inlet and Culvert Outlet units can be used to model the losses associated with transitions from open channel to culverts and vice versa. Bernoulli Loss units are also available to model more generalised losses.

Datafile Format

Line 1 - keyword `RIVER' [comment]

Line 2 - keyword `MUSKINGUM'

Line 3 - Label1

Line 4 - dx, z

Line 5 - k, x

Line 6 - keyword 'VQ POWER LAW' or 'VQ RATING'

Line 7 - Vo, Qo, a, b (if 'VQ POWER LAW') or ndat (if 'VQ RATING')

Line 8 to Line 7+ndat - V, Q (if 'VQ RATING')

Was this article helpful?

What's Next