Rosetta 3.4
Public Member Functions | Static Public Attributes | Protected Member Functions
core::pack::interaction_graph::DoubleLazyEdge Class Reference

#include <DoubleLazyInteractionGraph.hh>

Inheritance diagram for core::pack::interaction_graph::DoubleLazyEdge:
Inheritance graph
[legend]
Collaboration diagram for core::pack::interaction_graph::DoubleLazyEdge:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 DoubleLazyEdge (InteractionGraphBase *owner, int first_node_ind, int second_node_ind)
virtual ~DoubleLazyEdge ()
virtual void set_sparse_aa_info (FArray2_bool const &)
virtual void force_aa_neighbors (int node1aa, int node2aa)
virtual void force_all_aa_neighbors ()
virtual bool get_sparse_aa_info (int node1aa, int node2aa) const
 returns whether two amino acid types are represented as neighbors
virtual core::PackerEnergy get_two_body_energy (int const node1state, int const node2state) const
core::PackerEnergy get_two_body_energy_smi (int const node1state, int const node2state, SparseMatrixIndex const &node1info, SparseMatrixIndex const &node2info) const
virtual void declare_energies_final ()
virtual void prepare_for_simulated_annealing ()
core::PackerEnergy get_current_two_body_energy () const
void acknowledge_state_change (int node_ind, int new_state, SparseMatrixIndex const &new_state_sparse_info, core::PackerEnergy &new_energy)
void acknowledge_state_zeroed (int node_ind)
void acknowledge_partial_state_change (int node_ind, int new_state, SparseMatrixIndex const &new_state_sparse_info)
core::PackerEnergy get_energy_following_partial_state_assignment ()
void acknowledge_substitution (int substituted_node_index, core::PackerEnergy const curr_state_energy, int nodes_new_state, SparseMatrixIndex const &nodes_new_state_sparse_info)
void set_edge_weight (Real weight)
int get_two_body_table_size () const
void print_current_energy () const
bool build_sc_only_rotamer ()
ObjexxFCL::FArray2D
< core::PackerEnergy
get_aa_submatrix_energies (int node1aa, int node2aa) const
virtual unsigned int count_static_memory () const
virtual unsigned int count_dynamic_memory () const
unsigned int actual_twobody_memory_use () const
unsigned int potential_twobody_memory_use () const
void set_edge_index (int index)
 For use by the DoubleLazyInteractionGraph only; sets the edge index for this edge -- this is an arbitrary index, but is used to so that the DLIG can communicate back and forth with this edge.
int drop_aa_submatrix (int submat_ind) const
 For use by the DoubleLazyInteractionGraph only; if the DLIG is in "memory conservation" mode, then it may request that its edges drop certain amino acid submatrices which have not been activated for a "long time." This function will cause an amino-acid submatrix to be dropped, and will return the number of bytes that have been freed in the process. "const" but accesses mutable data.

Static Public Attributes

static core::PackerEnergy const NOT_YET_COMPUTED_ENERGY = -1234

Protected Member Functions

void declare_energies_final_no_deletion ()
void prepare_for_simulated_annealing_no_deletion ()
bool pd_edge_table_all_zeros () const

Constructor & Destructor Documentation

core::pack::interaction_graph::DoubleLazyEdge::DoubleLazyEdge ( InteractionGraphBase owner,
int  first_node_ind,
int  second_node_ind 
)

DoubleLazyEdge::DoubleLazyEdge

Detailed:
Parameters:
Global Read:
Global Write:
Remarks:
References:
Authors:
apl
Last Modified:
core::pack::interaction_graph::DoubleLazyEdge::~DoubleLazyEdge ( ) [virtual]

explicity deallocate the FArrays that were dynamically allocated


Member Function Documentation

void core::pack::interaction_graph::DoubleLazyEdge::acknowledge_partial_state_change ( int  node_ind,
int  new_state,
SparseMatrixIndex const &  new_state_sparse_info 
)
void core::pack::interaction_graph::DoubleLazyEdge::acknowledge_state_change ( int  node_ind,
int  new_state,
SparseMatrixIndex const &  new_state_sparse_info,
core::PackerEnergy new_energy 
)
void core::pack::interaction_graph::DoubleLazyEdge::acknowledge_state_zeroed ( int  node_ind)
void core::pack::interaction_graph::DoubleLazyEdge::acknowledge_substitution ( int  substituted_node_index,
core::PackerEnergy const  curr_state_energy,
int  nodes_new_state,
SparseMatrixIndex const &  nodes_new_state_sparse_info 
) [inline]
unsigned int core::pack::interaction_graph::DoubleLazyEdge::actual_twobody_memory_use ( ) const
bool core::pack::interaction_graph::DoubleLazyEdge::build_sc_only_rotamer ( ) [inline]
unsigned int core::pack::interaction_graph::DoubleLazyEdge::count_dynamic_memory ( ) const [virtual]

