The temporal enabled GRASS introduces three new datatypes that are designed to handle time series data:

- Space time raster datasets (strds) are designed to manage raster map time series. Modules that process strds have the naming prefix t.rast.
- Space time 3D raster datasets (str3ds) are designed to manage 3D raster map time series. Modules that process str3ds have the naming prefix t.rast3d.
- Space time vector datasets (stvds) are designed to manage vector map time series. Modules that process stvds have the naming prefix t.vect.

These new data types can be managed, analyzed and processed with temporal modules that are based on the GRASS GIS temporal framework.

### Temporal data management in general

Space time datasets are stored in a temporal database. SQLite3 or PostgreSQL are supported as SQL database back end. Temporal databases stored in other mapsets can be used as long as they are in the user's current mapset search path (managed with g.mapsets).

Connection settings are performed with t.connect. As default a sqlite3 database will be created in the current mapset that stores all space time datasets and registered time series maps.

New space time datasets are created in the temporal database with t.create. The name of the new dataset, the type (strds, str3ds, stvds), the title and the description must be provided for creation. Optional the temporal type (absolute, relative) and semantic information can be provided.

The module t.remove will remove the space time datasets from the temporal database. Use t.support to modify the metadata of space time datasets or to update the metadata that is derived from registered maps. This module also checks for removed and modified maps and updates the space time datasets accordingly. Rename a space time dataset with t.rename.

The module t.register is designed to register raster, 3D raster and vector maps in the temporal database and optionally in a space time dataset. It supports different input options. Maps to register can be provided as a comma separated string at the command line, or in an input file. The module supports the definition of time stamps (time instances or intervals) for each map in the input file. With t.unregister maps can be unregistered from space time datasets and the temporal database.

To print information about space time datasets or registered maps, the module t.info can be used. t.list will list all space time datasets and registered maps in the temporal database.

To compute and check the temporal topology of a space time datasets the module t.topology was designed. The module t.sample samples input space time dataset(s) with a sample space time dataset and print the result to standard output. Several different sample methods are supported that can be combined.

List of general management modules:

- t.connect
- t.create
- t.rename
- t.remove
- t.register
- t.unregister
- t.info
- t.list
- t.sample
- t.support
- t.topology

### Modules to visualize space time datasets and temporal data

- g.gui.animation
- g.gui.timeline
- g.gui.mapswipe

### Modules to process space time raster datasets

The focus of the temporal GIS framework is the processing and analysis of raster time series. Hence the majority of the temporal modules are designed to process space time raster datasets. However, there are several modules to process space time 3D raster datasets and space time vector datasets.

#### Querying and map calculation

Registered maps of a space time raster datasets can be listed using t.rast.list. This module supports several methods how the maps should be listed using SQL queries do determine how they are selected and sorted. Subsets of space time raster datasets can be extracted with t.rast.extract that allows additionally to perform mapcalc operations on the selected raster maps.

- t.rast.extract
- t.rast.gapfill
- t.rast.mapcalc
- t.rast.colors
- t.rast.neighbors

Additionally, there is v.what.strds.

#### Aggregation and accumulation analysis

The temporal framework support the aggregation of space time raster datasets. It provides three modules to perform aggregation using different approaches. To aggregate a space time raster map using a temporal granularity like 4 months, 7 days and so on use t.rast.aggregate. The module t.rast.aggregate.ds allows the aggregation of raster map series using the intervals of the maps (raster, 3D raster and vector) of a 2. space time dataset. A simple interface to r.series is the module t.rast.series that processes the whole input space time raster dataset or a subset of it.

- t.rast.aggregate
- t.rast.aggregate.ds
- t.rast.series
- t.rast.accumulate
- t.rast.accdetect

#### Export/import conversion

Space time raster datasets can be exported with t.rast.export as compressed tar archive. Such archives can be imported using t.rast.import,

The module t.rast.to.rast3 converts space time raster datasets into space time voxel cubes. All 3D raster modules can be used to process such voxel cubes. This conversion allows the export of space time raster datasets as netcdf files that include time as one dimension.

- t.rast.export
- t.rast.import
- t.rast.out.vtk
- t.rast.to.rast3
- r3.out.netcdf

#### Statistics and gap filling

- t.rast.gapfill
- t.rast.univar

### Modules to manage, process and analyze STR3DS and STVDS

Several space time vector dataset modules were developed, to allow the handling of vector time series data.

- t.vect.extract
- t.vect.import
- t.vect.export
- t.vect.observe.strds
- t.vect.univar
- t.vect.what.strds
- t.vect.db.select

The space time 3D raster dataset modules are doing exactly the same as their raster pendants but with 3D raster map layers:

- t.rast3d.list
- t.rast3d.extract
- t.rast3d.mapcalc
- t.rast3d.univar

#### See also

- Gebbert, S., Pebesma, E., 2014. TGRASS: A temporal GIS for field based environmental modeling. Environmental Modelling & Software 53, 1-12. (DOI)
- Temporal data processing (Wiki)
- Vaclav Petras, Anna Petrasova, Helena Mitasova, Markus Neteler, FOSS4G 2014 workshop:
  Spatio-temporal data handling and visualization in GRASS GIS
- GEOSTAT 2012 TGRASS Course