36 #include <utility/vector1.hh>
80 using namespace core::conformation::symmetry;
83 max_res = symm_info->num_independent_residues() - 1;
90 if(cutpoint > (
int)max_res)
continue;
96 Size const nbb( lower_rsd.mainchain_atoms().size() );
98 ( upper_rsd.atom( upper_rsd.mainchain_atoms()[ 1] ).
xyz().distance_squared( lower_rsd.atom(
"OVL1" ).xyz() ) +
99 upper_rsd.atom( upper_rsd.mainchain_atoms()[ 2] ).
xyz().distance_squared( lower_rsd.atom(
"OVL2" ).xyz() ) +
100 lower_rsd.atom( lower_rsd.mainchain_atoms()[nbb] ).
xyz().distance_squared( upper_rsd.atom(
"OVU1" ).xyz() ) );
102 assert( std::abs( totals[
chainbreak ] ) < 1e-3 );
131 using namespace core::conformation::symmetry;
134 max_res = symm_info->num_independent_residues() - 1;
135 if(
id.rsd() > max_res )
return;
141 Vector const & xyz_moving( pose.
xyz(
id ) );
146 xyz_fixed = upper_rsd.
atom(
"OVU1" ).
xyz();
147 }
else if ( lower_rsd.
atom_name(
id.atomno() ) ==
"OVL1" ) {
149 }
else if ( lower_rsd.
atom_name(
id.atomno() ) ==
"OVL2" ) {
158 F1 += weights[
chainbreak ] * 2 * cross( xyz_moving, xyz_fixed );
159 F2 += weights[
chainbreak ] * 2 * ( xyz_moving - xyz_fixed );
167 Vector const & xyz_moving( pose.
xyz(
id ) );
172 xyz_fixed = lower_rsd.
atom(
"OVL1" ).
xyz();
174 xyz_fixed = lower_rsd.
atom(
"OVL2" ).
xyz();
175 }
else if ( upper_rsd.
atom_name(
id.atomno() ) ==
"OVU1" ) {
184 F1 += weights[
chainbreak ] * 2 * cross( xyz_moving, xyz_fixed );
185 F2 += weights[
chainbreak ] * 2 * ( xyz_moving - xyz_fixed );