Merge pull request #5928 from RosettaCommons/roccomoretti/interactive_rarey_constraints
[Foldit] Add Rarey rotamer library based torsions.
Coming off of PR #5927 (the content of which is included in this branch), I noticed that it would be really nice to include the ability to minimize against the torsions.
By using some of the changes from PR #5926 (which actually was triggered by this effort), I was able to make a SingleResidueRotamerLibrary which bases itself off of the Rarey torsion definitions. Anything "green" has zero energies, but orange and red torsions have harmonic-deviation energetic penalties. (So the energy wells are effectively flat harmonic like.)
The current sd parameters were chosen to roughly match the penalty energies seen with fa_dun in a small (two residue) test set. Matching those parameters is good, as the current setup (using the SingleResidueRotamerLibrary mechanism) means that the energies for the Rarey show up in the fa_dun term.
The primary goal of this branch was the energy and minimization behavior, but we also can use it for sampling -- rotamer generation proceeds by randomly choosing torsions in the green regions. It's not great (as it misses ring sampling and any torsions which aren't mapped by the Rarey library), but it's much, much faster than the current RDKit-based rotamers.
Which torsion library to use for designed ligands can now be selected from the puzzle setup file.
Merge pull request #5927 from RosettaCommons/roccomoretti/interactive_rarey_torsions
[Foldit] Add LigandTorsionQuality Objective.
One of the issues we saw with the first ligand design puzzle series was the generation of ligand conformations which were unlikely.
This PR adds a LigandTorsionQuality Filter/Objective which uses the Rarey 2016 torsional library (https://pubs.acs.org/doi/abs/10.1021/acs.jcim.5b00522) for the definition of what acceptable ligand torsions are. The Rarey library has a traffic light (red/orange/green) ranking of torsions, and the Objective adds a penalty based on the number of torsions in the orange and red regions.
Some changes to GlowBondVizData are needed to allow for custom (orange) colors in the glow.
Merge pull request #5929 from RosettaCommons/roccomoretti/interactive_ligand_tweak
[Foldit] Add Ligand Tweak action
This PR adds a "Ligand Tweak" action for designable ligands, which, when selected from the action bar, pops up purple tweak arrows on the rotatable bonds of the ligand, and allows you to rotate them back and forth. The concept is that it would be used with the torsion objective to optimize placement/torsions of the ligand.
The tool should not be available for residues/puzzles which aren't designable ligands.
Merge pull request #5936 from RosettaCommons/interactive/petrides/fix_trim_tests
[Foldit] - Fix the trim tests to allow the all.test target to build again
Merge pull request #5937 from RosettaCommons/interactive/petrides/activate_trim_tool
[Foldit] Activate the Trim and Untrim Tools by Turning on Write Version 10
Merge pull request #5913 from RosettaCommons/joshmiller/persistent-hints
[Foldit] Clear tooltips when changing puzzles
Release notes
- Fixed a bug causing tooltips to persist across puzzles
Merge pull request #5904 from RosettaCommons/koepnick/foldit_group_leaderboard
[Foldit] Update group leaderboard for all players
Release notes:
- Fix group leaderboards for non-group players