Merge pull request #617 from RosettaCommons/vmullig/multirepeat_bundle
Adding a ring closure term for proline-like noncanonicals.
The pro_close term seems to do some proline-specific things, so we need a ring closure term for proline-like noncanonicals (e.g. cis-ACPC, trans-ACHC).
- Add ncaa_ring_closure scoring term.
- Set up simple harmonic potentials holding two virtuals overtop two real atoms. (The idea is that we enforce ring closure with good bond angles and bond lengths by setting up the residue with virtuals attached to the real atoms in the bond to be closed, with each virtual overlapping the atom that is not its parent: A--x y--B. By enforcing that x be overtop B and y be overtop A, we get the bond angles and bond lengths for free.)
- Set up atom derivatives for the harmonic potentials.
- Use the virtual shadow code for determining which atoms to apply the potential to.
- Update the cyclic beta-amino acid params files:
- cis-ACPC
- cis-ACHC
- Unit tests.
- Documentation.
This pull request also:
- Fixes a serious bug in the way in which shadow atom records were being set up when creating variant ResidueTypes.
- Adds a flag, "-score:no_pro_close_ring_closure", that disables the ring closure part of the pro_close score term, allowing this term to ONLY do what it does for the i-1 residue's torsions. This allows ring_close to be used with pro_close, with ring_close handling closure of the proline ring and pro_close handling mainchain torsions of the i-1 residue.
- Add a test in the pro_close unit tests for pro_close with the above flag.