Merge pull request #215 from RosettaCommons/rfalford12/mprelax_mover
Membrane Framework Updates: 12/9/14
AddMembraneMover Updates:
= Adjusted setup to create a fold tree anchored at the membrane residue
by default and will fold from N--->C
= Added additional test cases to the unit test to check the correct setup
foldtree topology and initialization of spanning topology & lipophilicity objects
Print Compatibility for PyRosetta
= Modified getters in SpanningTopology and Span objects to be const correct -
allows passing of const data to other rosetta and PyRosetta methods
= Added << operator to all membrane framework objects (MembraneInfo,
SpanningTopology, Span, no lips yet) so they can be called by print in
PyRosetta
= Modified the pose.show() method to print some membrane information
(specifically, position, nspans, etc), Also useful for the print method
in PyRosetta
Scoring Bugs
= Fix a bug in MPNonHelix Penalty that didn't center the membrane around
the position used by the membrane framework. This calls for a better
implementation of the centroid potentials & terms in general, but for now
this fix suffices
Relax Mover
= Added a new mover, MPRelaxMover, which constructs a foldtree rooted at the
residue-level center of mass, preserves existing jumps between chains, and
creates an additional jump downstream of the COM to the membrane residue.
This mover also sets some important settings for the relax protocol including
a jump specific movemap (i.e. don't make all jumps moveable, just the membrane)
and initializes the score function (mpframework_smooth_fa_2014)
= MPFastRelaxMover plugged into Rosetta scripts, updated integration test
mpframework_relax to use this new mover.
= Added unit test for initializing the new foldtree (tested on single and
multi chain cases)
Test Status:
===================
Score Regression: Change due to updated score for mpnonhelix penalty
Unit: all pass
Integration: All mpframework changed due to add membrane mover creating a different fold tree