# GROMOS54a7 ff leads to missing parameters in topology after S-S-bonds between Cys residues were app

**URL:** <https://gromacs.bioexcel.eu/t/gromos54a7-ff-leads-to-missing-parameters-in-topology-after-s-s-bonds-between-cys-residues-were-app/6708>\
**Category:** User discussions\
**Tags:** pdb2gmx, forcefield, grompp\
**Created:** [June 29, 2023, 6:56am UTC](https://gromacs.bioexcel.eu/t/gromos54a7-ff-leads-to-missing-parameters-in-topology-after-s-s-bonds-between-cys-residues-were-app/6708 "2023-06-29T06:56:37Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jessica\_Reusing](https://avatars.discourse-cdn.com/v4/letter/j/57b2e6/32.png) [@Jessica\_Reusing](https://gromacs.bioexcel.eu/u/Jessica_Reusing)\
**Post date:** [June 29, 2023, 6:56am UTC](https://gromacs.bioexcel.eu/t/gromos54a7-ff-leads-to-missing-parameters-in-topology-after-s-s-bonds-between-cys-residues-were-app/6708/1 "2023-06-29T06:56:37Z")

</div>

GROMACS version: gromacs-2021.6  
GROMACS modification: No

Hello community!

I am a relatively new GROMACS user, who worked with GROMACS during my bachelor’s thesis - but being supported by a PHD student a few years ago already. Now I am working with GROMACS again to obtain results for my Master Thesis but without the former support, this is why I am reaching out now to the community.

I want to run simulations on a protein called CALB (Candida Antartica Lipase B) using different configurations, such as with and without crystallographic water, different force fields, etc.

A detailed description of what I did will follow below.

### My problem in a nutshell:

When I created the top file using pdb2gmx and any GROMOS ff, some entries for bonds, angles, dihedrals, etc. are missing/empty.  
These partially empty lines lead to a fatal error when using grompp at later stages, which could be “solved” by using the flag “-zero”.  
However, simply filling up missing entries with zeros is not my preferred work around, I think there must be a way to enter the correct parameters.  
In contrast, creating a topology with pdb2gmx and AMBER03 results in a complete topology (and not following errors.)

### Now the details:

The protein structure has been downloaded form the protein data bank (ID: 1TCA), as we want to compare our results to a paper in which that particular structure has been mentioned. (Link to the original pdb file: [https://drive.google.com/file/d/1q1IGtV5mqe79wNsGDLMVUhllrdYsdiA8/view?usp=drive\_link](https://drive.google.com/file/d/1q1IGtV5mqe79wNsGDLMVUhllrdYsdiA8/view?usp=drive_link))

I did two changes to the PDB-structure file:

- 
  1. I removed all entries related to “NAG” (because GROMACS did not recognize this molecule and at my current experience level, I do not know yet how to change this without creating physical non-sense.)

- 
  1. In some cases I also removed “HOH” (crystallographic waters) - this has however no impact on this matter, I am just bringing this up for completeness.  
The way I removed “NAG” and “HOH” from the pdb-file was via a terminal command like the example below:  
`grep -v HOH 1tca.pdb > 1_1tca_wo_HOH.pdb`  
You can have a look at this file here, on my google drive: [https://drive.google.com/file/d/1fSZkQkDRHgPatS0siZ3HFLW9yCBaEOxT/view?usp=drive\_link](https://drive.google.com/file/d/1fSZkQkDRHgPatS0siZ3HFLW9yCBaEOxT/view?usp=drive_link)

As my third step, I used pdb2gmx to create the topology for GROMOS54a7.

**This is my input:**  
`gmx pdb2gmx -f 2_1tca_wo_HOH_NAG.pdb -o 3_1tca_structure.gro -water spce`  
(using “14” to chose GROMOS54a7 when prompted)

**This is what GROMACS returns:**

_Using the Gromos54a7 force field in directory gromos54a7.ff_

_going to rename gromos54a7.ff/aminoacids.r2b_  
_Opening force field file /data/skloth/apps/gromacs-2021.6/share/gromacs/top/gromos54a7.ff/aminoacids.r2b_  
_Reading 2\_1tca\_wo\_HOH\_NAG.pdb…_  
_WARNING: all CONECT records are ignored_  
_Read ‘LIPASE’, 2324 atoms_

_Analyzing pdb file_  
_Splitting chemical chains based on TER records or chain id changing._

_There are 1 chains and 0 blocks of water and 317 residues with 2324 atoms_

_chain #res #atoms_

- 1 ‘A’ 317 2324 \*

_All occupancies are one_  
_All occupancies are one_  
_Opening force field file /data/skloth/apps/gromacs-2021.6/share/gromacs/top/gromos54a7.ff/atomtypes.atp_

_Reading residue database… (Gromos54a7)_  
_Opening force field file /data/skloth/apps/gromacs-2021.6/share/gromacs/top/gromos54a7.ff/aminoacids.rtp_

_Using default: not generating all possible dihedrals_

_Using default: excluding 3 bonded neighbors_

_Using default: generating 1,4 H–H interactions_

_Using default: removing proper dihedrals found on the same bond as a proper dihedral_

_Using default: removing proper dihedrals found on the same bond as a proper dihedral_  
_Opening force field file /data/skloth/apps/gromacs-2021.6/share/gromacs/top/gromos54a7.ff/aminoacids.hdb_  
_Opening force field file /data/skloth/apps/gromacs-2021.6/share/gromacs/top/gromos54a7.ff/aminoacids.n.tdb_  
_Opening force field file /data/skloth/apps/gromacs-2021.6/share/gromacs/top/gromos54a7.ff/aminoacids.c.tdb_

_Processing chain 1 ‘A’ (2324 atoms, 317 residues)_  
_Analysing hydrogen-bonding network for automated assignment of histidine protonation. 456 donors and 452 acceptors were found._  
_There are 703 hydrogen bonds_  
_Will use HISD for residue 224_

_Identified residue LEU1 as a starting terminus._

_Identified residue PRO317 as a ending terminus._  
_8 out of 8 lines of specbond.dat converted successfully_  
_Special Atom Distance matrix:_  
CYS22 CYS64 MET72 MET83 MET129 CYS216 HIS224  
SG152 SG453 SD520 SD611 SD962 SG1595 NE21658  
CYS64 SG453 0.203  
MET72 SD520 1.630 1.590  
MET83 SD611 1.393 1.301 0.936  
MET129 SD962 1.972 1.776 1.827 1.450  
CYS216 SG1595 3.258 3.070 2.845 2.788 1.462  
HIS224 NE21658 2.402 2.284 1.206 1.656 1.489 1.872  
CYS258 SG1904 3.341 3.152 3.006 2.933 1.570 0.203 2.052  
CYS293 SG2142 3.549 3.542 2.021 2.551 3.487 4.150 2.392  
MET298 SD2181 2.461 2.470 1.495 1.459 2.811 3.961 2.416  
CYS311 SG2284 3.398 3.393 1.898 2.388 3.375 4.101 2.344  
CYS258 CYS293 MET298  
SG1904 SG2142 SD2181  
CYS293 SG2142 4.347  
MET298 SD2181 4.137 1.623  
CYS311 SG2284 4.297 0.204 1.420  
Linking CYS-22 SG-152 and CYS-64 SG-453…  
Linking CYS-216 SG-1595 and CYS-258 SG-1904…  
Linking CYS-293 SG-2142 and CYS-311 SG-2284…  
_Start terminus LEU-1: NH3+_  
_End terminus PRO-317: COO-_

_Checking for duplicate atoms…_

_Generating any missing hydrogen atoms and/or adding termini._

_Now there are 317 residues with 2930 atoms_

_Making bonds…_

_Number of bonds was 2997, now 2992_

_Generating angles, dihedrals and pairs…_

_WARNING: WARNING: Residue 1 named LEU of a molecule in the input file was mapped_  
_to an entry in the topology database, but the atom H used in_  
_an interaction of type angle in that entry is not found in the_  
_input file. Perhaps your atom and/or residue naming needs to be_  
_fixed._

_WARNING: WARNING: Residue 317 named PRO of a molecule in the input file was mapped_  
_to an entry in the topology database, but the atom O used in_  
_an interaction of type angle in that entry is not found in the_  
_input file. Perhaps your atom and/or residue naming needs to be_  
_fixed._

_Before cleaning: 4986 pairs_  
_Before cleaning: 6441 dihedrals_

_Making cmap torsions…_

_There are 2267 dihedrals, 1467 impropers, 4377 angles 4986 pairs, 2992 bonds and 0 virtual sites_

_Total mass 33015.526 a.m.u._

_Total charge -1.000 e_

_Writing topology_

_Writing coordinate file…_

```
	--------- PLEASE NOTE ------------

```

_You have successfully generated a topology from: 2\_1tca\_wo\_HOH\_NAG.pdb._

_The Gromos54a7 force field and the spce water model are used._

* * *

I uploaded my input and output files to a google drive. You can have a look at the

- topology here: [https://drive.google.com/file/d/17GNMXl6U4dHxn6a32GjxNgzTIHtbBRuk/view?usp=drive\_link](https://drive.google.com/file/d/17GNMXl6U4dHxn6a32GjxNgzTIHtbBRuk/view?usp=drive_link)
- out-gro file here: [https://drive.google.com/file/d/1yZt9o7JlwGmN4l-5y5nJuvW1R9nX-6AT/view?usp=drive\_link](https://drive.google.com/file/d/1yZt9o7JlwGmN4l-5y5nJuvW1R9nX-6AT/view?usp=drive_link)
- positions restrained here: [https://drive.google.com/file/d/1ZFPReWuWfy62ycQcemzSnE\_gg7xJdwBp/view?usp=drive\_link](https://drive.google.com/file/d/1ZFPReWuWfy62ycQcemzSnE_gg7xJdwBp/view?usp=drive_link)

You will note that the following lines in the topology have missing entries:

[bonds] → Always missing c0

- Line 3469: Atoms **186** (SG in 22Cys) and **562** (SG in 64Cys)
- Line 5336: Atoms **2013** (SG in 216Cys) and **2415** (SG in 258Cys)
- Line 6035: Atoms **2700** (SG in 296Cys) and **2881** (SG in 311Cys)

[angles] → Always missing c0

- Line: 11539: Atoms **185** (CB in 22Cys), **186** (SG in 22Cys), **562** (SG in 64Cys)
- Line 12103: Atoms **186** (SG in 22Cys, **562** (SG in 64Cys), **561** (CB in 64Cys)
- Line 14869: Atoms **2013** (SG in 216Cys), **2415** (SG in 258Cys), **2414** (CB in 258 Cys)
- Line 15295: **2699** (CB in 293Cys), **2700** (SG in 296Cys), **2881** (SG in 311Cys)
- Line 15568: **2700** (SG in 296Cys), **2881** (SG in 311Cys), **2880** (CB in 311Cys)

[dihedrals] → Always missing c0

- Line 15796: Atoms **68** (HD1 in 9Phe), **67** (CD1 in 9Phe), **71** (CE1 in 9Phe), **72** (HE1 in 9Phe)
- Line 15797: Atoms **68** (HD1 in 9Phe), **67** (CD1 in 9Phe), **71** (CE1 in 9Phe), **75** (CZ in 9Phe)
- Line 16100: Atoms **220** (N in 27Pro), **221** (CA in 27Pro), **225** (C in 27Pro), **226** (O in 27Pro)
- Line 17186: Atoms **742** (CG in 82Tyr), **743** (GD1 in 82Tyr), **747** (CE1 in 82Tyr), **751** (CZ in 82Tyr)
- Line 17187: Atoms **744** (HD1 in 82Tyr), **743** (CD1 in 82Tyr), **747** (CE1 in 82Tyr), **748** (HE1 in 82 Tyr)
- Line 17726: Atoms **1005** (CB in 110Val), **1004** (CA in 110Val), **1008** (C in 110Val), **1010** (N in 111Ala)
- Line 17868: Atoms **1087** (C in 117Phe), **1074** (CA in 117Phe), **1075** (CB in 117Phe), **1076** (CG in 117Phe)

Now, if I continue using this topology, the next thing I do is using gmx editconf and gmx solvate to position the protein in a cubic box and solvate it with water (step 4). Just to be complete, **this is the input:**  
`gmx editconf -f 3_1tca_structure.gro -o 4_1tca_cubic_box.gro -c -d 1.0 -bt cubic`

followed by

`gmx solvate -cp 4_1tca_cubic_box.gro -cs spc216.gro -o 4_1tca_cubic_box_solvated.gro -p topol.top`

Nothing speical happening here. The fatal error occurs in the next step (step 5).

**My input to prepare adding ions to the system using grompp:**  
(my mdp file: [https://drive.google.com/file/d/1OlsKIR3ZtIeVQB6J7qTAUVRwDF4RRVAm/view?usp=drive\_link](https://drive.google.com/file/d/1OlsKIR3ZtIeVQB6J7qTAUVRwDF4RRVAm/view?usp=drive_link))

`gmx grompp -f 5_add_ions.mdp -c 4_1tca_cubic_box_solvated.gro -p topol.top -o 5_add_ions.tpr`

**What GROMACS returns** :

_GROMACS: gmx grompp, version 2021.6_  
_Executable: /data/skloth/apps/gromacs-2021.6/bin/gmx_  
_Data prefix: /data/skloth/apps/gromacs-2021.6_  
_Working dir: /data/jreusing/Proposal/calb/calb\_1tca\_pure_  
_Command line:_

- gmx grompp -f 5\_add\_ions.mdp -c 4\_1tca\_cubic\_box\_solvated.gro -p topol.top -o 5\_add\_ions.tpr\*

_Ignoring obsolete mdp entry ‘ns\_type’_

_NOTE 1 [file 5\_add\_ions.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 -167805967_

_Generated 168 of the 1653 non-bonded parameter combinations_

_ERROR 1 [file topol.top, line 15796]:_

- No default Proper Dih. types\*

_ERROR 2 [file topol.top, line 15797]:_

- No default Proper Dih. types\*

_ERROR 3 [file topol.top, line 16100]:_

- No default Proper Dih. types\*

_ERROR 4 [file topol.top, line 17186]:_

- No default Proper Dih. types\*

_ERROR 5 [file topol.top, line 17187]:_

- No default Proper Dih. types\*

_ERROR 6 [file topol.top, line 17726]:_

- No default Proper Dih. types\*

_ERROR 7 [file topol.top, line 17868]:_

- No default Proper Dih. types\*

_Excluding 3 bonded neighbours molecule type ‘Protein\_chain\_A’_

_Excluding 2 bonded neighbours molecule type ‘SOL’_

_WARNING 1 [file topol.top, line 19406]:_  
_he GROMOS force fields have been parametrized with a physically incorrect multiple-time-stepping scheme for a twin-range cut-off. When used with a single-range cut-off (or a correct Trotter multiple-time-stepping scheme), physical properties, such as the density, might differ from the intended values. Since there are researchers actively working on validating GROMOS with modern integrators we have not yet removed the GROMOS force fields, but you should be aware of these issues and check if molecules in your system are affected before proceeding. Further information is available [https://redmine.gromacs.org/issues/2884](https://redmine.gromacs.org/issues/2884) , and a longer explanation of our decision to remove physically incorrect algorithms can be found at [On The Importance of Accurate Algorithms for Reliable Molecular Dynamics Simulations | Theoretical and Computational Chemistry | ChemRxiv | Cambridge Open Engage](https://doi.org/10.26434/chemrxiv.11474583.v1) ._

_NOTE 2 [file topol.top, line 19406]:_  
_System has non-zero total charge: -1.000000_  
_Total charge should normally be an integer. See [Floating point arithmetic — GROMACS webpage https://www.gromacs.org documentation](http://www.gromacs.org/Documentation/Floating_Point_Arithmetic) for discussion on how close it should be to an integer._

_There were 2 notes_

_There was 1 warning_

* * *

_Program: gmx grompp, version 2021.6_  
_Source file: src/gromacs/gmxpreprocess/grompp.cpp (line 1963)_

_Fatal error:_  
_There were 7 errors in input file(s)_

_For more information and tips for troubleshooting, please check the GROMACS website at [Common Errors — GROMACS webpage https://www.gromacs.org documentation](http://www.gromacs.org/Documentation/Errors)_

* * *

**For comparison, these are the files created when using AMBER03 instead:** [https://drive.google.com/drive/folders/1jkk\_INpdi1iVxRixm\_5zUZHzskde1uH\_?usp=drive\_link](https://drive.google.com/drive/folders/1jkk_INpdi1iVxRixm_5zUZHzskde1uH_?usp=drive_link)

**My ideas:**

I think, what happens is that after the S-S-bridge is formed (during which the hydrogens are “used up” to form the bond), GROMACS using the gromos54a7-ff does not know how to create the angles etc. between neighboring residues. Neighboring means close in the 3-D space, not close in the primary sequence.

However, is there any way to fix it?

Side note:

- I tried all the GROMACS-ff and the result has always been the same.
- I tried installing older (and later) versions of GROMACS but they didn’t run properly on my computer (the later version works fine but does produce the same errors).

**Thank you very much in advance - I really appreciate your time and efforts to help people in this forum!**

---

<div class="post-metadata">

**Author:** ![fwaibl](https://avatars.discourse-cdn.com/v4/letter/f/3ec8ea/32.png) [@fwaibl](https://gromacs.bioexcel.eu/u/fwaibl)\
**Post date:** [July 5, 2023, 7:38am UTC](https://gromacs.bioexcel.eu/t/gromos54a7-ff-leads-to-missing-parameters-in-topology-after-s-s-bonds-between-cys-residues-were-app/6708/2 "2023-07-05T07:38:43Z")

</div>

Hi,

I tried your inputs (using the same pdb file) using Gromacs version 2023, and I did not encounter any errors (I had to add -maxwarn 1, but that is unrelated.) Did you try this version as well?

I also see a few missing parameters in the .top file, however, I found that gromos54a7.ff/ffbonded.itp contains the following section:

```auto
; bond-, angle- and dihedraltypes for specbonds:
[bondtypes]
S S 2 gb_36
NR FE 2 gb_34

[angletypes]
CH1 CH2 S 2 ga_16
CH2 S S 2 ga_6
CR1 NR FE 2	ga_34
NR FE NR 2 ga_17

[dihedraltypes]
S S 1 gd_21
NR FE 1 gd_38
CH2 S 1 gd_26

```

I imagine that those entries are used to fill in the missing parameters around the disulfide bonds.

I recently posted a related question (I did not see your post before): [Missing parameters in cyclic peptide with Gromos FF](https://gromacs.bioexcel.eu/t/missing-parameters-in-cyclic-peptide-with-gromos-ff/6735). It might be that this also answers my question, or maybe I can make an FF file with extra parameter entries to fix it…

I hope this helps.

Best,  
Franz
