Calculate distances between two sets of catchments using their spatial support.
hdist(x, y,...)## S3 method for class 'sfc'hdist( x, y, method ="rghosh", gres =5, ditself =FALSE, maxsample =25000, proj =NULL, parallel =FALSE, cores =NULL, verbose =TRUE,...)## S3 method for class 'sf'hdist(x, y,...)## S3 method for class 'stars'hdist(x, y,...)## S3 method for class 'transfR'hdist(x, y, method ="rghosh", weightO =0.8, weightC =0.2,...)
Arguments
x: sf, stars or transfR object of the first catchments
y: sf, stars or transfR object of the second catchments
...: further arguments passed to or from other methods
method: the method to use for computing distance. This must be one of "ghosh", "rghosh", "points", "centroids", "combined"
gres: resolution of spatial discretisation (number of points by km²) for Ghosh distance
ditself: logical value indicating if the distance to itself should be computed. It will add one row and one column in the distance matrix. Only used if method is "ghosh"
maxsample: maximum size of sampling points for each catchments during spatial discretisation
proj: logical indicating if spatial layer are using a projection. If TRUE, euclidean distance is used. If FALSE, the great-circle distance is used
parallel: logical indicating whether the computation should be parallelised. Could be a vector of length two to distinguish between parallelisation of sampling and Ghosh distance (because sampling over large areas can be memory intensive)
cores: the number of cores to use for parallel execution if parallel is TRUE. If not specified, the number of cores is set to the value of parallel::detectCores(). Similarly to parallel, it could be a vector of length two to distinguish between parallelisation of sampling and Ghosh distance
verbose: boolean indicating if information messages should be written to the console
weightO: weight given to the distance between outlets if method is "combined"
weightC: weight given to the distance between centroids if method is "combined"
Returns
A matrix of class units with the catchments of x organised in rows and the catchments of y organised in columns.
Details
The method "ghosh" refers to a simplification of the distance defined by \insertCite Ghosh1951;textualtransfR as proposed by \insertCite Gottschalk1993,Gottschalk2011;textualtransfR. The rescaled Ghosh distance (method "rghosh") is calculated following \insertCite deLavenne2016;textualtransfR.