Surface. Unasable points

I run the following code I got the warning message. My data is pre-processed and a check the decimals.
How can I solve this? Any idea?

R=181/185/0/3
gmt blockmean corrected_data.txt -R$R -I1m -fg > blockmean.txt 
gmt surface blockmean.txt -R$R -I1m -Gss_gridded_fix1.nc -T0.25 -fg


surface [WARNING]: 16 unusable points were supplied; these will be ignored.
surface [WARNING]: You should have pre-processed the data with block-mean, -median, or -mode.
surface [WARNING]: Check that previous processing steps write results with enough decimals.
surface [WARNING]: Possibly some data were half-way between nodes and subject to IEEE 754 rounding.

I have already try the following without success:

  1. Save my data with more decimals (up to 50) and less decimals (gmt set FORMAT_FLOAT_OUT = %.50g). From %.7g I always got 16 unusable points.

  2. I also try gmt set FORMAT_GEO_OUT=ddd:mm:ss.xxx with the same luck.

  3. Set an greater interval only for blockmean (-I2m). I got 126 unusable points.

https://www.dropbox.com/s/ojxf870bfrybk1u/corrected_data.txt?dl=0

Does surface internally use a different -R due to the new feature of finding a better -R -I combination?
I guess we have no simple way to find the points that are excluded. Perhaps -Vd should print these out so we can examine them without running debugging.

Yes, It would helpfull to identied those points for a simpler analysis.

Not sure. FYI I am using the script x2sys_04.sh from the test.

I try the new feature (#6798) and I got this points.

surface [INFORMATION]: Skipping unusable point (182.375 2.475600004196167 -11.5).
surface [INFORMATION]: Skipping unusable point (182.875 2.426500082015991 -12.69999980926514).
surface [INFORMATION]: Skipping unusable point (184.875 2.292399883270264 9.199999809265137).
surface [INFORMATION]: Skipping unusable point (183.375 2.073899984359741 1.5).
surface [INFORMATION]: Skipping unusable point (182.375 2.012599945068359 1.5).
surface [INFORMATION]: Skipping unusable point (181.2910003662109 1.975000023841858 0.8999999761581421).
surface [INFORMATION]: Skipping unusable point (181.375 1.991600036621094 0).
surface [INFORMATION]: Skipping unusable point (181.6430053710938 1.990000009536743 5.400000095367432).
surface [INFORMATION]: Skipping unusable point (184.3569946289062 1.990000009536743 7.900000095367432).
surface [INFORMATION]: Skipping unusable point (184.7089996337891 1.975000023841858 10.39999961853027).
surface [INFORMATION]: Skipping unusable point (184.875 1.759999990463257 0.4000000059604645).
surface [INFORMATION]: Skipping unusable point (184.875 1.342499971389771 -0.8999999761581421).
surface [INFORMATION]: Skipping unusable point (183.375 0.6467000246047974 38.70000076293945).
surface [INFORMATION]: Skipping unusable point (183.875 0.4431500136852264 -16.60000038146973).
surface [INFORMATION]: Skipping unusable point (184.875 0.2766000032424927 2.900000095367432).
surface [INFORMATION]: Skipping unusable point (182.375 0.007050000131130219 -9.5).

About these unusable point warnings, any suggestions about the -R -I combination was mentioned above? any updates about this topic? thanks.

Probably doe to blockmean is not writing out enough decimals so on input we end up with > 1 point inside several blocks, and those points farthest from the center are discarded. Probably on or very close to the bin borders.