Open jmichel80 opened 6 years ago
'Correct' atom names for ACE in ff14SB !
!entry.ACE.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg "H1" "HC" 0 1 131072 1 1 0.112300 "CH3" "CT" 0 1 131072 2 6 -0.366200 "H2" "HC" 0 1 131072 3 1 0.112300 "H3" "HC" 0 1 131072 4 1 0.112300 "C" "C" 0 1 131072 5 6 0.597200 "O" "O" 0 1 131072 6 8 -0.567900
In [15]: protein = BSS.IO.readMolecules("../protein/FXR/fxr-allh.pdb").getMolecules()[0] In [16]: protein = BSS.Parameters.parameterise(protein, "ff14SB").getMolecule()
--> works
In [17]: protein = BSS.IO.readMolecules("../protein/FXR/fxr-allh.pdb.bad").getMolecules()[0] In [18]: protein = BSS.Parameters.parameterise(protein, "ff14SB").getMolecule() --> fails because it appears the atom names in the residue template 'ACE' differ between ff14SB and older amberforcefields.
Specifically the syntax below is correct for ff99, but not ff14SB
ATOM 55 HH31 ACE 2 -25.796 -3.514 -12.446 1.00 0.00 ATOM 56 CH3 ACE 2 -25.964 -2.744 -11.693 1.00 0.00 ATOM 57 HH32 ACE 2 -25.109 -2.702 -11.019 1.00 0.00 ATOM 58 HH33 ACE 2 -26.863 -2.982 -11.123 1.00 0.00 ATOM 59 C ACE 2 -26.143 -1.385 -12.334 1.00 0.00 ATOM 60 O ACE 2 -26.092 -1.248 -13.564 1.00 0.00
Thus, at least for ACE residues, we may need code to work out how to map hydrogen names depending on what version of the AMBER ff we want to use.