Opened 6 years ago

Last modified 5 years ago

#3682 closed defect

t.rast.algebra: Error wrong type of input — at Version 3

Reported by: veroandreo Owned by: grass-dev@…
Priority: major Milestone: 7.8.0
Component: Temporal Version: svn-trunk
Keywords: t.rast.algebra, python3 Cc:
CPU: Unspecified Platform: Unspecified

Description (last modified by neteler)

When running any expression with G7:t.rast.algebra in trunk, I get ERROR: Wrong type of input. Here's how to reproduce:

# NC location:
g.region raster=elevation -p
for map in `seq 1 10` ; do r.mapcalc "prueba_${map} = ${map}" ; done
t.create output=A type=strds temporaltype=absolute title="test" description="test"
t.register input=A maps=`g.list rast pat=prueba* sep=, map=.` start="2000-01-01" increment="1 months" -i

t.rast.algebra expression="test = (A[1] - A[0]) / 2" basename=test suffix=gran
t.rast.algebra expression="test = A * 2" basename=test suffix=gran

Both algebra commands yield the following error:

ERROR: Wrong type of input A
Traceback (most recent call last):
  File "/home/veroandreo/software/grass7_trunk/dist.x86_64-pc-linux-gnu/scripts/t.rast.algebra", line 132, in <module>
    sys.exit(main())
  File "/home/veroandreo/software/grass7_trunk/dist.x86_64-pc-linux-gnu/scripts/t.rast.algebra", line 124, in main
    pc = p.parse(expression, basename, grass.script.overwrite())
  File "/home/veroandreo/software/grass7_trunk/dist.x86_64-pc-linux-gnu/etc/python/grass/temporal/temporal_raster_algebra.py", line 112, in parse
    self.parser.parse(expression)
  File "/usr/lib/python2.7/site-packages/ply/yacc.py", line 331, in parse
    return self.parseopt_notrack(input, lexer, debug, tracking, tokenfunc)
  File "/usr/lib/python2.7/site-packages/ply/yacc.py", line 1118, in parseopt_notrack
    p.callable(pslice)
  File "/home/veroandreo/software/grass7_trunk/dist.x86_64-pc-linux-gnu/etc/python/grass/temporal/temporal_raster_algebra.py", line 137, in p_ts_neighbour_operation
    maplist = self.check_stds(t[1])
  File "/home/veroandreo/software/grass7_trunk/dist.x86_64-pc-linux-gnu/etc/python/grass/temporal/temporal_algebra.py", line 1226, in check_stds
    self.msgr.fatal(_("Wrong type of input " + str(input)))
  File "/home/veroandreo/software/grass7_trunk/dist.x86_64-pc-linux-gnu/etc/python/grass/pygrass/messages/__init__.py", line 269, in fatal
    raise FatalError(message)
grass.exceptions.FatalError: Wrong type of input A

Is this related to the python3 encoding issues? It works fine in 76 relbranch.

Change History (3)

comment:1 by neteler, 6 years ago

Keywords: python3 added

comment:2 by veroandreo, 6 years ago

Priority: normalmajor

Increasing to major since the error makes it impossible to use G7:t.rast.algebra in trunk

comment:3 by neteler, 5 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.