[GRASS-user] compare a DCELL and FCELL question

ming han dustming at gmail.com
Sun Jan 24 06:51:08 PST 2021


Hi Markus and Micha

     I am just trying to find grids have the same values in these two
rasters, I will try the threshold approach.

Thanks
Ming

Markus Neteler <neteler at osgeo.org> 于2021年1月24日周日 上午6:58写道:

> Hi Ming,
>
> On Sun, Jan 24, 2021 at 10:49 AM ming han <dustming at gmail.com> wrote:
> >
> > Hi Micha
> >
> >      Many thanks for your reply.
> >      Here is the command I am using:
> >
> >      if(float(cat1_acc_riv) == float(cat1_minacc), str_r, null())
> >
> >       The str_r is a CELL raster. the result is different when I change
> it to:
> >        if(int(cat1_acc_riv) == int(cat1_minacc), str_r, null())
>
> Note that numerical "equality" is better tested with a threshold test
> against the map pixel difference.
> As the threshold, we use GRASS_EPSILON which is defined as 1.0e-15.
>
> Hence the test needs to be implemented in a different way, i.e. by
> using an epsilon.
> Essentially something like this:
>
> if(fabs(map_A - map_B) <= 1.0e-15, ... )
>
> In your case (untested):
> r.mapcalc diffepsilon = if( abs( map_A - map_B) <= 1.0e-15, str_r , null())
>
> See related discussions here: [1], [2] and elsewhere.
>
> [1] Comment by Glynn: https://trac.osgeo.org/grass/ticket/2854#comment:9
> [2] Comment by Glynn:
> https://lists.osgeo.org/pipermail/grass-user/2015-October/073200.html
>
> Best,
> Markus
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-user/attachments/20210124/de37ba81/attachment.html>


More information about the grass-user mailing list