15 #ifndef INCLUDED_core_pack_interaction_graph_FASTERInteractionGraph_hh
16 #define INCLUDED_core_pack_interaction_graph_FASTERInteractionGraph_hh
31 #include <ObjexxFCL/FArray1D.hh>
32 #include <ObjexxFCL/FArray2D.hh>
33 #include <ObjexxFCL/FArray2A.hh>
38 namespace interaction_graph {
50 virtual void print()
const;
77 int edge_to_altered_neighbor,
79 int other_node_new_state);
132 int neighbors_new_state
137 int const neighbors_perturbed_state
243 int first_node_state,
244 int second_node_state,
245 ObjexxFCL::FArray2< core::PackerEnergy > & edge_energy_table
249 int substituted_node_index,
272 int nodes_perturbed_state
278 int neighbors_context_state
289 ObjexxFCL::FArray2D< core::PackerEnergy > & new_edge_table
385 swap_edge_energies(
int node1,
int node2, ObjexxFCL::FArray2D< core::PackerEnergy > & new_edge_table );
488 int edge_to_altered_neighbor,
490 int other_node_new_state
495 curr_state_two_body_energies_[edge_to_altered_neighbor] = new_edge_energy;
512 int first_node_state,
513 int second_node_state,
514 ObjexxFCL::FArray2< core::PackerEnergy > & edge_energy_table
517 if (first_node_state == 0 || second_node_state == 0) {
520 return edge_energy_table( second_node_state, first_node_state );
534 int substituted_node_index,
539 int node_substituted = substituted_node_index ==
get_node_index(0) ? 0 : 1;
540 int node_not_substituted = ! node_substituted;