t.rast.gapfill
Replaces gaps in a space time raster dataset with interpolated raster maps.
t.rast.gapfill [-t] input=name [where=sql_query] basename=string [suffix=string] [nprocs=integer] [--verbose] [--quiet] [--qq] [--ui]
Example:
t.rast.gapfill input=name basename=string
grass.script.run_command("t.rast.gapfill", input, where=None, basename, suffix="gran", nprocs=1, flags=None, verbose=False, quiet=False, superquiet=False)
Example:
gs.run_command("t.rast.gapfill", input="name", basename="string")
Parameters
input=name [required]
Name of the input space time raster dataset
where=sql_query
WHERE conditions of SQL statement without 'where' keyword used in the temporal GIS framework
Example: start_time > '2001-01-01 12:30:00'
basename=string [required]
Basename of the new generated output maps
A numerical suffix separated by an underscore will be attached to create a unique identifier
suffix=string
Suffix to add at basename: set 'gran' for granularity, 'time' for the full time format, 'num' for numerical suffix with a specific number of digits (default %05)
Default: gran
nprocs=integer
Number of interpolation processes to run in parallel
Default: 1
-t
Assign the space time raster dataset start and end time to the output map
--help
Print usage summary
--verbose
Verbose module output
--quiet
Quiet module output
--qq
Very quiet module output
--ui
Force launching GUI dialog
input : str, required
Name of the input space time raster dataset
Used as: input, strds, name
where : str, optional
WHERE conditions of SQL statement without 'where' keyword used in the temporal GIS framework
Example: start_time > '2001-01-01 12:30:00'
Used as: sql_query
basename : str, required
Basename of the new generated output maps
A numerical suffix separated by an underscore will be attached to create a unique identifier
suffix : str, optional
Suffix to add at basename: set 'gran' for granularity, 'time' for the full time format, 'num' for numerical suffix with a specific number of digits (default %05)
Default: gran
nprocs : int, optional
Number of interpolation processes to run in parallel
Default: 1
flags : str, optional
Allowed values: t
t
Assign the space time raster dataset start and end time to the output map
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
t.rast.gapfill fills temporal gaps in space time raster datasets using linear interpolation. Temporal all gaps will be detected in the input space time raster dataset automatically. The predecessor and successor maps of the gaps will be identified and used to linear interpolate the raster map between them.
NOTES
This module uses r.series.interp to perform the interpolation for each gap independently. Hence several interpolation processes can be run in parallel.
Each gap is re-sampled by the space time raster dataset granularity. Therefore several time stamped raster map layers will be interpolated if the gap is larger than the STRDS granularity.
EXAMPLES
In this example we will create 3 raster maps and register them in the temporal database an then in the newly created space time raster dataset. There are gaps of one and two day size between the raster maps. The values of the maps are chosen so that the interpolated values can be estimated. We expect one map with a value of 2 for the first gap and two maps (values 3.666 and 4.333) for the second gap after interpolation.
r.mapcalc expression="map1 = 1"
r.mapcalc expression="map2 = 3"
r.mapcalc expression="map3 = 5"
t.register type=raster maps=map1 start=2012-08-20 end=2012-08-21
t.register type=raster maps=map2 start=2012-08-22 end=2012-08-23
t.register type=raster maps=map3 start=2012-08-25 end=2012-08-26
t.create type=strds temporaltype=absolute \
output=precipitation_daily \
title="Daily precipitation" \
description="Test dataset with daily precipitation"
t.register type=raster input=precipitation_daily maps=map1,map2,map3
# the output shows three missing maps
t.rast.list input=precipitation_daily columns=name,start_time,min,max
name|start_time|min|max
map1|2012-08-20 00:00:00|1.0|1.0
map2|2012-08-22 00:00:00|3.0|3.0
map3|2012-08-25 00:00:00|5.0|5.0
t.rast.list input=precipitation_daily method=deltagaps
id|name|mapset|start_time|end_time|interval_length|distance_from_begin
map1@PERMANENT|map1|PERMANENT|2012-08-20 00:00:00|2012-08-21 00:00:00|1.0|0.0
None|None|None|2012-08-21 00:00:00|2012-08-22 00:00:00|1.0|1.0
map2@PERMANENT|map2|PERMANENT|2012-08-22 00:00:00|2012-08-23 00:00:00|1.0|2.0
None|None|None|2012-08-23 00:00:00|2012-08-25 00:00:00|2.0|3.0
map3@PERMANENT|map3|PERMANENT|2012-08-25 00:00:00|2012-08-26 00:00:00|1.0|5.0
t.rast.gapfill input=precipitation_daily basename=gap
t.rast.list input=precipitation_daily columns=name,start_time,min,max
name|start_time|min|max
map1|2012-08-20 00:00:00|1.0|1.0
gap_6_1|2012-08-21 00:00:00|2.0|2.0
map2|2012-08-22 00:00:00|3.0|3.0
gap_7_1|2012-08-23 00:00:00|3.666667|3.666667
gap_7_2|2012-08-24 00:00:00|4.333333|4.333333
map3|2012-08-25 00:00:00|5.0|5.0
SEE ALSO
r.series.interp, t.create, t.info
AUTHOR
Sören Gebbert, Thünen Institute of Climate-Smart Agriculture
SOURCE CODE
Available at: t.rast.gapfill source code
(history)
Latest change: Wednesday Apr 02 17:48:37 2025 in commit 571253a