29 #include <utility/vector1.hh>
30 #include <utility/pointer/ReferenceCount.hh>
33 #include <numeric/constants.hh>
54 bg_residues_( bg_residues ),
58 scoretypes_( sfxn_.get_nonzero_weighted_scoretypes() )
70 using namespace scoring;
86 edgeit != edgeit_end; ++edgeit ) {
87 Size const jjresid = (*edgeit)->get_other_ind( iiresid );
88 bool const jjmoving =
scminmap_.
dm()( jjresid ) == 0;
89 if ( jjmoving && iiresid > jjresid )
continue;
93 if ( iiresid < jjresid ) {
96 minedge.setup_for_scoring( jjres, iires,
pose_,
sfxn_ );
115 edgeit != edgeit_end; ++edgeit ) {
116 Size const jjresid = (*edgeit)->get_other_ind( iiresid );
117 bool const jjmoving =
scminmap_.
dm()( jjresid ) == 0;
118 if ( jjmoving && iiresid > jjresid )
continue;
122 if ( iiresid < jjresid ) {
137 using namespace scoring;
153 edgeit != edgeit_end; ++edgeit ) {
154 Size const jjresid = (*edgeit)->get_other_ind( iiresid );
155 bool const jjmoving =
scminmap_.
dm()( jjresid ) == 0;
156 if ( jjmoving && iiresid > jjresid )
continue;
159 if ( iiresid < jjresid ) {
162 minedge.setup_for_derivatives( jjres, iires,
pose_,
sfxn_ );
183 edgeit != edgeit_end; ++edgeit ) {
184 Size const jjresid = (*edgeit)->get_other_ind( iiresid );
185 bool const jjmoving =
scminmap_.
dm()( jjresid ) == 0;
186 if ( jjmoving && iiresid > jjresid )
continue;
191 if ( iiresid < jjresid ) {
208 dE_dx[3*ii-2] = F2[0];
209 dE_dx[3*ii-1] = F2[1];
210 dE_dx[3*ii ] = F2[2];
220 for (
Size jj = 1; jj <= iires.nchi(); ++jj ) {
230 iires.xyz(chi_atoms[1]),
231 iires.xyz(chi_atoms[2]),
232 iires.xyz(chi_atoms[3]),
233 iires.xyz(chi_atoms[4]) );
242 dE_dx[3*kkatmidx1-2] += grads.get<0>().x();
243 dE_dx[3*kkatmidx1-1] += grads.get<0>().y();
244 dE_dx[3*kkatmidx1 ] += grads.get<0>().z();
247 dE_dx[3*kkatmidx2-2] += grads.get<1>().x();
248 dE_dx[3*kkatmidx2-1] += grads.get<1>().y();
249 dE_dx[3*kkatmidx2 ] += grads.get<1>().z();
252 dE_dx[3*kkatmidx3-2] += grads.get<2>().x();
253 dE_dx[3*kkatmidx3-1] += grads.get<2>().y();
254 dE_dx[3*kkatmidx3 ] += grads.get<2>().z();
257 dE_dx[3*kkatmidx4-2] += grads.get<3>().x();
258 dE_dx[3*kkatmidx4-1] += grads.get<3>().y();
259 dE_dx[3*kkatmidx4 ] += grads.get<3>().z();