The idea in summary is to use land surface temperature (LST) data as a means to draw cooling extents around green roofs, as if you were drawing watershed basins around a lake, where high temperature is analogous to high elevation. I am trying to show how the green roofs provide some relief from the urban heat island effect.
I have the following LST data layer with green roof polygons laid over:
And so I "burned" them into my LST raster with a fixed value of 8 degrees Celsius, the rough temperature of the coolest parts of the city (of course I can change the 8 degrees Celsius value later to more accurately reflect what vegetation should be). The idea is to "force" the watersheds to "drain" into these green roofs since they would be the lowest points. I have this:
As you can see, green roof polygons were burned into the LST raster, and are now blue (on the temperature scale of course meaning that they are 8 degrees Celsius, the coolest side of the temperature scale). I used the "Rasterize (Overwrite with Fixed Value) tool for this. I assume that the reason only some polygons got turned into blue pixels is because they just were not large enough for this algorithm to recognize.
So now I want to draw watershed basins for this raster layer, where I hope they will be focused around the green roofs. I start by creating a flow direction layer using "r.fill.dir":
I then enter this flow direction raster as input into the watershed tool (r.watershed), setting the "Minimum size of exterior basin" parameter to 20:
And ideally these should be my cooling extent boundaries around my green roofs. But unfortunately as you can see, it is really difficult to trust this outcome. By the logic I am going by, each of these watershed boundaries would represent the cooling extent boundaries of the green roofs within them, but it is difficult to really conclude that, because it all just seems so chaotic and unorganized. I don't see the pockets of cooling forming around the green roofs as I would expect. Also, there are multiple green roofs within the same boundary, and even more confusing, the green roofs are sometimes at the edge of the boundary and not more towards the center like I was expecting. Is there a way my methods can be improved to create more reasonable cooling extent watershed basin polygons/boundaries?
I do have some key additional areas I am unsure about:
For my flow direction raster, does it matter that I have gaps in the data, which I see are called "problem areas"?
For creating the watersheds with r.watershed, should I be using the flow direction raster as the input, or should I be using the "Depressionless DEM" raster (produced from r.fill.dir) as the input? I have seen both used as inputs.
For the watershed tool, how should I go about choosing the "Minimum size of exterior basin" parameter value for my project? I of course want high resolution on the micro green-roof level scale, but not so many watershed boundaries that it creates too much chaos.
Since my LST layer is such poor resolution (well 30m as per Landsat 8 bands 10 and 11 where I calculated the LST layer from), is there a way to run some sort of data smoothing/interpolation algorithm to get a higher resolution if this is even possible? I have seen this technique is called "downscaling".
Disclaimer: I of course realize that the influence of tiny green roofs on LST would be miniscule in comparison to the influence of large parks and nearby water bodies, and that I would somehow need to isolate the green roof influence from these larger influences. I am essentially trying to find out if I can find any additional "mini" cooling pockets within the LST already influenced by larger green spaces and water bodies.