
--
You received this message because you are subscribed to the Google Groups "Linkage Mapper" group.
To unsubscribe from this group and stop receiving emails from it, send an email to linkage-mappe...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/linkage-mapper/10dc9290-f9ed-43ca-b1a5-3d1891a2475an%40googlegroups.com.
I am doing a corridor analysis on a much larger area than I’ve ever done before. We are still working to improve our hubs and resistance surface, but in the meantime I am testing the corridor analysis on a draft versions. All my data is in Albers equal area projection with meters as the unit. My resistance raster is 90 meter cells. My draft core layer has 1937 cores.
As I expected, I can’t run the whole area at the same time. I have tried doing this several times using a bounding circle to try to save space and processing time. When I do, it consistently either crashes without error or fails with an error message on step 3 when working on the first core area:
Target core areas for core area #1 = [ 6 7 13 14 15 31 32]------------------------------------------------------------------Geoprocessing error on **line 758** of s3_calcCwds.py in Linkage Mapper Version 3.0.0:---------------------------------ERROR 010236: Error in building VAT: MtVatBldNew: All cells in grid d:\lmfull\scratch\core1\addras have NODATA value. VAT will not be built..ERROR 010067: Error in executing grid expression.Failed to execute (GetRasterProperties).
I have explored how to break up my area into subregions so I can run them. I’ve tested several sizes. I’m currently working with hexagon subregions that are 500k sq km in size. This is the largest size I’ve tested and breaks up my study area into 11 subregions.

As I mentioned above, trying to run the entire area at once always fails in step 3, however, it does correctly create a core area distance file. In my testing, I can use that core area distance file in subregion runs to save processing time. It also correctly creates a cost weighted allocation raster and a Euclidian allocation raster. I haven’t figured out how to re-use those in the subregion runs.
· Is there a way to use cwd_alloc_ras created from the failed full run on subset run?
· Is there a way to use euc_alloc_ras created from the failed full run on subset run?
To perform my subregion runs, I buffer each hexagon by 200 km, to try to minimize edge effects. I then clip the resistance raster to the buffered hexagon and I select hubs that intersect that hexagon to use as inputs in my subregion linkage mapper runs. I started by using the full resistance raster in the subregion runs. Sometimes I can use the full resistance raster and the hubs that intersect a hexagon and it works, but it seems like this was related to more crashing. Lately I’ve just been using the clipped resistance raster to try to narrow down what is causing crashes and I seem to be getting less crashing.
My goal was to run each of the buffered subregions using the following settings:

I’m using the bounding circles buffer distance to try to save hard drive space and processing time. Sometimes it crashes when I use the bounding circles buffer distance though. Sometimes it runs and sometimes it doesn’t. There are some hexagons that I have only been able to run if I leave the bounding circles buffer distance blank. I also played around with using a maximum Euclidian corridor distance of 200k meters, but sometimes those crashed. I figured I’d leave that blank for this testing because I can always go back in and remove longer corridors later. But then also sometimes it crashes even when I leave the bounding circles buffer distance blank too. I’ve had a hard time telling the difference between when ArcPro just crashes because ESRI gonna ESRI and when it is crashing because I’ve used a value in these fields that it doesn’t like.
I managed to get all my buffered hexagons to run now! And
when I clipped the corridor outputs back down to the original hexagon and merged
them all together, I’m not seeing any big edge effects. Woot Woot!
I’m curious what you think about these methods of splitting
the area into subregions and buffering them. Have you done something like this
before?
Do you have any tips or tricks for breaking up a large area to get it to run, limit edge effects, and minimize processing time?