31 #include <utility/vector1.hh>
86 if( rsd.
has(
"CEN") ) {
87 if( rsd.
xyz(
"CEN").z() > 0.0 ) {
90 Real score = numeric::min( 0.0, (-10.0 / (cen.distance(target) + 1.0) + 1.0) );
91 score *= dot( (cen-base).normalized(),(target-cen).normalized());
94 Real penalty = rsd.
xyz(
"CA" ).y();
96 emap[
sym_lig] += penalty * 0.01;
99 emap[
sym_lig] += numeric::min( 0.0, rsd.
xyz(
"CEN").distance(target) - 20.0 ) / 20;
101 if(
"HIS" == rsd.
name3() && rsd.
xyz(
"NE2").z() > 0.0 ) {
104 Real score = numeric::min( 0.0, (-8.0 / (cen.distance(target) + 1.0) + 1.0) );
128 if(
"HIS" != pose.
residue(
id.rsd()).name3() )
return;
130 if(
"NE2" != pose.
residue(
id.rsd()).atom_name(
id.atomno()) )
return;
137 if( pose.
xyz(
id).distance(target) > 5.0 )
return;
141 mag = 6.0 / (mag*mag);