[GRASSLIST:5915] strange d.histogram mess-up and a question

I have a strange problem and I was wondering if someone might have an
insight...

I have a source-compiled installation of grass 5.0pre3 that has been in use
for almost a year on a dual intel 300 MHz Linux (slackware 8.0 kernel 2.4.5)
box with 500 MB of RAM. Two days ago I copied a set of data directories for
Grass to a different drive, in their entirety, to deal with a space issue (I
have done this many times in the last 5 months without problems). I shut off
the computer until the next day. When I rebooted and started Grass the
d.histogram module no longer worked. I use this a lot and I really am
perplexed.

Symptoms: Invoke d.histogram with a selected monitor window set to the
approriate region and STDOUT echoes
"r.stats: nn%" where nn is the incremented percentage complete. When r.stats
reaches 100% the next line reads "segmentation fault" and nothing is
displayed in the monitor window.

I have tried everything I can think of (change mapsets and locations region
settings, nsteps, re-importing raster files, etc) and none of the maps
accessed behave any differently, even if they worked fine under d.histogram
the day before. I deleted all the grass files in /usr/local/grass5 and
/usr/local/bin and compiled the recent stable version of Grass (5.0.1)
without problems and installed it (I couldn't uninstall as I didn't compile
in the destination directory and did not save the install files) The problem
remains. No other modules seem to be affected.

This is a very Windows 32 kind of problem (e.g. corrupted system or
executable files perhaps caused by an abrupt shutdown, etc) and not what I
generally expect from LINUX.

#################################################
##################################################

Unrelated question: What rules are applied to set the defaultcolor palette
to a raster image? I would like to know if the yellow->blue->red palette set
by default uses percentage of full scale, standard deviations or some other
approach to setting the color scale.

Andrew wrote:

Symptoms: Invoke d.histogram with a selected monitor window set to the
approriate region and STDOUT echoes
"r.stats: nn%" where nn is the incremented percentage complete. When r.stats
reaches 100% the next line reads "segmentation fault" and nothing is
displayed in the monitor window.

I suspect that tracking this down would require either the use of a
debugger or a lot of trial-and-error.

Unrelated question: What rules are applied to set the defaultcolor palette
to a raster image? I would like to know if the yellow->blue->red palette set
by default uses percentage of full scale, standard deviations or some other
approach to setting the color scale.

The assignment is linear (percentage of full scale). IOW:

  k = (x - min) / (max - min)

with k = 0 -> yellow and k = 1 -> red.

--
Glynn Clements <glynn.clements@virgin.net>

On Sun, Mar 30, 2003 at 09:26:12AM -0500, Andrew wrote:

I have a strange problem and I was wondering if someone might have an
insight...

Symptoms: Invoke d.histogram with a selected monitor window set to the
approriate region and STDOUT echoes
"r.stats: nn%" where nn is the incremented percentage complete. When r.stats
reaches 100% the next line reads "segmentation fault" and nothing is
displayed in the monitor window.

Try attached get_stats.c file

  cd src/display/d.histogram/cmd
  mv get_stats.c get_stats.c.bak
  <save> get_stats.c
  gmake5 -i

I found a couple potential trouble spots, but I have no idea if they are
related to your problem.

#################################################
##################################################

Unrelated question: What rules are applied to set the defaultcolor palette
to a raster image? I would like to know if the yellow->blue->red palette set
by default uses percentage of full scale, standard deviations or some other
approach to setting the color scale.

Generally the rules are linear min<->max. grey.eq is histogram
equalized. If no color rules exist, the rainbow palette is used.

--
echo ">gra.fcw@2ztr< eryyvZ .T pveR" | rot13 | reverse

(attachments)

get_stats.c (5.01 KB)