add up all the submatrices

Reimplemented from core::pack::interaction_graph::OnTheFlyEdge.

References actual_twobody_memory_use().

unsigned int core::pack::interaction_graph::DoubleLazyEdge::count_static_memory ( ) const [virtual]
void core::pack::interaction_graph::DoubleLazyEdge::declare_energies_final ( ) [virtual]
void core::pack::interaction_graph::DoubleLazyEdge::declare_energies_final_no_deletion ( ) [inline, protected]
int core::pack::interaction_graph::DoubleLazyEdge::drop_aa_submatrix ( int  submat_ind) const

For use by the DoubleLazyInteractionGraph only; if the DLIG is in "memory conservation" mode, then it may request that its edges drop certain amino acid submatrices which have not been activated for a "long time." This function will cause an amino-acid submatrix to be dropped, and will return the number of bytes that have been freed in the process. "const" but accesses mutable data.

void core::pack::interaction_graph::DoubleLazyEdge::force_aa_neighbors ( int  node1aa,
int  node2aa 
) [virtual]
void core::pack::interaction_graph::DoubleLazyEdge::force_all_aa_neighbors ( ) [virtual]
ObjexxFCL::FArray2D< core::PackerEnergy > core::pack::interaction_graph::DoubleLazyEdge::get_aa_submatrix_energies ( int  node1aa,
int  node2aa 
) const
core::PackerEnergy core::pack::interaction_graph::DoubleLazyEdge::get_current_two_body_energy ( ) const

DoubleLazyEdge::get_current_two_body_energy

Detailed:
Parameters:
Global Read:
Global Write:
Remarks:
References:
Authors:
apl
Last Modified:

Referenced by core::pack::interaction_graph::DoubleLazyNode::update_internal_energy_sums().

core::PackerEnergy core::pack::interaction_graph::DoubleLazyEdge::get_energy_following_partial_state_assignment ( )
bool core::pack::interaction_graph::DoubleLazyEdge::get_sparse_aa_info ( int  node1aa,
int  node2aa 
) const [virtual]

returns whether two amino acid types are represented as neighbors

Implements core::pack::interaction_graph::FixedBBEdge.

core::PackerEnergy core::pack::interaction_graph::DoubleLazyEdge::get_two_body_energy ( int const  node1state,
int const  node2state 
) const [virtual]
core::PackerEnergy core::pack::interaction_graph::DoubleLazyEdge::get_two_body_energy_smi ( int const  node1state,
int const  node2state,
SparseMatrixIndex const &  node1info,
SparseMatrixIndex const &  node2info 
) const
int core::pack::interaction_graph::DoubleLazyEdge::get_two_body_table_size ( ) const

DoubleLazyEdge::get_two_body_table_size

Detailed:
Parameters:
Global Read:
Global Write:
Remarks:
References:
Authors:
apl
Last Modified:
bool core::pack::interaction_graph::DoubleLazyEdge::pd_edge_table_all_zeros ( ) const [inline, protected]
unsigned int core::pack::interaction_graph::DoubleLazyEdge::potential_twobody_memory_use ( ) const
void core::pack::interaction_graph::DoubleLazyEdge::prepare_for_simulated_annealing ( ) [virtual]
void core::pack::interaction_graph::DoubleLazyEdge::prepare_for_simulated_annealing_no_deletion ( ) [inline, protected]
void core::pack::interaction_graph::DoubleLazyEdge::print_current_energy ( ) const
void core::pack::interaction_graph::DoubleLazyEdge::set_edge_index ( int  index)

For use by the DoubleLazyInteractionGraph only; sets the edge index for this edge -- this is an arbitrary index, but is used to so that the DLIG can communicate back and forth with this edge.

This function is only invoked if the graph is going to attempt to use a memory-use cap. The edge_index_ serves to both identify that the memory-use cap is in effect, and to allow efficient communication between the graph and its edges.

Referenced by core::pack::interaction_graph::DoubleLazyInteractionGraph::prepare_for_simulated_annealing().

void core::pack::interaction_graph::DoubleLazyEdge::set_edge_weight ( Real  weight) [virtual]
void core::pack::interaction_graph::DoubleLazyEdge::set_sparse_aa_info ( FArray2_bool const &  aa_neighbors) [virtual]

Member Data Documentation


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines