Open mrshirts opened 4 years ago
@tlfobe do I have this right above?
Note: It looks like the 1-5 scaling is indeed in OpenMM now. I'm working on putting in the 4.5-6A truncation, it looks pretty easy to do in OpenMM, though the switching function may not be exactly the same in the two codes.
This all seems right! There is a non-bonded cutoff that is set per residue, which might adjust the 4.5 to 6.0 A cutoff described in the paper, but I need to look at the documentation a bit more.
I'll also do some searching on the connectivity weights. From what I remember we concluded these couldn't be changed, but I'll look back through the Rosetta slack to see where that discussion was left.
There is a non-bonded cutoff that is set per residue, which might adjust the 4.5 to 6.0 A cutoff described in
Ah, it seems that the attractive component is only between atoms in different residues, and is omitted between atoms in the same residue, but the repulsive component is applied to both intra and inter residue terms. That would require redefinition of the LJ terms. Note that this can be done in OpenMM, but the question is whether we want to.
Fortunately, given the connection weight, then any model smaller than 5 beads/backbone should already exclude these terms. So we shouldn't need to worry about the difference for now, as long as the connection weights are included in the intramolecular repulsion as well (which it looks like they are)?
I'll also do some searching on the connectivity weights.
Yeah, if it can't be done, that's fine. Eventually we want to move to the mm terms, which we should be able to control more. The cutoff for mm terms is probably more important to know about.
See PR shirtsgroup/foldamers#29, as well as cg_openmm pr https://github.com/shirtsgroup/cg_openmm/pull/40.
Note that intra-residue interactions ARE being included for now, since that is what @tlfobe is currently using with Rosetta.
I'm taking the information from Alford et al's 2017 paper, especially page 3033 and 3034.
A copy is posted at: https://daslab.stanford.edu/site_data/pub_pdf/2017_Alford_JCTC.pdf
The main issues seem to be:
A nonbonded truncated cutoff between 4.5 -6.0 A. This should be easy to replicate with OpenMM.
A LJ term that is divided between repulsive and attractive part. It appears that the weighting between these two is adjustable. If their weighting is left equal, which should be the default, this then matches the standard LJ functional form, so that's easy.
Exclusions in the nonbonded interactions such that 1-2, 1-3, and 1-4 interactions are set at zero, and 1-5 interactions are scaled by 0.2. The 1-2,1-3, and 1-4 interactions are easy to handle in OpenMM, the 1-5 interactions a bit tougher, but doable (have to construct an explicit list of 1-5 interactions). If there were a way to adjust the 0.2 scaling of the 1-5's that might be nice to adjust, but not necessary.
A LJ repulsive term that goes to linear below 0.6 sigma. This generally should not be a problem, because it is very rare that there are interactions for any simulations at 300 (or even 600 K) with very rare exceptions. This is because (0.6)^-12 = 460, so these are very large interactions. Certainly is unlikely to happen with minimized structures. So it won't interfere with energy matching of minimized structures, and it won't interfere with matching the ensemble behavior of folded structures, since structures with these contacts will be very rare members of the ensemble.
Fixed bonds: This we can match with constrained bonds for OpenMM
Fixed angles: It does not appear possible to do this in OpenMM right now. However, mm_angles are working in cg_pyrosetta, so we can at least match angles with this. It should not affect the ensembles that much, though, since we will be running with angle constraints.
Torsions: we plan on using mm_ torsions in cg_pyrosetta, so this should be straightforward to match.
Thinking about the future: