35 #include <utility/vector1.hh>
36 #include <ObjexxFCL/FArray2D.hh>
159 if ( nbr_dist2 > intxn_dist2 )
return;
166 tenA_neighbor_graph.get_node( rsd1.
seqpos() )->
167 num_neighbors_counting_self_static(),
169 tenA_neighbor_graph.get_node( rsd2.
seqpos() )->
170 num_neighbors_counting_self_static() );
202 ObjexxFCL::FArray2D< core::PackerEnergy > & energy_table
205 using namespace conformation;
206 using namespace numeric;
216 if ( ! ii_example_rotamer.is_protein() || ! ( ii_example_rotamer.is_polar() || (any_aro && ii_example_rotamer.is_aromatic()) ) )
continue;
219 Vector const & ii_coord( ii_example_rotamer.atom( ii_example_rotamer.type().nbr_atom() ).
xyz());
220 Real const ii_radius( ii_example_rotamer.type().nbr_radius() );
227 if ( ! jj_example_rotamer.is_protein() || ! ( jj_example_rotamer.is_polar() || (any_aro && jj_example_rotamer.is_aromatic()) ))
continue;
230 Vector const & jj_coord( jj_example_rotamer.atom( jj_example_rotamer.type().nbr_atom() ).
xyz());
231 Real const jj_radius( jj_example_rotamer.type().nbr_radius() );
235 Size const kk_rot_id = ii_offset + kk - 1;
237 Size const ll_rot_id = jj_offset + ll - 1;
277 if ( ! set.
rotamer(ii)->is_protein() || ! ( set.
rotamer(ii)->is_polar() || set.
rotamer(ii)->is_aromatic() ) )
continue;
304 if ( ! set.
rotamer(ii)->is_protein() || ! ( set.
rotamer(ii)->is_polar() || set.
rotamer(ii)->is_aromatic() ))
continue;
319 bool res_moving_wrt_eachother
322 if ( ! res_moving_wrt_eachother )
return false;
432 int const nbr_count1( tenA_neighbor_graph.get_node( rsd1.
seqpos() )->
433 num_neighbors_counting_self_static() );
434 int const nbr_count2( tenA_neighbor_graph.get_node( rsd2.
seqpos() )->
435 num_neighbors_counting_self_static() );
455 utility_exit_with_message(
"ERROR in fa_pair derivaties, too many aromatics!!!");
459 if ( weight == 0.0 )
return;
461 Real dpairE_dr( 0.0 );
465 Real const dis( f2.length() );
467 if ( dis ==
Real(0.0 ) ) {
468 utility_exit_with_message(
"dis==0 in pairtermderiv!");
471 f1 *= weight * dpairE_dr;
472 f2 *= weight * dpairE_dr;
480 Vector f1_1( f1 ), f2_1( f2 ), f1_2( f1 ), f2_2( f2 );
483 Real inv_nact1( 1 / (
Real) nact1 ), inv_nact2( -1 / (
Real) nact2 );
489 for (
Size ii = 1; ii <= nact1; ++ii ) {
493 for (
Size ii = 1; ii <= nact2; ++ii ) {