40 #include <basic/prof.hh>
63 #include <numeric/xyzVector.hh>
69 #include <utility/vector1.hh>
95 potential_( scoring::
ScoringManager::get_instance()->get_MMLJEnergyTable() )
124 library.nblist_dis2_cutoff_XX(),
125 library.nblist_dis2_cutoff_XH(),
126 library.nblist_dis2_cutoff_HH())
131 nblist->set_auto_update( 1 );
134 nblist->setup( pose, sfxn, *
this );
151 using namespace trie;
160 tries->trie( ii, one_rotamer_trie );
175 using namespace trie;
176 using namespace etable::etrie;
177 using namespace core::scoring::mm::mmtrie;
180 if ( cpdata_map.n_entries() == 1 || cpdata_map.n_entries() == 0 ) {
183 }
else if ( cpdata_map.n_entries() == 2 ) {
186 }
else if ( cpdata_map.n_entries() == 3 ) {
190 std::cerr <<
"Unsupported number of residue connections in trie construction." << std::endl;
202 using namespace trie;
203 using namespace etable::etrie;
204 using namespace core::scoring::mm::mmtrie;
207 if ( cpdata_map.n_entries() == 1 || cpdata_map.n_entries() == 0 ) {
210 }
else if ( cpdata_map.n_entries() == 2 ) {
213 }
else if ( cpdata_map.n_entries() == 3 ) {
217 std::cerr <<
"Unsupported number of residue connections in trie construction." << std::endl;
244 using namespace trie;
249 TrieCollection & trie_collection
251 trie_collection.trie( resid, one_rotamer_trie );
271 using namespace chemical;
272 using namespace conformation;
273 using namespace etable;
274 using namespace count_pair;
276 Real total_rep( 0.0 ), total_atr( 0.0 );
282 Size const & rsd2natom = rsd2type.natoms();
289 for (
int i = 1, i_end = rsd1natom; i <= i_end; ++i ) {
291 for (
int j = 1, j_end = rsd2natom; j <= j_end; ++j ) {
298 if ( cpfxn->count( i, j, weight, path_dist ) ) {
300 Real dist_squared( atom1.xyz().distance_squared( atom2.xyz() ) );
303 potential_.
score( rsd1type.atom( i ).mm_atom_type_index(), rsd2type.atom( j ).mm_atom_type_index(), path_dist, dist_squared, rep, atr );
306 std::cout <<
"REP NAN REP NAN REP NAN" << std::endl;
308 potential_.
score( rsd1type.atom( i ).mm_atom_type_index(), rsd2type.atom( j ).mm_atom_type_index(), path_dist, dist_squared, rep, atr );
311 std::cout <<
"ATR NAN ATR NAN ATR NAN" << std::endl;
313 potential_.
score( rsd1type.atom( i ).mm_atom_type_index(), rsd2type.atom( j ).mm_atom_type_index(), path_dist, dist_squared, rep, atr );
363 for ( scoring::AtomNeighbors::const_iterator iter=nbrs.begin(), iter_end=nbrs.end(); iter != iter_end; ++iter ) {
375 Real dist_squared( atom1.
xyz().distance_squared( atom2.
xyz() ) );
381 Real drep(0), datr(0);
384 Real deriv( drep + datr );
386 if ( deriv != 0.0 ) {
392 utility_exit_with_message(
"non-nblist minimize!");
411 ObjexxFCL::FArray2D< core::PackerEnergy > & energy_table
416 using namespace methods;
417 using namespace trie;
418 ObjexxFCL::FArray2D< core::PackerEnergy > temp_table1( energy_table );
419 ObjexxFCL::FArray2D< core::PackerEnergy > temp_table2( energy_table );
421 temp_table1 = 0; temp_table2 = 0;
437 trie1->trie_vs_trie( *trie2, *cp, *
this, temp_table1, temp_table2 );
440 energy_table += temp_table1;
454 using namespace methods;
455 using namespace trie;
473 trie1->trie_vs_path( *trie2, *cp, *
this, temp_vector1, temp_vector2 );
477 energy_vector[ ii ] += temp_vector1[ ii ];
517 using namespace etable;
518 using namespace count_pair;
531 using namespace etable;
532 using namespace count_pair;
569 using namespace etable::count_pair;
570 using namespace trie;
571 using namespace etable::etrie;
576 Size conn1 = trie1->get_count_pair_data_for_residue( res2.
seqpos() );
577 Size conn2 = trie2->get_count_pair_data_for_residue( res1.
seqpos() );
580 tcpfxn =
new TrieCountPair1BC3( conn1, conn2 );
582 tcpfxn =
new TrieCountPairAll;