47 #include <basic/options/option.hh>
48 #include <basic/options/keys/docking.OptionKeys.gen.hh>
51 #include <basic/Tracer.hh>
55 #include <utility/vector0.hh>
56 #include <utility/vector1.hh>
65 using namespace protocols::moves;
67 using namespace pack::task;
70 static basic::Tracer
TR(
"protocols.docking.DockingEnsemblePrepackProtocol");
75 DockingEnsemblePrepackProtocol::DockingEnsemblePrepackProtocol():
DockingHighRes()
100 using namespace basic::options;
101 if( option[ OptionKeys::docking::dock_rtmin ].user() )
102 set_rt_min(option[ OptionKeys::docking::dock_rtmin ]());
104 if( option[ OptionKeys::docking::sc_min ].user() )
105 set_sc_min(option[ OptionKeys::docking::sc_min ]());
107 if( option[ OptionKeys::docking::partners ].user() )
108 set_partners(option[ OptionKeys::docking::partners ]());
110 if ( option[ OptionKeys::docking::ensemble1 ].user() )
113 if ( option[ OptionKeys::docking::ensemble2 ].user() )
119 using namespace basic::options;
121 option.add_relevant( OptionKeys::docking::dock_rtmin );
122 option.add_relevant( OptionKeys::docking::sc_min );
123 option.add_relevant( OptionKeys::docking::partners );
124 option.add_relevant( OptionKeys::docking::ensemble1 );
125 option.add_relevant( OptionKeys::docking::ensemble2 );
152 tf2()->set_prepack_only(
true);
153 tf2()->create_and_attach_task_factory(
this, pose );
170 start_res = cutpoint + 1;
182 starting_pose = pose;
187 to_centroid.
apply( pose );
188 switch_mover->switch_conformer( pose, i );
194 translate_away->apply(pose);
196 ensemble1_->calculate_lowres_ref_energy( pose );
201 translate_back->trans_axis().negate();
202 translate_back->apply(pose);
207 ensemble1_->calculate_highres_ref_energy( i );
212 pose = starting_pose;
216 to_centroid.
apply( pose );
218 switch_mover->switch_conformer( pose, i );
224 translate_away->apply(pose);
226 ensemble2_->calculate_lowres_ref_energy( pose );
231 translate_back->trans_axis().negate();
232 translate_back->apply(pose);
237 ensemble2_->calculate_highres_ref_energy( i );
243 return "DockingEnsemblePrepackProtocol";