+++ assertion failed: i>0 serial of an atom cannot be zero

GROMACS version: 2024.5-plumed_2.11.0_dev
GROMACS modification: No

I am trying to run a WT-MetaD of a short peptide to map its FES. I have followed the following steps to produce the topol.tpr

  • created .gro and .top files from .pdb file using pdb2gmx with ff charmm36-mar-2022
  • placed the solute (peptide) inside a box of 1.2 nm (dodecahedron)
  • solvated with spc water (for TIP3P CHARMM modified water)
  • added ions and neutralized the system
  • energy minimized
  • caried out 400ps NVT followed by 400ps NPT (with restraint) and ended with 1ns NPT (no restraint)
  • created plumed.dat file (attached)
  • issued the following command
  • gmx_mpi mdrun -s topol.tpr -nsteps 100000 -plumed plumed.dat and the error is as follows,
Using 1 MPI process
Using 4 OpenMP threads 


Back Off! I just backed up ener.edr to ./#ener.edr.1#
starting mdrun 'PENTA_PEP in water'
100000 steps,    200.0 ps.

-------------------------------------------------------
Program:     gmx mdrun, version 2024.5-plumed_2.11.0_dev

Unknown exception:
(exception type: N4PLMD6Plumed14ExceptionErrorE)

(tools/AtomNumber.h:95) PLMD::AtomNumber& PLMD::AtomNumber::setSerial(unsigned
int)
+++ assertion failed: i>0
serial of an atom cannot be zero

For more information and tips for troubleshooting, please check the GROMACS
website at https://manual.gromacs.org/current/user-guide/run-time-errors.html
-------------------------------------------------------
Abort(1) on node 0 (rank 0 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, 1) - process 0
WARNING: internal inconsistency in allocated PlumedMain instances (1)
Might be a consequence of incorrectly paired plumed_create/plumed_finalize in the C interface
Or it could be due to incorrect calls to std::exit, without properly destroying all PlumedMain objects

I have attached my .mdp and plumed.dat file for reference. Could someone shed some light on where and what I am doing wrong? How to troubleshoot and solve this issue?

Many thanks,
md.mdp (2.9 KB)
plumed.dat (913 Bytes)

Hi rube23,

With plumed, more descriptive error messages can be generally found in the log file.
Is what you posted the log file?

In general the log is telling you that there is an atom with the index 0.
That could be because of errors in your plumed file or because of errors in your reference pdb file.
Does that PDB file contain the whole box or only the peptide? Try providing only the peptide

Looking at your plumed file your definitions of the dihedral angles also seems incorrect to me (@phi-# should be incorrect, it is missing the residue number).
See: PLUMED: MOLINFO

Hope this helps,
Best

1 Like

I just copied the last part of the log file. Not the complete log.

I get that now. I created a pdb file using the command gmx_mpi editconf -f topol.tpr -o pentap.pdb and also corrected the dihedral angle mistake. Now it reads as follows (the complete plumed.dat file:

# Activate MOLINFO functionalities
MOLINFO STRUCTURE=pentap.pdb
# Compute the backbone dihedral angle phi, defined by atoms C-N-CA-C
# you should use MOLINFO shortcuts 
phi: TORSION ATOMS=@phi-3
# Compute the backbone dihedral angle psi, defined by atoms N-CA-C-N
# here also you should to use MOLINFO shortcuts 
psi: TORSION ATOMS=@psi-4
# Activate well-tempered metadynamics in phi
metad: METAD ARG=phi,psi
# Deposit a Gaussian every 500 time steps, with initial height 
# equal to 1.2 kJ/mol and bias factor equal to 8
  PACE=500 HEIGHT=1.2 BIASFACTOR=8
# Gaussian width (sigma) should be chosen based on the CV fluctuations in unbiased run
# try 1/2 or 1/3 of the estimated fluctuations
  SIGMA=0.35
# Gaussians will be written to file and also stored on grid
  FILE=HILLS GRID_MIN=-pi GRID_MAX=pi
# Print both collective variables on COLVAR file every 10 steps
PRINT ARG=phi,psi FILE=COLVAR STRIDE=10

This time I getting the following error message:

-------------------------------------------------------
Program:     gmx mdrun, version 2024.5-plumed_2.11.0_dev

Unknown exception:
(exception type: N4PLMD6Plumed14ExceptionErrorE)

(core/Action.cpp:375) void PLMD::Action::error(const std::string&) const
ERROR in input to action METAD with label metad : keyword SIGMA is compulsory
for this action

For more information and tips for troubleshooting, please check the GROMACS
website at https://manual.gromacs.org/current/user-guide/run-time-errors.html

My understanding is there is some issue with SIGMA parameter. However, I have provided the SIGMA parameter in the configuration file.

Thank you making me progress in understanding my mistakes and troubleshooting @PofPaf . I have attached the .log file this time.

md.log (22.2 KB)

Many thanks,

I figured out the mistakes and corrected them. It runs well now. I am posting my plumed.dat file for the sake of completion.

# vim:ft=plumed
MOLINFO STRUCTURE=pentap_.pdb 

# Compute the backbone dihedral angle phi, defined by atoms C-N-CA-C
# you might want to use MOLINFO shortcuts
phi: TORSION ATOMS=@phi-3

# Compute the backbone dihedral angle psi, defined by atoms N-CA-C-N
psi: TORSION ATOMS=@psi-4

# Activate well-tempered metadynamics in phi
metad: METAD ARG=phi,psi SIGMA=0.35,0.35 PACE=500 HEIGHT=1.2 BIASFACTOR=8.0 FILE=HILLS #GRID_MIN=-pi GRID_MAX=pi

# Print both collective variables and the value of the bias potential on COLVAR file
PRINT ARG=phi,psi,metad.bias FILE=COLVAR STRIDE=10

Many thanks,