[GRASS-dev] t.rast.mapcalc: The temporal map type of the sample dataset must be interval

Hi,

I have two spatial-temporal dataset which are equal (time POV):

$ t.rast.list tp5
clip_LT51910261987057XXX02_B5|pisek_tabor|1987-02-26 09:12:36|None
clip_LT51910262004152KIS00_B5|pisek_tabor|2004-05-31 09:32:23|None
clip_LT51910262004200KIS00_B5|pisek_tabor|2004-07-18 09:33:46|None
...

$ t.rast.list tp2
...
clip_LT51910261987057XXX02_B2|pisek_tabor|1987-02-26 09:12:36|None
clip_LT51910262004152KIS00_B2|pisek_tabor|2004-05-31 09:32:23|None
clip_LT51910262004200KIS00_B2|pisek_tabor|2004-07-18 09:33:46|None

$ t.rast.mapcalc in=tp2,tp5 exp="tp5 < 40 || tp2 < 40" out=water
basename=water --o
ERROR: The temporal map type of the sample dataset must be interval
No samples found for map calculation

Why the dataset must be interval? I mean start time and end time
(which is None) are equal. Thanks for explanation, Martin

--
Martin Landa
http://geo.fsv.cvut.cz/gwiki/Landa
http://gismentors.cz/mentors/landa

Hi Martin,

(very wild guess)

Maybe the method=equal, which is the default method for t.rast.mapcalc, is not defined for time instance data (?).

Have you tried changing it? For example, setting method=start? Perhaps in that way, only start time is evaluated to perform the operation between time series.

Also, t.select should show the topological relations between maps of the time series within an expression. So that might be a hint if it is in fact a temporal topology issue.

Vero

···

El 30 nov. 2016 9:30 p. m., “Martin Landa” <landa.martin@gmail.com> escribió:

Hi,

I have two spatial-temporal dataset which are equal (time POV):

$ t.rast.list tp5
clip_LT51910261987057XXX02_B5|pisek_tabor|1987-02-26 09:12:36|None
clip_LT51910262004152KIS00_B5|pisek_tabor|2004-05-31 09:32:23|None
clip_LT51910262004200KIS00_B5|pisek_tabor|2004-07-18 09:33:46|None

$ t.rast.list tp2

clip_LT51910261987057XXX02_B2|pisek_tabor|1987-02-26 09:12:36|None
clip_LT51910262004152KIS00_B2|pisek_tabor|2004-05-31 09:32:23|None
clip_LT51910262004200KIS00_B2|pisek_tabor|2004-07-18 09:33:46|None

$ t.rast.mapcalc in=tp2,tp5 exp=“tp5 < 40 || tp2 < 40” out=water
basename=water --o
ERROR: The temporal map type of the sample dataset must be interval
No samples found for map calculation

Why the dataset must be interval? I mean start time and end time
(which is None) are equal. Thanks for explanation, Martin


Martin Landa
http://geo.fsv.cvut.cz/gwiki/Landa
http://gismentors.cz/mentors/landa


grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

Hi,

2016-11-30 23:05 GMT+01:00 Veronica Andreo <veroandreo@gmail.com>:

Maybe the method=equal, which is the default method for t.rast.mapcalc, is
not defined for time instance data (?).

Have you tried changing it? For example, setting method=start? Perhaps in
that way, only start time is evaluated to perform the operation between time
series.

thanks for tip, anyway changing method to 'start' doesn't seem to have
any effect, I am getting the same error. Ma

--
Martin Landa
http://geo.fsv.cvut.cz/gwiki/Landa
http://gismentors.cz/mentors/landa

Hi Martin,

Sorry to resume such old thread, but I have the same issue.

On Wed, Nov 30, 2016 at 11:08 PM, Martin Landa <landa.martin@gmail.com> wrote:

2016-11-30 23:05 GMT+01:00 Veronica Andreo <veroandreo@gmail.com>:

Maybe the method=equal, which is the default method for t.rast.mapcalc, is
not defined for time instance data (?).

Have you tried changing it? For example, setting method=start? Perhaps in
that way, only start time is evaluated to perform the operation between time
series.

thanks for tip, anyway changing method to ‘start’ doesn’t seem to have
any effect, I am getting the same error. Ma

Did you find a way to go on?

I have two temporal rasters:

$ t.rast.list Rbeam_2000m@Rbeam_2000m | head
name|mapset|start_time|end_time
Rbeam_2000m_20120101_00|Rbeam_2000m|2012-01-01 00:00:00|None
Rbeam_2000m_20120101_01|Rbeam_2000m|2012-01-01 01:00:00|None
Rbeam_2000m_20120101_02|Rbeam_2000m|2012-01-01 02:00:00|None

and

$ t.rast.list Rbeam_250m@Rbeam_250m | head
name|mapset|start_time|end_time
Rbeam_250m_20120101_00|Rbeam_250m|2012-01-01 00:00:00|None
Rbeam_250m_20120101_01|Rbeam_250m|2012-01-01 01:00:00|None
Rbeam_250m_20120101_02|Rbeam_250m|2012-01-01 02:00:00|None

But when I try to execute the t.rast.mapcalc I got:

$ t.rast.mapcalc input=Rbeam_2000m@Rbeam_2000m,Rbeam_250m@Rbeam_250m expression=‘(Rbeam_250m - Rbeam_2000m)/Rbeam_250m’ output=Rbeam_norm_diff basename=Rbeam_norm_diff nprocs=4 method=start --o
Starting temporal sampling…
ERROR: The temporal map type of the sample dataset must be interval
No samples found for map calculation

I have to delete and register the maps with t.register -i? Now I’m going to try this!

Any hints?

Best regards

Pietro