GRASS logo

NAME - Individual-based dispersal model for connectivity analysis (energy based) using iterative patch removal.



SYNOPSIS --help [-abrp] input=name [costmap=string] [suitability=string] output=name keyval=integer step_length=integer [perception=integer] [multiplicator=float] n=integer energy=float percent=float stats=string[,string,...] [out_freq=integer] [seed=integer] [title="phrase"] [--overwrite] [--help] [--verbose] [--quiet] [--ui]


Set for 8 cell-neighbors. 4 cell-neighbors are default
Set if individuals should be set back after leaving area
Set to remove individuals which start in the deleted patch
Set to output values as percentual of the value from the reference run
Allow output files to overwrite existing files
Print usage summary
Verbose module output
Quiet module output
Force launching GUI dialog


input=name [required]
Name of input raster map
Name of the costmap
Name of the suitability raster with values from 0-100
output=name [required]
Name for output raster map
keyval=integer [required]
Category value of the patches
step_length=integer [required]
Length of a single step measured in pixels
Perception range
Attractivity of patches [1-inf]
n=integer [required]
Number of individuals
energy=float [required]
Initial energy of the individuals
percent=float [required]
Percentage of finished individuals desired before simulation ends
stats=string[,string,...] [required]
Statistical method to perform on the pathlengths of the individuals
Options: average, variance, standard deviation, median, min, max
Output an intermediate state of simulation each [out_freq] steps
Seed for random number generator
Title for resultant raster map

Table of contents


This function is based on but adds the functionality of iterative patch removal for testing of patch relevance to maintain the landscape connectivity integrity. Isolation or connectivity of singular patches of a defined landcover class are analysed using individual-based dispersal models. This functions uses a maximum amount of energy for each individuals dispersing through the landscape which is deminished by a fricition or cost map. Unlike the related function does this function allows individuals to stay or move within a patch until the energy is depleted.


Amount of successful immigrants or emigrants are not taken individual into account which emigrated from and immigrated into the same patch (pseudo immigration).

The suitability matrix impacts the step direction, while the costmap relates to the depletion of assigned energy.


An example for the North Carolina sample dataset: The amount (average) and variance with or without the respective patch of successful emigrants (*_emi), immigrants (*_imi), the percentage of immigrants per patch (*_imi_percent), the amount of lost indivuals (*_lost), the amount of migrants (*_mig), successful (*_mig_succ) and unsuccessful migrants (_mig_unsucc) can be retrieved using this command: input=landclass96 output=energyiter1 keyval=5 n=1000 step_length=5 energy=10 percent=80 stats=average,variance
introducing costs for movement results in different immigration counts:
r.mapcalc "cost_raster = if(landclass96==5,1,if(landclass96 == 1, 10, if (landclass96==3,2, if(landclass96==4,1,if(landclass96==6,100)))))" input=landclass96 output=energy1 keyval=5 n=1000 step_length=5 energy=10 percent=80 stats=average costmap=cost_raster
introducing a suitability for the movement:
# the suitability for the next step selection is defined as: 
# class 5 and 3 (forest and grassland) have a high suitability, 
# while shrubland (class 4) only a moderate and water and developed 
# areas (class 6 and 1) have a very low suitability:

r.mapcalc "suit_raster = if(landclass96==5,100,if(landclass96 == 3, 100, if (landclass96==1,1, if(landclass96==6,1,if(landclass96==4,50)))))" input=landclass96 output=energyiter3 keyval=5 n=1000 step_length=5 energy=10 percent=80 suitability=suit_raster stats=average,variance
further settings can be changed and information retrieved: setting the perception range to 10 pixel: input=landclass96 output=energyiter keyval=5 n=1000 step_length=5 energy=10 percent=80 perception=10 stats=average
increasing the attraction to move towards patches to 10: input=landclass96 output=energyiter keyval=5 n=1000 step_length=5 energy=10 percent=80 stats=average multiplicator=10
output of each movement location for a defined step frequency. Here every 10th step is provided as output raster: input=landclass96 output=energyiter keyval=5 n=1000 step_length=5 energy=10 percent=80 stats=average out_freq=10

SEE ALSO, r.pi.searchtime, r.pi


Programming: Elshad Shirinov
Scientific concept: Dr. Martin Wegmann
Department of Remote Sensing
Remote Sensing and Biodiversity Unit
University of Wuerzburg, Germany

Port to GRASS GIS 7: Markus Metz

Last changed: $Date: 2017-05-10 23:56:34 +0200 (Wed, 10 May 2017) $


Available at: source code (history)

Main index | Raster index | Topics index | Keywords index | Graphical index | Full index

© 2003-2018 GRASS Development Team, GRASS GIS 7.4.1 Reference Manual