Merge pull request #3732 from RosettaCommons/jadolfbr/gtm_updates
GlycanTreeModeler Updates
This PR adds a few new options that improve model energies and will be benchmarked in the coming weeks
1) Add an option to GTM for `hybrid_protocol` that is a hybrid between layer building and random sampling. This protocol of the GTM builds out the layers like a tree growing, but instead of only sampling the newly built layer, it spends half its time sampling the layer, and the other half using the `GlycanTreeSampler` to sample any residue up to where we have built out onto. This seems to result in much better energies, while still having the benefits of the iterative layer-build of the core protocol.
2) Refinement now turns off virtualization in order to better maintain and improve the input structure. This can be overridden using an option, and is useful for multiple calls to the modeling protocol.
3) Implement optional sampling of individual conformer torsions using a gaussian. Currently, the angles are set using the mean and a uniform distribution on the up to a single SD. Add functions to enable this in `GlycanTreeModeler` and `GlycanTreeSampler`.
4) Add options to the GTM to use conformer probabilities instead of uniform sampling of the conformer populations.
Update integration tests to test these.