Interpretation of BaseFlow - SWY model

I ran the SWY model for two scenarios, a base scenario and a scenario where I changed some crops areas into forest areas.
I’m confused about the Baseflow output. I don’t understand why it is larger than Local Recharge, I thought Baseflow was coming from the infiltration of water in the soil and was the quantity of water reaching the stream could not be larger than local recharge…

Here are the values I get :
Runoff (m3) : 1 403 635 392
Evapotranspiration (m3) : 6 086 070 432
Local Recharge (m3) : 79 191 635
Baseflow (m3) : 369 593 928
Precipitation (m3) : 7 568 902 310

I summed all pixel values of each parameter over my area of interest and multiplied by 0.001 (mm → m) and by a pixel surface to get the overall volume of water.
I read the user guide but it didn’t really help me to understand, could you explain how to interpret local recharge and base flow?
Thank you !

Welcome to the forum @mcannt -

Which baseflow output did you sum? The B.tif layer has the value of baseflow contributed by an individual pixel. B_sum.tif is the sum of flow from the area upslope of each pixel. So I’d expect B.tif to be lower than local recharge, but it’s very likely that B_sum would be greater.

One other reminder is that, as the Interpreting Results section of the User Guide says, the local recharge and baseflow values are best interpreted as relative, not absolute.

~ Stacie

Thank you for your quick response!
I summed the B.tif output , and I expected it to be lower than the sum of L.tif values.
I will use it as relative values in my work, but I need to be able to define that Baseflow represent.
Isn’t Baseflow supposed to be equal to Local Recharge - Evapotranspiration over the whole watershed?

I’m sorry to ask you again, but I still don’t understand how I can have more baseflow than local recharge over my whole watershed…
The relative values I get from a baseline scenario and a scenario with more forest areas are :
Runoff : -464 207 m3
Evapotranspiration : 543 619 m3
Local Recharge: -79 412 m3
Baseflow : 47 893 m3
As expected, more vegetation leads to less runoff and more evapotranspiration, but I don’t get the Baseflow value…
Thank you !

Hm, well, it doesn’t make intuitive sense to me either why there would be more baseflow than local recharge. My guess is that it has to do with how B is calculated (equation 101), which does not seem to be a direct accounting of water flow, but calculates it based on the pixel’s recharge relative to what’s happening upslope of each pixel. I do wish that this model chapter was written more colloquially, since I don’t understand half of the text associated with the equations, so it’s hard to tell what it’s trying to do.

Sorry for not being more helpful. Does anyone in the software team have insights about this? Or perhaps @Perrine can shed some light?

~ Stacie

Thank you very much for your response!
Does anyone who built the model have an interpretation of BaseFlow?Hopefully an interpretation that would explain how I can get an increase of BaseFlow while having a decrease in Local Recharge between a baseline scenario and a scenario with more forest?
Thank you !

@mcannt how many pixels are being summed in the whole watershed? If there are many, many pixels, I could see the accumulation of numerical error being a possible issue, but you would need a lot of pixels to have this large an error.

Could you share your inputs with us for these two scenarios as well as the logfiles from each of these runs so we can take a closer look?


I don’t have that many pixels, I sum 997225 pixels in the whole watershed.
Here is a google drive link to my inputs and logs for both scenarios (baseline and project): SWY_model_lilongwe - Google Drive

Thank you!


Thanks for your logfiles and inputs @mcannt ! That’s not enough pixels where I’d expect that amount of difference between them.

I ran the model with your inputs and have also been stepping through the model source code and the user’s guide, and I think the key thing here is that Contribution to Local Recharge L can be negative, while the Contribution to Baseflow B cannot. You can see this in the model outputs here:

Whenever local recharge is less than 0, baseflow on that pixel will be 0. So if you are summing up all of the pixel values for L and comparing those to the summed pixel values of B, you can absolutely have modeled results where sum(L) < sum(B).

Does that help?


Thank you! It helps to know that it is not coming from any numerical error.
From your answer, I tried to understand how I can have an increase in Baseflow while having less local recharge and more evapotranspiration.

In my baseline scenario, I summed only the positive local recharge pixels (45 628 866mm) , and I found it is equal to my Baseflow sum (45 628 866mm).

So I’m guessing that Baseflow is all water that “succeeds” in infiltrating the soil in its own pixel (the water that is not consumed by the pixel’s vegetation). And if the water from this Baseflow is consumed in a downslope pixel, it is not removed from the Baseflow “total sum”. On the contrary, since local recharge can be negative if it is used for evapotranspiration, it is removed from the “total sum” of local recharge.
And that would explain why baseflow is usually superior to Local Recharge over the whole watershed.

Does it seem like a correct way to interpret BaseFlow?