33 #include <utility/tag/Tag.hh>
35 #include <basic/Tracer.hh>
46 #include <utility/vector0.hh>
47 #include <utility/vector1.hh>
50 #include <utility/excn/Exceptions.hh>
59 using namespace core::scoring;
61 static basic::Tracer
TR(
"protocols.protein_interface_design.movers.InterfaceRecapitulationMover" );
65 namespace protein_interface_design {
68 using namespace protocols::moves;
71 InterfaceRecapitulationMoverCreator::keyname()
const
73 return InterfaceRecapitulationMoverCreator::mover_name();
77 InterfaceRecapitulationMoverCreator::create_mover()
const {
82 InterfaceRecapitulationMoverCreator::mover_name()
84 return "InterfaceRecapitulation";
87 InterfaceRecapitulationMover::InterfaceRecapitulationMover() :
90 design_mover_( NULL ),
91 design_mover2_( NULL ),
132 if( task->being_designed( i ) ) ++designable_positions;
143 std::map< core::Size, std::string >
const res_names1( rsd.
res_name1() );
144 core::Size const mutated( res_names1.size() );
146 TR<<
"Your design mover mutated "<<mutated<<
" positions out of "<<designable_positions<<
" designable positions. Sequence recovery is: "<<1-rate<<std::endl;
150 TR <<
"PSSM-Score: " << pssm <<
" at " << designable_positions <<
" designable positions. Mean score is " << pssm / (
core::Real)designable_positions << std::endl;
164 std::map< std::string const, MoverOP >::const_iterator find_mover( movers.find( mover_name ));
165 bool const mover_found( find_mover != movers.end() );
171 throw utility::excn::EXCN_RosettaScriptsOption(
"dynamic cast failed in tag in RecapitulateMover. Make sure that the mover is either PackRotamers or DesignRepackMover derived" );
173 pssm_ = tag->getOption<
bool>(
"pssm", false );