Skip to content

r.futures.devpressure

Module for computing development pressure

r.futures.devpressure [-n] input=name output=name method=string size=integer [gamma=float] [scaling_factor=float] [nprocs=integer] [--overwrite] [--verbose] [--quiet] [--qq] [--ui]

Example:

r.futures.devpressure input=name output=name method=gravity size=8

grass.script.run_command("r.futures.devpressure", input, output, method="gravity", size=8, gamma=1.5, scaling_factor=1, nprocs=1, flags=None, overwrite=False, verbose=False, quiet=False, superquiet=False)

Example:

gs.run_command("r.futures.devpressure", input="name", output="name", method="gravity", size=8)

Parameters

input=name [required]
    Name of input binary raster map representing development
output=name [required]
    Name of the output development pressure raster
method=string [required]
    Method for computing development pressure
    Allowed values: occurrence, gravity, kernel
    Default: gravity
    occurrence: number of developed cells in window
    gravity: scaling_factor / pow(distance, gamma)
    kernel: scaling_factor * exp (-2*distance / gamma)
size=integer [required]
    Half of neighborhood size
    Default: 8
gamma=float
    Coefficient controlling the influence of distance, needed for method gravity and kernel
    Default: 1.5
scaling_factor=float
    Scaling factor needed for method gravity and kernel
    Default: 1
nprocs=integer
    Number of threads for parallel computing
    Default: 1
-n
    Do not propagate nulls
--overwrite
    Allow output files to overwrite existing files
--help
    Print usage summary
--verbose
    Verbose module output
--quiet
    Quiet module output
--qq
    Very quiet module output
--ui
    Force launching GUI dialog

input : str, required
    Name of input binary raster map representing development
    Used as: input, raster, name
output : str, required
    Name of the output development pressure raster
    Used as: output, raster, name
method : str, required
    Method for computing development pressure
    Allowed values: occurrence, gravity, kernel
    occurrence: number of developed cells in window
    gravity: scaling_factor / pow(distance, gamma)
    kernel: scaling_factor * exp (-2*distance / gamma)
    Default: gravity
size : int, required
    Half of neighborhood size
    Default: 8
gamma : float, optional
    Coefficient controlling the influence of distance, needed for method gravity and kernel
    Default: 1.5
scaling_factor : float, optional
    Scaling factor needed for method gravity and kernel
    Default: 1
nprocs : int, optional
    Number of threads for parallel computing
    Default: 1
flags : str, optional
    Allowed values: n
    n
        Do not propagate nulls
overwrite: bool, optional
    Allow output files to overwrite existing files
    Default: False
verbose: bool, optional
    Verbose module output
    Default: False
quiet: bool, optional
    Quiet module output
    Default: False
superquiet: bool, optional
    Very quiet module output
    Default: False

DESCRIPTION

Module r.futures.devpressure is part of FUTURES, land change model. It computes development pressure, a predictor based on the number of neighboring developed cells within search distance, weighted by distance. The development pressure variable plays a special role in the model, allowing for a feedback between predicted change and change in subsequent steps.

There are multiple options for calculating development pressure in the model.

  • occurrence: simple count of the number of developed cells within the specified window size
  • gravity: defined as scaling_factor / pow(distance, gamma)
  • kernel: defined as scaling_factor * exp(-2 * distance / gamma)

Coefficient gamma is the coefficient controlling the influence of distance. The best value for gamma is chosen during the model selection process (TODO).

The input raster is binary, value 1 represents development, value 0 no development. The neighborhood size describes the size of the moving window in cells (2 * size + 1).

image-alt

Figure: Effect of parameters size and gamma: a) initial development, b) gamma = 2, size = 10, c) gamma = 1.5, size = 10, d) gamma = 1.5, size = 20.

NOTES

By default NULL values are propagated. This means that the edges of the resulting map will be NULLs. To avoid that, flag n internally enlarges the computational region, converts NULLs to zeros, performs the computation and then patches back the original NULL values.

Module r.futures.devpressure, although written for FUTURES model, is general enough to be used for different applications where distance pressure can be described with the functions above.

EXAMPLES

r.futures.devpressure input=developed output=pressure gamma=1.5 size=10 method=gravity

SEE ALSO

FUTURES, r.futures.pga, r.futures.calib, r.futures.demand, r.sample.category

REFERENCES

AUTHOR

Anna Petrasova, NCSU GeoForAll

SOURCE CODE

Available at: r.futures.devpressure source code (history)
Latest change: Friday Feb 21 10:10:05 2025 in commit 7d78fe3