r.uslek - GRASS GIS manual
Author: GRASS Development Team
Description: r.uslek: Computes USLE Soil Erodibility Factor (K).
Keywords: raster, hydrology, soil, erosion

## NAME

r.uslek - Computes USLE Soil Erodibility Factor (K).

## KEYWORDS

raster, hydrology, soil, erosion

## SYNOPSIS

r.uslek
r.uslek --help
r.uslek psand=name pclay=name psilt=name pomat=name output=name [--overwrite] [--help] [--verbose] [--quiet] [--ui]

### Flags:

--overwrite
  Allow output files to overwrite existing files
--help
  Print usage summary
--verbose
  Verbose module output
--quiet
  Quiet module output
--ui
  Force launching GUI dialog

### Parameters:

psand=name [required]
  Name of soil sand fraction raster map [0.0-1.0]
pclay=name [required]
  Name of soil clay fraction raster map [0.0-1.0]
psilt=name [required]
  Name of soil silt fraction raster map [0.0-1.0]
pomat=name [required]
  Name of soil organic matter raster map [0.0-1.0]
output=name [required]
  Name for output USLE K factor raster map [t.ha.hr/ha.MJ.mm]

## DESCRIPTION

r.uslek calculates the USLE K factor, that is the Soil Erodibility Factor. It takes input of soil texture classes (sand, clay, silt) and organic matter, all in range of [0.0-1.0]. The FAO World Soil CD documentation was used to produce the conversion system between soil textures and soil classes. The soil classes are in number of 12 and apparently come from a USDA publication of 1951 (p.209). Once the soil classes have been identified (by vector cross-products tests), a general conversion table was applied for transforming soil classes into K factor.

## NOTES

r.watershed provides for USLE L, S, LS factors.

## EXAMPLE

Calculate the USLE K factor (synthetic values, North Carolina sample dataset):

    # NC data: simulation
    g.region rural_1m -p

    r.mapcalc "sand  = 0.11"
    r.mapcalc "clay  = 0.47"
    r.mapcalc "silt  = 0.42"
    r.mapcalc "organ = 0.0136"

    r.uslek psand=sand pclay=clay psilt=silt pomat=organ output=usle_k
    r.univar usle_k
    # Result: uslek = 0.25

Example with small variations (condition: d_sand + d_clay + d_silt => 1.0)

    # NC data: simulation
    r.mapcalc -s "sand_r = rand(0.09,0.13)"
    r.mapcalc -s "clay_r = rand(0.45,0.49)"
    r.mapcalc -s "silt_r = rand(0.40,0.44)"
    r.mapcalc -s "organ  = rand(0.01,0.70)"

    r.mapcalc "temp_sum = sand_r + clay_r + silt_r"
    r.mapcalc "sand = sand_r / temp_sum"
    r.mapcalc "clay = clay_r / temp_sum"
    r.mapcalc "silt = silt_r / temp_sum"
    r.mapcalc "test = sand + clay + silt"
    r.info -r test
    g.remove -f rast name=sand_r,clay_r,silt_r,temp_sum,test

    r.uslek psand=sand pclay=clay psilt=silt pomat=organ output=usle_k
    r.univar usle_k
    # Result: uslek =  variable values

## SEE ALSO

r.usler, r.watershed

## AUTHORS

Yann Chemin, SIC-ISDC, Turkmenistan

## SOURCE CODE

Available at: r.uslek source code (history)

Accessed: Thursday Jun 04 03:31:04 2026

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

© 2003-2023 GRASS Development Team, GRASS GIS 7.8.8 Reference Manual