openff-toolkit: Parameter assignment regression test for FreeSolv fails due bug in toolkit version 0.0.4

I’ve attempted to test whether the current toolkit can recreate the Systems we used for the hydration free energy calculations in the SMIRNOFF paper. Currently, the test fails for molecule 1019269 (1-butanol). Because of a different Lennard-Jones parameter that changed from version 0.0.3 (the toolkit version used for the calculations) to the current smirnoff99Frosst.offxml. Here are the parameters:

Is this expected? If it is, should I just ignore the test case?

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 27 (14 by maintainers)

Most upvoted comments

Thanks, @andrrizzi – I agree with your points and what you’ve done here. Excellent.

And this is not relevant immediately to our work on tertiary amines, at least in the sense that we haven’t been doing anything with these molecules.

Wow—great sleuthing, @andrrizzi! That was indeed an important bugfix.

@andrrizzi I’m trying to understand the problems you posted so I’m going to comment on them one at a time:

  • 820789: Fails with “Exception: Unable to assign charges”.
  • 2501588, 3266352, 7829570: Fail with UndefinedStereochemistryError.

Are you using the same input files and version of openeye as was used before? It seems weird for these to have not been a problem before, but are a problem now.

  • 1019269: This fails because of the error I described above in 0.0.4. It seems like the epsilon and rmin_half parameters were switched before assignment.

I think we’ve handled this case as an intentional change in the parameters, as discussed above, it is a typo from what we actually wanted, but was an officially released version of the force field.

  • 1723043: Fails because in 0.0.4, a7 ([#6r4:1]-;@[#6r4:2]-;@[#6r4:3]) and a8 ([!#1:1]-[#6r4:2]-;!@[!#1:3]) matches were assigned to some other angle with k=“100.0” and angle=“109.5”, which was probably a1 ([*:1]~[#6X4:2]-[*:3]).

I’m having a hard time understanding the direction of this, but in version 1.0.6 we added cyclobutyl parameters that were not there before. So if you’re saying this [*:1]~[#6X4:2]-[*:3] parameter used to be applied and now a7 and a8 are instead, then I think this is correct. However, if it is the reverse then we have a problem.

  • 6266306: Fails because in 0.0.4, a a9 ([!#1:1]-[#6r4:2]-;!@[#1:3]) match was assigned to some other angle with k=“100.0” and angle=“109.5”, again, probably a1.

OK, I think this is the same change in parameters as above, but it seems like you should always get an intracyclic and extracyclic parameter change so I don’t understand how you’re not seeing a7 here. It would be really helpful if you could include SMILES or pictures of the molecules when you highlight issues so I can understand what chemistry is there.

  • 3323117: Fails because in 0.0.4, sometimes a b56 ([#16X4,#16X3:1]~[#8X1:2]) match was assigned to b55 ([#16X4,#16X3:1]-[#8X2:2]) instead.

This one makes me worry you have a different tautomer or something with your molecule because the first SMIRKS should only match a sulfur next two a monovalent oxygen (#8X1) and the second a divalent oxygen (#8X2). We haven’t changed those parameters and they should never match the same bond because the chemistry for those SMIRKS are different. So again, are you sure you’re using the same inputs for both tests?

  • 63712: Fails because in 0.0.4, a t51 ([*:1]-[#6X4:2]-[#7X3:3]-[*:4]) match was assigned to some other proper torsion with k1=“0.156” and same periodicity 3 (likely t50 [*:1]-[#6X4:2]-[#7X4:3]-[*:4] or t56 [!1:1]-[#7X4,#7X3:2]-[#6X4;r3:3]-[*:4]).

OK, I’m still not clear on how you’re identifying which parameter is being assigned incorrectly… I don’t remember us changing this torsion, so we’d need to dig a little deeper. However, you should consider the chemistry of the center bond, t50 cannot match the same bond as t51, note the change in the connectivity on the nitrogen. However, t56 is a more subset of the chemistry matched in t51, same connectivity on the carbon and nitrogen, but now the carbon is in a 3-membered ring.

See also https://github.com/openforcefield/smirnoff99Frosst/issues/81 which is another.

I think these are the only two changes. I’m not seeing a change to torsions.

@andrrizzi also check out https://github.com/openforcefield/smirnoff99Frosst/pull/85 which may be one of the changes you’re running into.