ERROR on proc 0: Not a valid floating-point number: '1.439870326823783e-309' (../pair_eam_alloy_gpu.cpp:411) Last command: pair_coeff * * "/home/labuser/BTP/potential_files/NiCo_2014.alloy" Co Ni

Hello everyone, I am getting this error on running a calculation for Ni-Co system. I got the potential file from NIST website (link). I am getting this error on reading the data in potential file.

To be specific, I am running simulation with CUDA support and the version I am using is one of the latest versions. I tried running the simulation without CUDA support and the file is read correctly. Is this problem specific to GPU supported simulations? Did any similar occurred earlier for anyone?
1.


pair_style	eam/alloy
pair_coeff * * "/home/labuser/BTP/potential_files/NiCo_2014.alloy" Co Ni
																																																																																																																																																																																																																																																																																																																																						
neighbor 2.0 bin 
# --------------------- SETTINGS ---------------------

compute peratom all pe/atom
compute total_energy all reduce sum c_peratom 

and I am running the simulation using
lmp_gpu-sf gpu -pk gpu 1 -in inpu_T.txt

More details on errror:

ERROR on proc 0: Not a valid floating-point number: '1.439870326823783e-309' (../pair_eam_alloy_gpu.cpp:411)
Last command: pair_coeff * * "/home/labuser/BTP/potential_files/NiCo_2014.alloy" Co Ni

and here is the part of the potential file where the mentioned floating number is present.

...........file continues......
-2.1299052398029992e-280 -8.566321476516222e-281 3.358071267713661e-281 -6.848939690666565e-282 6.932590453925121e-283 
6.454197727570769e-284 -4.4789038567181124e-284 1.1075797491238431e-284 -1.5502661100570007e-285 1.2642600548045157e-287 
5.402381793260401e-287 -1.6735847006963886e-287 2.942743865316919e-288 -1.9665044646858251e-289 -5.46866991739136e-290 
2.3646150387092235e-290 -5.047786629408992e-291 5.604860424899101e-292 3.42725247850794e-293 -3.0889002033996906e-293 
8.025681742863743e-294 -1.1933114310806656e-294 2.913571347740737e-296 3.6079207597465334e-296 -1.1936435506757918e-296 
2.202545799346089e-297 -1.7261627480975643e-298 -3.412336671400187e-299 1.6575783454533087e-299 -3.704050517961904e-300 
4.462610932199781e-301 1.5672788750866902e-302 -2.1169065690485255e-302 5.793065318395648e-303 -9.112438142034619e-304 
3.5589106245196814e-305 2.3823402504916e-305 -8.479663049386643e-306 1.6397896413535868e-306 -1.4598676742166302e-307 
-2.321276858520659e-308 1.439870326823783e-309 0. 0. 0. 

0. 0. 0. 0. 0. 
0. 0. 0. 0. 0. 
0. 0. 0. 0. 0. 
0. 0. 0. 0. 0. 
.......... file continues.............

Log file of simulation without GPU

LAMMPS (2 Aug 2023 - Update 3)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/src/comm.cpp:98)
  using 1 OpenMP thread(s) per MPI task
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/src/comm.cpp:98)
  using 1 OpenMP thread(s) per MPI task
Reading data file ...
  orthogonal box = (0 0 0) to (30.781634 26.657677 226.19789)
  1 by 1 by 1 MPI processor grid
  reading atoms ...
  15552 atoms
  read_data CPU = 0.083 seconds
Neighbor list info ...
  update: every = 1 steps, delay = 0 steps, check = yes
  max neighbors/atom: 2000, page size: 100000
  master list distance cutoff = 8.5
  ghost atom cutoff = 8.5
  binsize = 4.25, bins = 8 7 54
  1 neighbor lists, perpetual/occasional/extra = 1 0 0
  (1) pair eam/alloy, perpetual
      attributes: half, newton on
      pair build: half/bin/atomonly/newton
      stencil: half/bin/3d
      bin: standard
Setting up Verlet run ...
  Unit style    : metal
  Current step  : 0
  Time step     : 0.001
Per MPI rank memory allocation (min/avg/max) = 15.9 | 15.9 | 15.9 Mbytes
---
keywords: ['Step', 'PotEng', 'Lx', 'Ly', 'Lz', 'Press', 'Pxx', 'Pyy', 'Pzz', 'Time', 'Temp', ]
data:
  - [0, -67994.9234413882, 30.7816341807187, 26.6576771705018, 226.197891575324, -128837.568942405, -129039.319240435, -129043.146666032, -128430.240920749, 0, 0.01, ]
  - [250, -68000.3891514221, 30.7816341807187, 26.6576771705018, 226.197891575324, -127001.934942486, -127199.024265849, -127190.923014031, -126615.857547577, 0.25, 6.50607433988977, ]

Thanks in advance

EAM potential files are read by the exact same functions in all cases. So differences have to be due to different LAMMPS versions.

The error message is correct. This is a denormalized number and should have been rounded to zero. In fact, this should have been done for the entire block of numbers with three digit exponents. This hints at a bug in the code that created the potential file.

On changing the number to 0 should work right?

Yes it would get rid of the error, but I would double check that there aren’t other issues with the file.