We describe an algorithm that uses pro rata allocation between inter-pool f
lows to meet conservation of mass/energy constraints and avoid execution or
der dependence. More commonly used clipping methods do not satisfy these co
nstraints when multiple flows from small pools exceed the total size of the
pool. Overrun, which occurs when a pool is increased or decreased beyond i
ts capacity, typically a decrease below zero, leads to failure to conserve
mass. Clipping avoids overrun by restricting the size of pools, usually by
setting negative values to zero, which can in turn lead to unacceptable err
or levels in the simulation's output, particularly in terms of sensitivity
to execution order. In addition to the normal 'current' and 'next' copies o
f the system's state variables, this algorithm requires an 'output' copy, w
hich sums outputs from each pool. Individual flows from a pool are divided
by the output sum to determine the proportion of the pool each flow receive
s. Additionally, the approach allows tracking of individual mass flows, whi
ch are sometimes more interesting than their net effect on the pools on whi
ch they operate. Implementation details and a comparison with a clipping ty
pe algorithm are given in terms of a GIS based meadow ecosystem hydrology s
ubmodel. In a simple test case. also presented, the pro rata algorithm more
consistently tracks the target solution (given by an extremely small time
step). (C) 2000 Elsevier Science B.V. All rights reserved.