24 #include <ObjexxFCL/string.functions.hh>
25 #include <basic/database/open.hh>
28 #include <utility/io/izstream.hh>
34 #include <utility/vector1.hh>
35 #include <utility/io/mpistream.hh>
47 StepWiseBetaAntiParallelJumpSampleGenerator::StepWiseBetaAntiParallelJumpSampleGenerator(
49 Size const moving_residue ):
59 using namespace core::kinematics;
66 bool downstream(
false );
69 for (
Size i = 1; i <= f.num_jump(); i++ ) {
70 if ( f.upstream_jump_residue( i ) == sample_res ){
72 which_jump = i;
break;
73 }
else if (f.downstream_jump_residue( i ) == sample_res ){
75 which_jump = i;
break;
78 if ( which_jump == 0 ) utility_exit_with_message(
"Could not find the jump for sample_beta?!" );
82 atom_base = f.upstream_atom( which_jump );
83 atom_sample = f.downstream_atom( which_jump );
85 atom_base = f.downstream_atom( which_jump );
86 atom_sample = f.upstream_atom( which_jump );
91 std::string const jump_library_file( basic::database::full_name(
"clustered_beta_pairs.dat" ) );
92 utility::io::izstream data( jump_library_file.c_str() );
93 if ( !data.good() ) utility_exit_with_message(
"Unable to open file: " +jump_library_file +
'\n' );
97 while( getline(data, line) ) {
98 std::istringstream is( line );
99 is >> tag >> atom1_in >> atom2_in;
102 std::cout << atom1_in <<
" " << atom_base <<
" " << atom2_in <<
" " << atom_sample << std::endl;
104 if ( (atom1_in == atom_base) && (atom2_in == atom_sample ) ){
105 if ( !downstream ) jump.reverse();
111 std::cout <<
"FOUND " <<
jumps_.size() <<
" JUMPS!" << std::endl;