[GRASS-dev] r3.mapcalc neighborhood modifier error

Hi,

I’m trying to use the neighborhood modifier [1] in r3.mapcalc in GRASS7.

My command is something like this:

r3.mapcac “newmap = (mapname[0, 0, 0] + mapname[1, 1, 0]) / 2”

But I’m getting the following errors:

ERROR: Rast3d_cache_hash_load_name: name already in hashtable
(cachehash.c: 98)

ERROR: Rast3d_get_double_region: error in Rast3d_get_tile_ptr.Region coordinates x 528 y 1 z 0 tile index 24 offset 22

(getvalue.c: 185)

Not sure which when, it seems to be random, so far.

Since this is not much documented in manual, I’m wondering if I’m using it correctly, if yes, I’ll turn this into a ticket.

Thanks,
Vaclav

[1] http://grass.osgeo.org/grass70/manuals/r3.mapcalc.html
[2] http://grass.osgeo.org/programming7/getvalue_8c_source.html#l00165
[3] http://grass.osgeo.org/programming7/cachehash_8c_source.html#l00092

Hi Vaclav,
thanks for the error report. Your r3.mapcalc expression is correct.
I must have introduced this error recently. I hope i have time at the
FOSS4G or in October to have a look at this error.

Can you please create a ticket and an example to reproduce this error?

Best regards
Soeren

2013/9/10 Vaclav Petras <wenzeslaus@gmail.com>:

Hi,

I'm trying to use the neighborhood modifier [1] in r3.mapcalc in GRASS7.

My command is something like this:

r3.mapcac "newmap = (mapname[0, 0, 0] + mapname[1, 1, 0]) / 2"

But I'm getting the following errors:

ERROR: Rast3d_cache_hash_load_name: name already in hashtable
(cachehash.c: 98)

ERROR: Rast3d_get_double_region: error in Rast3d_get_tile_ptr.Region
coordinates x 528 y 1 z 0 tile index 24 offset 22
(getvalue.c: 185)

Not sure which when, it seems to be random, so far.

Since this is not much documented in manual, I'm wondering if I'm using it
correctly, if yes, I'll turn this into a ticket.

Thanks,
Vaclav

[1] http://grass.osgeo.org/grass70/manuals/r3.mapcalc.html
[2] http://grass.osgeo.org/programming7/getvalue_8c_source.html#l00165
[3] http://grass.osgeo.org/programming7/cachehash_8c_source.html#l00092

Hi Sören,

thanks for looking at it. The ticket is:

https://trac.osgeo.org/grass/ticket/2074

It’s may be obvious but in GRASS 6 it’s working. I’m not sure about the result. Since the random map maybe not the best map to visualize in nviz. By the way,

r3.mapcalc “test_map = rand(0, 500)”

is much faster in GRASS 6.

Vaclav

···

On Tue, Sep 10, 2013 at 3:12 AM, Sören Gebbert <soerengebbert@googlemail.com> wrote:

Hi Vaclav,
thanks for the error report. Your r3.mapcalc expression is correct.
I must have introduced this error recently. I hope i have time at the
FOSS4G or in October to have a look at this error.

Can you please create a ticket and an example to reproduce this error?

Best regards
Soeren

2013/9/10 Vaclav Petras <wenzeslaus@gmail.com>:

Hi,

I’m trying to use the neighborhood modifier [1] in r3.mapcalc in GRASS7.

My command is something like this:

r3.mapcac “newmap = (mapname[0, 0, 0] + mapname[1, 1, 0]) / 2”

But I’m getting the following errors:

ERROR: Rast3d_cache_hash_load_name: name already in hashtable
(cachehash.c: 98)

ERROR: Rast3d_get_double_region: error in Rast3d_get_tile_ptr.Region
coordinates x 528 y 1 z 0 tile index 24 offset 22
(getvalue.c: 185)

Not sure which when, it seems to be random, so far.

Since this is not much documented in manual, I’m wondering if I’m using it
correctly, if yes, I’ll turn this into a ticket.

Thanks,
Vaclav

[1] http://grass.osgeo.org/grass70/manuals/r3.mapcalc.html
[2] http://grass.osgeo.org/programming7/getvalue_8c_source.html#l00165
[3] http://grass.osgeo.org/programming7/cachehash_8c_source.html#l00092