[GRASS-dev] CELL/FCELL/DCELL [was: Re: r.mapcal rand() strangeness]

Maciej Sieczka tutey at o2.pl
Thu Feb 28 14:42:25 EST 2008


Helena Mitasova pisze:
> I very much agree with Glynn on this one, I have already written to Maciek
> something along this line.
> 
> If you are going to explain in GRASS man pages how computers handle
> numbers 

<snip>

Ok. But we need the minimum - what are the GRASS CELL, FCELL, DCELL and 
GRID3D.

> BTW the info about CELL, FCELL and DCELL is in the man pages.

Most complete info is in the raster intro AFAIK:

---
Raster data can be stored in GRASS as a 2D integer grid, 2D floating
point grid (single or double precision), or as a 3D floating point
grid (single or double precision). The internal raster format is
architecture independent and portable between 32bit and 64bit
machines.  Internally, the integer format is called CELL, single
precision floating point is called FCELL, double precision floating
point is DCELL, and 3D raster is called GRID3D. The choice of the
integer or floating point data depends on the application.
---

Which doesn't explain what integer type is CELL. Now that Glynn 
explained it in his other email:

 > Oh, it's reasonable enough to document that (if it isn't already):
 >
 > 	CELL	32-bit signed integer
 > 	FCELL	IEEE single-precision floating-point
 > 	DCELL	IEEE double-precision floating-point

I was going to add this information, but I'm not sure if I understand 
correctly that GRID3D is always floating point. Raster intro seems to 
suggest so, but r3.mapcalc suggests the opposite, eg.: "Note: If you 
calculate with integer numbers, the resulting map will be integer". 
Please tell me.

> P.S. And regarding the requirement that more 16 digits are supported
> that got all of this started

That's not correct. It started at my not knowing what are the limits of 
GRASS CELL/FCELL/DCELL.

> - where do you need it?

I did not request it.

Maciek


More information about the grass-dev mailing list