Something strange is happening, in my code, I have
DOUBLE PRECISION, DIMENSION(ilev, isize) :: aerop1_d
double precision, parameter :: zerod=0.0d0
...
aerop1_d = zerodp
So after that line, if I print the values in the debugger (wait until that above line is executed), I get stuff like:
pgdbg> print aerop1_d
(21:22,11): 0 0
(23:24,11): 0 2.8275281606231457e-315
(25:26,11): 0 0
(27:28,11): 0 0
Why aren’t they all zero? And if that number is simply the machine representation of zero (closest approximation), why aren’t they all like that, rather than most being zero?
The code is built with pgfortran 12.1 on CentOS 5.7:
pgfortran -tp=istanbul -mp -g -O0 -gopt -traceback -Mpreprocess -Minform=inform
I just noticed that I was using the 11.10 debugger, but that shouldn’t make a difference.