Hi there!
I've been using MMB to fold ssDNA for subsequent MD simulation in Tinker with some success. I'm now trying to do the same but with OpenMM, and I'm having difficulty with the MMB --> OpenMM translation.
Taking the output structure directly from MMB: firstly, pdbfixer's addHydrogen's method puts unphysically-too-many protons on certain carbons, and secondly, whether or not we add hydrogens, the OpenMM system builder method always crashes with a message like this:
"
No template found for residue 2 (DC). The set of atoms matches DC, but the bonds are different.
"
Usually it is happy with the first base, but not the subsequent ones. It seems there may be an issue with the base termini (?).
It seems like a natural use case to go from MMB to OpenMM, so I'm guessing it's been done. Is there any experience out there as to what might be going on here?
Thanks for any tips,
Michael
Running MMB outputs in OpenMM
- Peter Eastman
- Posts: 2564
- Joined: Thu Aug 09, 2007 1:25 pm
Re: Running MMB outputs in OpenMM
You can specify what pH it should add hydrogens based on. By default it uses pH 7.firstly, pdbfixer's addHydrogen's method puts unphysically-too-many protons on certain carbons
Take a look at https://github.com/openmm/openmm/wiki/F ... s#template and see if it answers your question about the error message.
- Michael Kilgour
- Posts: 7
- Joined: Mon Mar 08, 2021 5:14 pm
Re: Running MMB outputs in OpenMM
Thanks for replying!
To clarify on the addMissingHydrogens issue, for e.g. at pH=7.0, on ribose carbons it will add protons up to a total of four, keeping two bonds to carbon, for a total of six bonds. It does something similar to some of the backbone atoms as well. (see attached image).
![Image](https://i.imgur.com/OA2NdQc.png)
Interestingly .findMissingAtoms and .findMissingResidues come up with nothing. It seems then like PDBFixer is somewhat, but not totally confused about what MMB is outputting, and I wonder if that carries over to the difficulty in OpenMM.
As to what to do about it, from the FAQ, since it usually gets confused starting at the second base, my best guess it has to do with termini - as you point out:
To clarify on the addMissingHydrogens issue, for e.g. at pH=7.0, on ribose carbons it will add protons up to a total of four, keeping two bonds to carbon, for a total of six bonds. It does something similar to some of the backbone atoms as well. (see attached image).
![Image](https://i.imgur.com/OA2NdQc.png)
Interestingly .findMissingAtoms and .findMissingResidues come up with nothing. It seems then like PDBFixer is somewhat, but not totally confused about what MMB is outputting, and I wonder if that carries over to the difficulty in OpenMM.
As to what to do about it, from the FAQ, since it usually gets confused starting at the second base, my best guess it has to do with termini - as you point out:
I'm not very experienced with the PDB format however, so I'm not sure how to go about attacking the problem. I have tried several of the available force fields, and none of them seem to like the MMB pdb's, though CHARMM threw a different error from AMBER:A chain is terminated incorrectly. Proteins, and nucleic acids to an even greater extent, can be terminated in different ways. The residues at the ends of the chain are different from those in the middle and require different templates. Often a force field will only support one or two ways of terminating each chain. If your Topology has them terminated in a different way, they will not match.
I was thinking the fix might be in how MMB formats its PDB outputs (for reference I'm using 2.14 Windows binaries) - I just now did a ssDNA fold using the brand new MMBv3.4 (hoping PDB formatting may have been updated) but got the identical outcome.Found multiple NonbondedForce tags with different 1-4 scales
- Peter Eastman
- Posts: 2564
- Joined: Thu Aug 09, 2007 1:25 pm
Re: Running MMB outputs in OpenMM
Can you post an example PDB file?
- Michael Kilgour
- Posts: 7
- Joined: Mon Mar 08, 2021 5:14 pm
Re: Running MMB outputs in OpenMM
Sure thing - see enclosed the direct output from MMB for a minimal aptamer - right out of MMB, before any processing (had to change file extension, and sorry about all the simtk remarks. I'm also attaching a version where I had PDBFixer read and write that same file, just to get rid of those remarks).
- Attachments
-
- sequenceProcessedpdb.txt
- (7.61 KiB) Downloaded 39 times
-
- sequencepdb.txt
- (14.98 KiB) Downloaded 14 times
- Michael Kilgour
- Posts: 7
- Joined: Mon Mar 08, 2021 5:14 pm
Re: Running MMB outputs in OpenMM
Update - looks like we have a solution here viewtopicPhpbb.php?f=359&t=13397&p=38496&start=0&view=
The MMB output structures have stars ( * ) instead of apostrophes ( ' ). Replacing the former with the latter seems to create structures which OpenMM is happy with. At least from my initial test.
The MMB output structures have stars ( * ) instead of apostrophes ( ' ). Replacing the former with the latter seems to create structures which OpenMM is happy with. At least from my initial test.