r.li.mps(1grass)
πΈ r.li.mps β the mean patch size girlie π
okay so bestie, welcome to r.li.mps from the GRASS User's Manual β she calculates the mean patch size index on a raster map, and she does it with a 4 neighbour algorithm. no notes. iconic behavior honestly β¨
β¨ NAME β¨
r.li.mps β calculates mean patch size index on a raster map, using a 4 neighbour algorithm π¦
π KEYWORDS π
raster, landscape structure analysis, patch index
π SYNOPSIS π
r.li.mps
r.li.mps --help
r.li.mps input=name config=name output=name [--overwrite] [--help]
[--verbose] [--quiet] [--ui]
π Flags:
--overwriteβ Allow output files to overwrite existing files π (yes she will simply replace them, be careful)--helpβ Print usage summary--verboseβ Verbose module output--quietβ Quiet module output--uiβ Force launching GUI dialog
π«Ά Parameters:
input=name[required] β Name of input raster mapconfig=name[required] β Configuration fileoutput=name[required] β Name for output raster map
π§ DESCRIPTION π§
so r.li.mps (that's mean patch size, mwah) calculates the mean size of the patches in the sampling area, like:
MPS = A / Npatch
with:
- A: sampling area size without null cells
- Npatch: number of patches
the unit of the mean size is hectare π
this index is calculated using a 4 neighbour algorithm β diagonal cells are literally ignored when tracing a patch. not invited to the party, sorry π«
β NOTES β
bestie do NOT use absolute path names for theconfigandoutputfile/map parameters. just don't. π
if the "moving window" method was selected in g.gui.rlisetup, then the output will be a raster map β¨ otherwise an ASCII file will be generated in the folder:
C:\Users\userxy\AppData\Roaming\GRASS8\r.li\output\
(MS-Windows) or
$HOME/.grass8/r.li/output/
(GNU/Linux).
and ngl this part is important: if the sample area contains only NULL value cells, r.li.mps returns 0 (zero). that's it, that's the answer, no drama π«
π₯ EXAMPLES π₯
to calculate mean path size index on map my_map, using my_conf configuration file (previously defined with g.gui.rlisetup) and saving results in my_out, run:
r.li.mps input=my_map conf=my_conf output=my_out
Forest map (Spearfish sample dataset) example π²:
g.region raster=landcover.30m -p
r.mapcalc "forests = if(landcover.30m >= 41 && landcover.30m <= 43,1,null())"
r.li.mps input=forests conf=movwindow7 out=forests_mps_mov7
r.univar forests_mps_mov7
Forest map (North Carolina sample dataset) example π³:
g.region raster=landclass96 -p
r.mapcalc "forests = if(landclass96 == 5, 1, null() )"
r.li.mps input=forests conf=movwindow7 out=forests_mps_mov7
# verify
r.univar forests_mps_mov7
r.to.vect input=forests output=forests type=area
d.mon wx0
d.rast forests_mps_mov7
d.vect forests type=boundary
πΈ SEE ALSO πΈ
r.li(package overview)g.gui.rlisetup
π REFERENCES π
McGarigal, K., and B. J. Marks. 1995. FRAGSTATS: spatial pattern analysis program for quantifying landscape structure. USDA For. Serv. Gen. Tech. Rep. PNW-351. (PDF)
π AUTHORS π
- Michael Shapiro - CERL (patch identification)
- Markus Metz (statistics)
π SOURCE CODE π
Available at: r.li.mps source code (history)
Latest change: Friday Apr 17 01:04:26 2026 in commit: 32a143358df26b2e518b03c7e0d79541e8d1e5b1
Main index | Raster index | Topics index | Keywords index | Graphical index | Full index
and that's the whole vibe bestie β Β© 2003-2026 GRASS Development Team, GRASS 8.5.0 Reference Manual, running the GRASS 8.5.0 era of r.li.mps(1grass) πβ¨ππ¦ slay, go compute some patch sizes, ily π«Ά
π¦ where this page comes from
- alpine 3.24: grass-gis-doc 8.5.0-r1 Β· GPL-2.0-or-later
- ubuntu stonking: grass-doc 8.5.0-1ubuntu1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms