dwww Home | Manual pages | Find package

t.register(1grass)          GRASS GIS User's Manual         t.register(1grass)

NAME
       t.register   -  Assigns  timestamps  and  registers  raster, vector and
       raster3d maps in a space time dataset.

KEYWORDS
       temporal, map management, register, time

SYNOPSIS
       t.register
       t.register --help
       t.register [-i]   [input=name]    [maps=name[,name,...]]    [type=name]
       [file=name]    [start=string]    [end=string]   [unit=string]   [incre-
       ment=string]   [separator=character]   [--overwrite]  [--help]  [--ver-
       bose]  [--quiet]  [--ui]

   Flags:
       -i
           Create  an  interval  (start and end time) in case an increment and
           the start time are provided

       --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:
       input=name
           Name of the input space time dataset

       maps=name[,name,...]
           Name of the input maps

       type=name
           Type of the input map
           Options: raster, vector, raster_3d
           Default: raster

       file=name
           Input file with map names, one per line
           Additionally the start time and the end time can be  specified  per
           line

       start=string
           Valid start date and time of the first map
           Format  for  absolute  time:  "yyyy-mm-dd HH:MM:SS +HHMM", relative
           time is of type integer.

       end=string
           Valid end date and time of all map
           Format for absolute time:  "yyyy-mm-dd  HH:MM:SS  +HHMM",  relative
           time is of type integer.

       unit=string
           Time stamp unit
           Unit must be set in case of relative timestamps
           Options: years, months, days, hours, minutes, seconds

       increment=string
           Time increment, works only in conjunction with start option
           Time  increment  between  maps for creation of valid time intervals
           (format for absolute  time:  NNN  seconds,  minutes,  hours,  days,
           weeks,  months, years; format for relative time is of type integer:
           5)

       separator=character
           Field separator character of the input file
           Special characters: pipe, comma, space, tab, newline
           Default: pipe

DESCRIPTION
       The module t.register has double functionality: it either only  assigns
       timestamps  to  raster, 3D raster and vector maps in the temporal data-
       base (if input option is not provided, see below) or  additionally,  it
       also registers them within input space time datasets (stds). The exist-
       ing timestamp modules r.timestamp, r3.timestamp and v.timestamp do  not
       register the maps in the temporal database of GRASS GIS. However, time-
       stamps that have been created with these modules can be read  and  used
       by t.register. This works only for maps that are not already registered
       in the temporal database.

       If the input option is not used (i.e., no stds is provided), maps  will
       be  only  registered in the temporal database with assigned timestamps.
       If, on the other hand, the input option is used and a stds is provided,
       maps  will  be first registered in the temporal database (if not regis-
       tered before) and then, in the stds specified. If  the  user  wants  to
       register maps that are already registered in the temporal database in a
       different stds, there is no need to pass  information  regarding  start
       and  end  time, t.register will read timestamps from the temporal data-
       base (i.e., in this case only passing map names will be enough).

       The module t.register supports absolute and relative time. The absolute
       temporal  type  refers to a fixed date while the relative temporal type
       refers to data without fixed timestamps (e.g., sequential maps used  to
       calculate multi-decadal averages).

       Maps  can be registered by command line argument (i.e., a list of comma
       separated map names) or using an input file. The start time,  end  time
       and a temporal increment can be provided through command line or in the
       input file. End time and increment are mutually exclusive. The user can
       register  single maps or a list of maps at once. Maps can be registered
       in several space time datasets using the same timestamp. For  the  case
       of  vector  time series, the user can also register a single vector map
       connected  to  different  layers  representing  time  steps  using  the
       map:layer notation (See example below).

       The  increment  option  and the -i flag (to create time intervals) work
       only in conjunction with the start option.  If an input file with time-
       stamps (either start time or start time and end time) is used, then the
       increment option and the -i flag are not supported.

       Start time and end time with absolute time must be provided  using  the
       format  yyyy-mm-dd HH:MM:SS +HHMM. It is also supported to specify only
       the date yyyy-mm-dd. In  case  of  relative  time,  the  temporal  unit
       (years,  months, days, hours, minutes or seconds) must be provided.  In
       this case, the relative start time, end time and  increment  are  inte-
       gers.

NOTES
       The  timestamps of registered maps will be stored in the temporal data-
       base and in the metadata of the grass maps  in  the  spatial  database.
       This assures that timestamps can always be accessed with (r|r3|v).time-
       stamp and the temporal modules. Timestamps should only be modified with
       t.register because the (r|r3|v).timestamp modules have no access to the
       temporal database.

INPUT FILE FORMAT
       There are several options to register maps by means of a file. The  in-
       put  file  consists of a list of map names, optionally along with time-
       stamps. Each map name (and timestaps if provided) should be stored in a
       new line in this file.

       When  only map names are provided, the increment option and the -i flag
       are supported. However, when along with map names any kind of timestamp
       is  provided,  as  well,  the increment option and the -i are no longer
       supported.

       Specification of map names only (increment  option  and  -i  flag  sup-
       ported):
       terra_lst_day20020113
       terra_lst_day20020114
       terra_lst_day20020115
       terra_lst_day20020116
       terra_lst_day20020117

       Specification  of  map names and absolute start time (date) of the time
       instances (no support for increment option nor -i flag):
       terra_lst_day20020113|2002-01-13
       terra_lst_day20020114|2002-01-14
       terra_lst_day20020115|2002-01-15
       terra_lst_day20020116|2002-01-16
       terra_lst_day20020117|2002-01-17

       Specification of map names and absolute start time  (datetime)  of  the
       time instances (no support for increment option nor -i flag):
       terra_lst_day20020113|2002-01-13 10:30
       terra_lst_day20020114|2002-01-14 10:30
       terra_lst_day20020115|2002-01-15 10:30
       terra_lst_day20020116|2002-01-16 10:30
       terra_lst_day20020117|2002-01-17 10:30

       Specification  of  map  names and absolute time interval with start and
       end time (no support for increment option nor -i flag):
       prec_1|2001-01-01|2001-04-01
       prec_2|2001-04-01|2001-07-01
       prec_3|2001-07-01|2001-10-01
       prec_4|2001-10-01|2002-01-01
       prec_5|2002-01-01|2002-04-01
       prec_6|2002-04-01|2002-07-01

EXAMPLE
   North Carolina dataset
   Using a text file
       Register maps in an absolute space time dataset, creating a time inter-
       val
       # first:  prepare a text file with a list of input maps (see above)
       # second: register maps
       t.register -i type=raster input=precipitation_monthly \
           file=list_of_input_maps.txt start="2009-01-01" \
           increment="1 months"

   Using g.list to generate the input
       Register maps in an absolute space time dataset, creating a time inter-
       val
       t.register -i type=raster input=precipitation_monthly \
           maps=`g.list raster pattern="*precip*" sep=comma` start="2009-01-01" \
           increment="1 months"

   Register a vector map with layers representing time steps
       Assume a vector map of points that  represent  meteorological  stations
       and  it is connected to different layers depicting daily time steps. In
       this example, only the fifth layer of the vector  map  will  be  regis-
       tered.
       # the layer is specified behind the colon
       t.register type=vector input=meteo_stations_nc_daily \
           maps=meteo_stations_nc:5 start="2009-01-05"

   Synthetic maps
       In  this  example  we create 6 raster maps that will be registered in a
       single space time raster dataset named precip_abs using a monthly  tem-
       poral granularity. The -i flag generates time intervals of the provided
       increment. The generated timestamps will be inspected using r.timestamp
       and  t.rast.list.  We  will register an additional map with a timestamp
       that was set with r.timestamp.
       r.mapcalc expression="prec_1 = 100"
       r.mapcalc expression="prec_2 = 200"
       r.mapcalc expression="prec_3 = 300"
       r.mapcalc expression="prec_4 = 400"
       r.mapcalc expression="prec_5 = 500"
       r.mapcalc expression="prec_6 = 600"
       t.create type=strds temporaltype=absolute \
           output=precip_abs title="Example" \
           descr="Example"
       t.register -i type=raster input=precip_abs \
           maps=prec_1,prec_2,prec_3,prec_4,prec_5,prec_6 \
           start="2001-01-01" increment="1 months"
       r.timestamp prec_1
       1 Jan 2001 00:00:00 / 1 Feb 2001 00:00:00
       r.timestamp prec_2
       1 Feb 2001 00:00:00 / 1 Mar 2001 00:00:00
       t.rast.list input=precip_abs
       name|mapset|start_time|end_time
       prec_1|PERMANENT|2001-01-01 00:00:00|2001-02-01 00:00:00
       prec_2|PERMANENT|2001-02-01 00:00:00|2001-03-01 00:00:00
       prec_3|PERMANENT|2001-03-01 00:00:00|2001-04-01 00:00:00
       prec_4|PERMANENT|2001-04-01 00:00:00|2001-05-01 00:00:00
       prec_5|PERMANENT|2001-05-01 00:00:00|2001-06-01 00:00:00
       prec_6|PERMANENT|2001-06-01 00:00:00|2001-07-01 00:00:00
       r.mapcalc expression="prec_7 = 700"
       r.timestamp map=prec_7 date="1 jul 2001 / 1 aug 2001"
       t.register type=raster input=precip_abs maps=prec_7
       t.rast.list input=precip_abs
       name|mapset|start_time|end_time
       prec_1|PERMANENT|2001-01-01 00:00:00|2001-02-01 00:00:00
       prec_2|PERMANENT|2001-02-01 00:00:00|2001-03-01 00:00:00
       prec_3|PERMANENT|2001-03-01 00:00:00|2001-04-01 00:00:00
       prec_4|PERMANENT|2001-04-01 00:00:00|2001-05-01 00:00:00
       prec_5|PERMANENT|2001-05-01 00:00:00|2001-06-01 00:00:00
       prec_6|PERMANENT|2001-06-01 00:00:00|2001-07-01 00:00:00
       prec_7|PERMANENT|2001-07-01 00:00:00|2001-08-01 00:00:00

   Importing and registering ECA&D climatic data
       The European Climate Assessment & Dataset (ECA&D)  project  offers  the
       E-OBS  dataset  which is a daily gridded observational dataset for pre-
       cipitation, temperature and sea level pressure in Europe based on ECA&D
       information.   Download and decompress mean temperature data from: here
       by accepting their Terms of use.
       # import E-OBS V12 into a lat-long location (alternatively, use r.external)
       r.in.gdal -oe input=tg_0.25deg_reg_1950-1964_v12.0.nc \
         output=temperature_mean offset=0
       r.in.gdal -oe input=tg_0.25deg_reg_1965-1979_v12.0.nc \
         output=temperature_mean offset=5479 --o
       r.in.gdal -oe input=tg_0.25deg_reg_1980-1994_v12.0.nc \
         output=temperature_mean offset=10957 --o
       r.in.gdal -oe input=tg_0.25deg_reg_1995-2015_v12.0.nc \
         output=temperature_mean offset=16436 --o
       # create STRDS
       t.create type=strds output=temperature_mean_1950_2015_daily \
         temporaltype=absolute semantictype=mean \
         title="European mean temperature 1950-2015" \
         description="The European daily mean temperature from ECAD"
       # create text file with all temperature_mean rasters, one per line,
       # a) using a shell script
       for i in `seq 1 23922` ; do
           echo temperature_mean.$i >> map_list.txt
       done
       # b) using a Python script
       file = open("map_list.txt", "w")
       for i in range(23922):
           file.write("temperature_mean.%i\n" % (i + 1))
       file.close()
       # register daily maps using the file created above
       t.register -i type=raster input=temperature_mean_1950_2015_daily \
                     file=map_list.txt start="1950-01-01" increment="1 days"

SEE ALSO
        r.timestamp, t.create, t.info

       Maps registration examples in Temporal data processing Wiki

AUTHOR
       Sören Gebbert, Thünen Institute of Climate-Smart Agriculture

SOURCE CODE
       Available at: t.register source code (history)

       Accessed: unknown

       Main index | Temporal index | Topics index | Keywords index | Graphical
       index | Full index

       © 2003-2022 GRASS Development Team, GRASS GIS 7.8.7 Reference Manual

GRASS 7.8.7                                                 t.register(1grass)

Generated by dwww version 1.14 on Sat Jun 13 04:39:54 CEST 2026.