Skip to content

r.uslek

Computes USLE Soil Erodibility Factor (K).

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

Example:

r.uslek psand=name pclay=name psilt=name pomat=name output=name

grass.script.run_command("r.uslek", psand, pclay, psilt, pomat, output, overwrite=False, verbose=False, quiet=False, superquiet=False)

Example:

gs.run_command("r.uslek", psand="name", pclay="name", psilt="name", pomat="name", output="name")

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]
--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

psand : str, required
    Name of soil sand fraction raster map [0.0-1.0]
    Used as: input, raster, name
pclay : str, required
    Name of soil clay fraction raster map [0.0-1.0]
    Used as: input, raster, name
psilt : str, required
    Name of soil silt fraction raster map [0.0-1.0]
    Used as: input, raster, name
pomat : str, required
    Name of soil organic matter raster map [0.0-1.0]
    Used as: input, raster, name
output : str, required
    Name for output USLE K factor raster map [t.ha.hr/ha.MJ.mm]
    Used as: output, raster, name
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

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

AUTHOR

Yann Chemin, SIC-ISDC, Turkmenistan

SOURCE CODE

Available at: r.uslek source code (history)
Latest change: Friday Mar 07 07:39:48 2025 in commit e1e37d8