30 #include <basic/Tracer.hh>
61 #include <utility/tag/Tag.hh>
69 #include <utility/vector0.hh>
70 #include <utility/vector1.hh>
76 static basic::Tracer
TR(
"protocols.fldsgn.BluePrintBDR" );
92 return "BluePrintBDR";
98 Super(
"BluePrintBDR" ),
101 loop_mover_str_(
"RemodelLoopMover" ),
102 use_fullmer_( false ),
103 num_fragpick_( 200 ),
104 use_sequence_bias_( false ),
105 use_abego_bias_( false ),
106 max_linear_chainbreak_( 0.07 ),
107 initialized_( false ),
108 ss_from_blueprint_( true ),
109 constraints_NtoC_( -1.0 ),
110 constraints_sheet_( -1.0 ),
111 constraint_file_(
"" ),
112 dump_pdb_when_fail_(
"" ),
114 use_poly_val_( true ),
121 Super(
"BluePrintBDR" ),
123 loop_mover_str_(
"RemodelLoopMover" ),
124 use_fullmer_( false ),
125 num_fragpick_( 200 ),
126 use_sequence_bias_( false ),
127 use_abego_bias_( false ),
128 max_linear_chainbreak_( 0.07 ),
129 initialized_( false ),
130 ss_from_blueprint_( ss_from_blueprint ),
131 constraints_NtoC_( -1.0 ),
132 constraints_sheet_( -1.0 ),
133 constraint_file_(
"" ),
134 dump_pdb_when_fail_(
"" ),
136 use_poly_val_( true ),
145 Super(
"BluePrintBDR" ),
146 blueprint_( blueprintOP ),
148 loop_mover_str_(
"RemodelLoopMover" ),
149 use_fullmer_( false ),
150 num_fragpick_( 200 ),
151 use_sequence_bias_( false ),
152 use_abego_bias_( false ),
153 max_linear_chainbreak_( 0.07 ),
154 initialized_( false ),
155 ss_from_blueprint_( ss_from_blueprint ),
156 constraints_NtoC_( -1.0 ),
157 constraints_sheet_( -1.0 ),
158 constraint_file_(
"" ),
159 dump_pdb_when_fail_(
"" ),
161 use_poly_val_( true ),
170 blueprint_( rval.blueprint_ ),
171 manager_( rval.manager_ ),
173 loop_mover_str_( rval.loop_mover_str_ ),
174 use_fullmer_( rval.use_fullmer_ ),
175 num_fragpick_( rval.num_fragpick_ ),
176 use_sequence_bias_( rval.use_sequence_bias_ ),
177 use_abego_bias_( rval.use_abego_bias_ ),
178 max_linear_chainbreak_( rval.max_linear_chainbreak_ ),
179 initialized_( rval.initialized_ ),
180 ss_from_blueprint_( rval.ss_from_blueprint_ ),
181 constraints_NtoC_( rval.constraints_NtoC_ ),
182 constraints_sheet_( rval.constraints_sheet_ ),
183 constraint_file_( rval.constraint_file_ ),
184 dump_pdb_when_fail_( rval.dump_pdb_when_fail_ ),
185 rmdl_attempts_( rval.rmdl_attempts_ ),
186 use_poly_val_( rval.use_poly_val_ ),
187 invrot_tree_(rval.invrot_tree_),
188 enzcst_io_(rval.enzcst_io_)
190 if ( rval.
vlb_.get() ) {
300 bool flag(
false ),
insert(
false );
301 String aa, ss, insert_name, ins_sec;
302 Size left( 0 ), right( 0 ), count( 0 ), insnum( 0 );
309 TR.Error <<
"Residue number in blueprint file is more than that of pose!, pose/blueprint= "
318 if( count == 0 || i==1 ){
334 }
else if( right <
left ){
340 if( ins_sec.length() == 1 ) {
341 TR <<
"Secondary structure of insert pose will be given by Dssp" << std::endl;
345 runtime_assert( insert_pose.
total_residue() == ins_sec.length() );
350 TR <<
"SegmentInsert left " <<
left <<
", right: " << right
351 <<
", ss: " << ss <<
", aa:" << aa <<
", pdb:" << insert_name << std::endl;
354 TR <<
"SegmentRebuild left: " <<
left <<
", right: " << right <<
", ss: " << ss <<
", aa:" << aa << std::endl;
370 insert_name =
blueprint_->insertion( insnum );
374 }
else if(
blueprint_->buildtype( i ) ==
'I' ) {
392 TR <<
"SegmentRebuild left: " <<
left <<
", right: " << right <<
", ss: " << ss <<
", aa:" << aa << std::endl;
396 TR <<
"There is no instruction in blueprint. " << std::endl;
411 allowed_seqpos->initialize_from_command_line( posecopy );
413 setup_align_pose->set_add_target_to_pose(
true );
414 setup_align_pose->set_geomcst_for_superposition_from_enz_io(
enzcst_io_);
417 run_align_pose->set_geomcst_for_superposition_from_enz_io(
enzcst_io_);
430 abego_to_use.push_back(
"X");
431 vlb_->set_abego( abego_to_use );
447 TR <<
"You need to set a blueprint file" << std::endl;
530 Pose archive_pose = pose;
531 Pose modified_archive_pose = archive_pose;
536 bool mod_ap_is_full_atom =
true;
537 for (
Size i = 1, ie = modified_archive_pose.
n_residue(); mod_ap_is_full_atom && i != ie; ++i ) {
541 if ( !mod_ap_is_full_atom ) {
550 protein_residues.push_back( i );
566 runtime_assert( cst_weight > 0.0 );
571 vlb_->add_rcg( rcg );
576 vlb_->add_rcg( rcg );
581 vlb_->add_rcg( cst );
627 TR <<
"Side-chains won't be swapped back to original. " << std::endl;
651 if( blueprint ==
"" ){
652 TR <<
"No input of blueprint file ! " << std::endl;
653 runtime_assert(
false );
661 String const sfxn ( tag->getOption<
String>(
"scorefxn",
"" ) );
664 TR <<
"score function, " << sfxn <<
", is used. " << std::endl;
695 if( tag->hasOption(
"invrot_tree")){
696 String cstfilename = tag->getOption<
String>(
"invrot_tree",
"");
698 enzcst_io->read_enzyme_cstfile( cstfilename );