Skip to content

i.eb.hsebal95

Performs sensible heat flux iteration (SEBAL 95).

i.eb.hsebal95 [-tacz] temperature=name elevation=name windvelocity2m=name ndvi=name albedo=name netradiation=name soilheatflux=name [iteration=integer] [row_wet=integer] [col_wet=integer] [row_dry=integer] [col_dry=integer] output=name [--overwrite] [--verbose] [--quiet] [--qq] [--ui]

Example:

i.eb.hsebal95 temperature=name elevation=name windvelocity2m=name ndvi=name albedo=name netradiation=name soilheatflux=name output=name

grass.script.run_command("i.eb.hsebal95", temperature, elevation, windvelocity2m, ndvi, albedo, netradiation, soilheatflux, iteration=None, row_wet=None, col_wet=None, row_dry=None, col_dry=None, output, flags=None, overwrite=False, verbose=False, quiet=False, superquiet=False)

Example:

gs.run_command("i.eb.hsebal95", temperature="name", elevation="name", windvelocity2m="name", ndvi="name", albedo="name", netradiation="name", soilheatflux="name", output="name")

Parameters

temperature=name [required]
    Name of Surface Skin Temperature input map [K]
elevation=name [required]
    Name of dem input map [m a.s.l.]
windvelocity2m=name [required]
    Name of Wind speed at 2m height input map [m/s]
ndvi=name [required]
    Name of NDVI input map [-]
albedo=name [required]
    Name of Albedo input map [-]
netradiation=name [required]
    Name of instantaneous Net Solar Radiation input map [W/m2]
soilheatflux=name [required]
    Name of instantaneous Soil Heat Flux input map [W/m2]
iteration=integer
    Value of the number of SEBAL95 loops (default is 10)
row_wet=integer
    Row value of the wet pixel
col_wet=integer
    Column value of the wet pixel
row_dry=integer
    Row value of the dry pixel
col_dry=integer
    Column value of the dry pixel
output=name [required]
    Name of output sensible heat flux layer [W/m2]
-t
    Temperature histogram check (careful!)
-a
    Automatic wet/dry pixel (careful!)
-c
    Coordinates of manual dry/wet pixels are in image projection and not row/col
-z
    set negative evapo to zero
--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

temperature : str, required
    Name of Surface Skin Temperature input map [K]
    Used as: input, raster, name
elevation : str, required
    Name of dem input map [m a.s.l.]
    Used as: input, raster, name
windvelocity2m : str, required
    Name of Wind speed at 2m height input map [m/s]
    Used as: input, raster, name
ndvi : str, required
    Name of NDVI input map [-]
    Used as: input, raster, name
albedo : str, required
    Name of Albedo input map [-]
    Used as: input, raster, name
netradiation : str, required
    Name of instantaneous Net Solar Radiation input map [W/m2]
    Used as: input, raster, name
soilheatflux : str, required
    Name of instantaneous Soil Heat Flux input map [W/m2]
    Used as: input, raster, name
iteration : int, optional
    Value of the number of SEBAL95 loops (default is 10)
    Used as: input, Optional
row_wet : int, optional
    Row value of the wet pixel
    Used as: input, Optional
col_wet : int, optional
    Column value of the wet pixel
    Used as: input, Optional
row_dry : int, optional
    Row value of the dry pixel
    Used as: input, Optional
col_dry : int, optional
    Column value of the dry pixel
    Used as: input, Optional
output : str, required
    Name of output sensible heat flux layer [W/m2]
    Used as: output, raster, name
flags : str, optional
    Allowed values: t, a, c, z
    t
        Temperature histogram check (careful!)
    a
        Automatic wet/dry pixel (careful!)
    c
        Coordinates of manual dry/wet pixels are in image projection and not row/col
    z
        set negative evapo to zero
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

i.eb.h_sebal95 computes the sensible heat flux [W/m2] after Bastiaanssen, 1995 in [1].

i.eb.h_sebal95 given the vegetation height (hc), humidity (RU), wind speed at two meters height (WS), temperature (T), digital terrain model (DEM), and net radiation (NSR) raster input maps, calculates the sensible heat flux map (h0).

Optionally the user can activate a flag (-z) that allows him setting to zero all of the negative evapotranspiration cells; in fact these negative values motivated by the condensation of the air water vapour content, are sometime undesired because they can produce computational problems. The usage of the flag -n detect that the module is run in night hours and the appropriate soil heat flux is calculated.

The algorithm implements well known approaches: the hourly Penman-Monteith method as presented in Allen et al. (1998) for land surfaces and the Penman method (Penman, 1948) for water surfaces.

Land and water surfaces are idenfyied by Vh:
- where Vh less than 0 vegetation is present and evapotranspiration is calculated;
- where Vh=0 bare ground is present and evapotranspiration is calculated;
- where Vh more than 0 water surface is present and evaporation is calculated;

For more details on the algorithms see [1].

Parameters

  • DEM=name
    Input elevation raster [m a.s.l.]. Required.
  • T=name
    Input temperature raster [°C]. Required.
  • RH =name
    Input relative humidity raster [%]. Required.
  • WS =name
    Input wind speed at two meters raster [m/s]. Required.
  • NSR =name
    Input net solar radiation raster [MJ/(m2*h)]. Required.
  • Vh =name
    Input vegetation heigth raster [m]. Required.
  • ETP =name
    Output evapotranspiration raster [mm/h]. Required.

NOTES

Net solar radiation map in MJ/(m2*h) can be computed from the combination of the r.sun, run in mode 1, and the r.mapcalc commands.**

The sum of the three radiation components outputted by r.sun (beam, diffuse, and reflected) multiplied by the Wh to Mj conversion factor (0.0036) and optionally by a clear sky factor [0-1] allows the generation of a map to be used as an NSR input for the i.evapo.pm command.
example:
r.sun elev_in=dem asp_in=aspect slope_in=slope lin=2 albedo=alb_Mar \ incidout=out beam_rad=beam diff_rad=diffuse refl_rad=reflected day=73 time=13:00 dist=100;
r.mapcalc 'NSR=0.0036*(beam+diffuse+reflected)';

SEE ALSO

i.eb.h_iter, i.eb.h0, i.evapo.pm

REFERENCES

[1] Bastiaanssen, W.G.M., 1995. Estimation of Land surface paramters by remote sensing under clear-sky conditions. PhD thesis, Wageningen University, Wageningen, The Netherlands.

[2] Allen, R.G., L.S. Pereira, D. Raes, and M. Smith. 1998. Crop Evapotranspiration: Guidelines for computing crop water requirements. Irrigation and Drainage Paper 56, Food and Agriculture Organization of the United Nations, Rome, pp. 300

[3] Penman, H. L. 1948. Natural evaporation from open water, bare soil and grass. Proc. Roy. Soc. London, A193, pp. 120-146.

AUTHOR

Yann Chemin
International Rice Research Institute, Los Banos, The Philippines.
International Water management Institute, Colombo, Sri Lanka.

Contact: Yann Chemin

SOURCE CODE

Available at: i.eb.hsebal95 source code (history)
Latest change: Friday Feb 21 12:27:42 2025 in commit 8fce680