Assertion failed for buckingham interacting solid

manuelperezesc
Tue, 28 Oct 2025 12:25:06 +0000
User discussions

GROMACS version: 2024.5
GROMACS modification: No

I am very new to Gromacs and I would like to run dynamics for a solid using a Buckingham potential but I guess I am missing something in the topology definition of my system. This is my .top file:

[ defaults ]
; nbfunc comb-rule gen-pairs fudgeLJ fudgeQQ
2 3 no 1.0 1.0

[ atomtypes ]
; name mass charge ptype sigma epsilon
In 114.818 0.0 A 0.3500 0.05230
OI 16.000 0.0 A 0.2960 0.21000

[ moleculetype ]
; Name nrexcl
ITOO 6

[ atoms ]
; nr type resnr resid atom cgnr charge mass
1 In 1 ITOO In 1 3.000 114.818
2 In 1 ITOO In 2 3.000 114.818
3 OI 1 ITOO OI 3 -2.000 16.000
4 OI 1 ITOO OI 4 -2.000 16.000
5 OI 1 ITOO OI 5 -2.000 16.000

[ bonds ]
; (none)

[ angles ]
; (none)

[ dihedrals ]
; (none)

[ pairs ]
; (none)

[ nonbond_params ]
; ai aj funct par1 par2 par3
In In 2 0.0 0.0 0.0
OI OI 2 144597.3417 0.03405 3.2033e09
In OI 2 2196384.54 0.01490 3.0875e09

[ system ]
; name
ITOO system

[ molecules ]
; compound n_mol
ITOO 864

where my .gro is defined like:

ITO structure
4320
1ITOO In 1 105.389 1.414 42.067
1ITOO In 2 100.493 123.225 46.066
1ITOO OI 3 138.354 19.221 33.673
1ITOO OI 4 67.527 105.418 54.460
1ITOO OI 5 50.564 54.078 38.933
2ITOO In 6 100.492 40.133 75.443
2ITOO In 7 136.473 60.906 46.066
2ITOO OI 8 83.357 112.108 78.578
2ITOO OI 9 103.507 58.927 65.653
2ITOO OI 10 30.413 107.258 51.857
3ITOO In 11 141.369 105.279 71.445
3ITOO In 12 82.502 94.893 42.067
3ITOO OI 13 119.337 117.052 38.007
3ITOO OI 14 14.584 49.134 79.503
3ITOO OI 15 50.598 114.537 33.673
4ITOO In 16 123.379 29.746 46.066
4ITOO In 17 51.418 71.293 75.443
4ITOO OI 18 11.363 10.101 54.460
….

It seems to me that I am missing something in my [ atomtypes ] section as Gromacs complains about that, which I guess avoids the final set up of the input file:

Executable: /home/.soft/gromacs_GPU_24/bin/gmx_mpi
Data prefix: /home/.soft/gromacs_GPU_24
Working dir: /home/perez/main-projects/GROMACS_calc
Command line:
gmx_mpi grompp -f minim.mdp -c ITO.gro -p ITO.top -o minim.tpr

Ignoring obsolete mdp entry ‘ns_type’

NOTE 1 [file minim.mdp]:
With Verlet lists the optimal nstlist is >= 10, with GPUs >= 20. Note
that with the Verlet scheme, nstlist has no effect on the accuracy of
your simulation.

Setting the LD random seed to -70386849

WARNING 1 [file ITO.top, line 7]:
Too few parameters on line (source file
/home/.soft/gromacs-2024.5/src/gromacs/gmxpreprocess/toppush.cpp,
line 506)

WARNING 2 [file ITO.top, line 8]:
Too few parameters on line (source file
/home/.soft/gromacs-2024.5/src/gromacs/gmxpreprocess/toppush.cpp,
line 506)

Generated 0 of the 0 non-bonded parameter combinations

Program: gmx grompp, version 2024.5
Source file: src/gromacs/gmxpreprocess/toppush.cpp (line 266)
Function: free_nbparam(t_nbparam**, int)::<lambda()>

Assertion failed:
Condition: param
Must have valid parameter

My input file is:

; minim.mdp - used as input into grompp to generate em.tpr
; Parameters describing what to do, when to stop and what to save
integrator = steep ; Algorithm (steep = steepest descent minimization)
emtol = 100.0 ; Stop minimization when the maximum force < 1000.0 kJ/mol/nm
emstep = 0.01 ; Minimization step size
nsteps = 50000 ; Maximum number of (minimization) steps to perform

; Parameters describing how to find the neighbors of each atom and how to calculate the interactions
nstlist = 1 ; Frequency to update the neighbor list and long range forces
cutoff-scheme = Verlet ; Buffered neighbor searching
ns_type = grid ; Method to determine neighbor list (simple, grid)
coulombtype = PME ; Treatment of long range electrostatic interactions
rcoulomb = 1.2 ; Short-range electrostatic cut-off
rvdw = 1.2 ; Short-range Van der Waals cut-off
pbc = xyz ; Periodic Boundary Conditions in all 3 dimensions

Any help would be appreciated! Thank you

2 posts - 2 participants