Open LRossman opened 1 year ago
I've incorporated the FAVAD leakage model into a fork of the dev branch here. Since it touches a significant number of files I'd like to get some buy in on it before merging it into this repo. The updates it includes can be summarized as follows:
[LEAKAGE]
section has been added to the input file format where each line contains the ID name of a pipe, its leak area in sq. mm per 100 length units, and its leak expansion rate in sq. mm per unit of pressure head.EN_LEAK_AREA
and EN_LEAK_EXPAN
can be used with the functions EN_getlinkvalue
and EN_setlinkvalue
to retrieve and assign values for a pipe's leak area and expansion properties.EN_LINK_LEAKAGE
can be used with EN_getlinkvalue
to retrieve a pipe's leakage rate at a given point in time.EN_LEAKAGEFLOW
can be used with EN_getnodevalue
to retrieve the leakage demand generated at a node from all its connecting pipes at a given point in time.EN_LEAKAGELOSS
can be used with EN_getstatistic
to retrieve the the total leakage loss in the system at a given point in time as a percentage of total flow entering the system.
EN_FULLDEMAND
- the consumer demand requestedEN_DEMANDFLOW
- the consumer demand deliveredEN_DEMANDDEFICIT
- the difference between the consumer demand requested and deliveredEN_EMITTERFLOW
- the node's emitter flowEN_LEAKAGEFLOW
- the node's leakage flowEN_DEMAND
- the sum of the node's consumer demand, emitter flow, and leakage flowI've structured the leakage code so that it doesn't get executed if no pipes are assigned leakage parameters. Also included is a simple unit test file. As an example of the kind of results it can generate I ran the 2466 pipe EXNET-3 model under a PDA scenario where each pipe was assigned a fixed leakage area of 1 sq mm per 100 m of length and an expansion rate of 0.1 sq mm per meter of pressure head. Below is a color-coded map of the resulting leakage rate in each pipe, where the total system leakage loss was 20%. It's interesting to see how non-uniform the leakage results are and would be difficult to predict given the size of this system.
Pipe leakage is typically modeled with an emitter at a node, using a power relationship between leakage flow rate and pressure. An issue arises in assigning meaningful values to the emitter flow coefficient and the global emitter exponent to be used. Conceptually the flow coefficient should somehow reflect the number of pipes connected to the node, the assumed number of cracks and their areas in each connecting pipe, and the pressure experienced along the pipe (as opposed to just the node). Regarding the flow exponent, empirical studies have shown that it can also vary with pressure.
The FAVAD leakage model (Cassa and van Zyl, 2014) uses the following equation to estimate the leakage rate from a single crack along a pipe:
where
Cd
is an orifice discharge coefficient (typically 0.6),Ao
is the area of the crack under zero pressure conditions,h
is the pressure head seen by the crack, andm
is rate at which the crack area expands as pressure increases (dA/dh with experimental values between 0 and 0.001 mm depending on pipe material and crack size).This model can easily be incorporated into EPANET. An additional set of leakage parameters would be defined for each pipe: LC1 = the area of leaks per 100 units of pipe length and LC2 = the leak expansion rate per 100 units of pipe length (i.e.,
LC1 = Ao * N * L / 100, LC2 = m * N * L / 100
whereN
is the average number of cracks per 100 length units of pipe andL
is pipe length). The FAVAD equation would be evaluated using these parameters along with the average pressure head along the pipe (average of the upstream and downstream node pressures). The resulting leakage flow would then be divided evenly between the pipe's end nodes and incorporated into EPANET's hydraulic solver in similar fashion to how emitter flow is treated.Admittedly this results in substituting the three pipe-related leakage parameters (Ao, m, and N) for the two node-related emitter parameters (flow coefficient and exponent). However it does provide a stronger physical basis for modeling pipe leaks.