-
Notifications
You must be signed in to change notification settings - Fork 77
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FoyerError: Found no types for atom 0 (carbon). #104
Comments
I tried checking out a few older releases and got the same error so it is not an obvious regression. |
The CH2 defined in your class is under-coordinated which is why Foyer isn't finding any atom types. The alkane CH2 in the OPLS force field in Foyer is defined as being bonded to both two hydrogens and two carbons. |
So the issue is that the atoms are not bonded? |
So this is the actual problem I'm working with:
(I had to add .txt to the pdb file)
|
Oh right, I hadn't even noticed the molecule didn't have bonds. So then right, Foyer will look for a carbon without bonds and since there aren't any carbons of that type defined in the OPLS force field you will get that error. In the case of your |
Thanks! I'm sure I will be back with some more questions. I can track down what we use for thiophenes and see if I can add the to the force field correctly. |
I just want to make sure I'm on the right track, It created this file So do I just need to add missing opls types and the bond, angle, dihedral parameters? I'll have to add the SMARTS stuff as well so foyer can type things correctly |
Ah okay, so those atom types are not included in the OPLS force field in Foyer (which features the same atom types as the force field shipped with Gromacs). This is a similar issue to what I have run into with the OPLS parameters for silica, in that the parameters do exist but are not part of the standard OPLS force field. I'm not sure if we want to add in these additional parameters (i.e. those for silica and thiophenes) to the OPLS force field in Foyer or just have these be cases where the user creates their own force field XML file. @ctk3b any ideas on this? |
If we do add them, we should definitely add the appropriate DOIs for where the parameters came from. Depending on where they come from we can discuss adding them to the main force field or not. |
Is there an automated way of adding them? Even if it doesn't go in the
standard oplsaa force field that shipped with foyer, do you guys have some
tool to help generate the openMM.xml files?
…On Thu, Mar 23, 2017 at 11:26 AM, Christoph Klein ***@***.***> wrote:
If we do add them, we should definitely add the appropriate DOIs for where
the parameters came from. Depending on where they come from we can discuss
adding them to the main force field or not.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#104 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ALOI3iu9vmQFm7eswQAL_DEKoY7fForyks5roqs9gaJpZM4MmBka>
.
|
The import parmed as pmd
from parmed.openmm.parameters import OpenMMParameterSet
oplsaa = pmd.load_file('my_gromacs_forcefield.itp')
xml = OpenMMParameterSet.from_parameterset(oplsaa.parameterset)
xml.write('foo.xml') The caveat here is that RB-torsions aren't being written right now - we need to commit our modification to ParmEd that fixes this. |
There were a few edits we had to make to the parameters.py file in the parmed/openmm directory in the parmed source code to get this to work. I've attached below the edited parameters.py file we used as well as a file showing the changes that were made. |
Depending how long it takes for those edits to get incorporated it might be worth forking parmed and just using git submodules |
I feel like I'm close but still missing something.
Since I don't care about impropers, I deleted them creating this file: Which when I used the code above worked, except this is the contents of foo.xml
I did use the file provided by @summeraz to patch ParmEd. While I'm sure that I could edit the |
Do you have a corresponding |
Yes, I've got the PDB and TRP file:
Input PDB file: input000.pdb
<http://erg.biophys.msu.ru/erg/tpp/tppmktop.py?polyp3htpd_AEYQeh#>
Output ITP file: output000.itp
<http://erg.biophys.msu.ru/erg/tpp/tppmktop.py?polyp3htpd_AEYQeh#>
Output RTP file: output000.rtp
<http://erg.biophys.msu.ru/erg/tpp/tppmktop.py?polyp3htpd_AEYQeh#>
…On Thu, Mar 23, 2017 at 2:39 PM, Christoph Klein ***@***.***> wrote:
Do you have a corresponding .gro or other structure file that would be
used with this?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#104 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ALOI3ip6LMdD6bZCXOxhTcONkT6kLhFeks5rotiYgaJpZM4MmBka>
.
|
Looks like the links broke. Can you attach just the .pdb? What I think the problem is is that the .itp file produced by this service defines a So far when converting force fields we had always been converting files that defined |
here is the pdb file: |
Do you have a full, runnable set of gromacs input files? I've created an overarching output.top:
|
I don't have have a gromacs file. What I'm working with is a pdb file for P3HT that I've loaded into mbuild. Since foyer didn't have those oplsaa types for the thiophenes I went looking for something that could help type them and generate force field parameters. |
Right I was just wondering if that service you were trying out generated a full set of gromacs input files (I just tried it out and the answer appears to be no). It was unclear to me at this point where some of the parameter values are defined and apparently the answer is here but I can't immediately see if those parameters were derived by this group or are from some paper. Just from reading the comments, most of them are just furan parameters but I don't know about |
I'm not sure where they come from which is an issue for publication, but my
primary goal is a 'hello world' example that we can use to show foyer and
mbuild in action.
As a lab we simulate a lot of organic compounds with sulfur so we will need
to contribute some oplsaa parameters/citations that add those parmenters.
Right now though I'm more interested in a path of least resistance that
will let me have foyer generate a forcefeild for P3HT. It doesn't have to
be precise, just not cause a simulation to blow up.
…On Mar 23, 2017 15:48, "Christoph Klein" ***@***.***> wrote:
Right I was just wondering if that service you were trying out generated a
full set of gromacs input files (I just tried it out and the answer appears
to be no). It was unclear to me at this point where some of the parameter
values are defined and apparently the answer is here
<https://bitbucket.org/comcon1/oplsaa-erg_ff/src/22632ba8b7c7f0c9932ea337efc9577bdaf0cf94/ffoplsaa-add-nb.itp?at=default&fileviewer=file-view-default>
but I can't immediately see if those parameters were derived by this group
or are from some paper. Just from reading the comments, most of them are
just furan parameters but I don't know about opls_t566.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#104 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ALOI3s3CGBul3fJIWGKeBJSWJ3T4av6sks5roujDgaJpZM4MmBka>
.
|
If
I'm happy to help smooth out any pain points that you encounter here as we're in the process of working on this type of documentation #102 Longer term, I would like to collect the proper publication history of the various parameters before making any decisions about including them with foyer or as a separate "opls extension". |
I'm on board with the long term plan! I think curating the foyer oplsaa parameters is the right way to go. In the readme or some wiki, people could link their own forcefield parameter files that might not be general or documented well enough to make it into the foyer mainline but could be useful for others. Going back to the issue at hand, there 8 opls_t* atom types that the service suggests using so I'll go the route of taking the gromacs file. I might not be able to touch this until next week but I'll tweak the example I'm working on to approach it as a user who has a gromacs + pdb file and they want to use mbuild to initialize their system and foyer to make the forcefield. That way it's useful for our lab and can help with #102 for documentation. |
So I was was able to create a usable forcefield.xml file by feeding this file into parmed:
I'll then pull out the parameters I need and merge them into the oplsaa parameters from foyer (to take advantage of the atom typing work that's already done). |
Thanks everyone for helping me out with this issue. I was able to get things working by just adding 2 new atom types. |
I'm working on a 'hello world' example for using foyer + mbuild + hoomd to run a hoomd simulation. I ran into an issue when trying to create a forcefield file. I created a minimal example below:
The text was updated successfully, but these errors were encountered: