Routing for a particular sub-catchment is carried out using the Muskingum-Cunge Channel Routing Model method. The storage is considered to be a non-linear function of the discharge, ie:


where:

s=volume of storage (hr × m³/s),
q=instantaneous rate of runoff (m³/s),
K(q)=storage delay time as a function of q (hours).

The storage function is used in the continuity equation in finite difference form:

(2)

where:

i1, i2= Inflow at beginning and end of routing period (m³/s),
delta t= routing interval (hr),
q1, q2 = outflow from the storage at beginning and end of routing period (m³/s),
s1, s2 = storage volume at beginning and end of routing period (hr × m³/s).

Substituting s2 and s1 in Equation (2) from Equation (1) gives:

(3)

where:
(4)
(5)

An iterative solution to Equation (3) is required due to the interrelation between C0, C1, C2, K2 and q2 in XPRafts. K1and K2 are the computed subarea storage delay times as a function of q at the beginning and end of the iteration respectively.