![]() |
Rosetta
2021.16
|
#include <PackDaemon.hh>

Public Member Functions | |
| DaemonSet () | |
| ~DaemonSet () override | |
| void | set_entity_resfile (std::string const &resfile) |
| void | set_entity_resfile (std::istream &resfile, std::string const &resfile_name) |
| void | set_score_function (ScoreFunction const &) |
| void | set_task_factory (core::pack::task::TaskFactoryOP factory) |
| void | set_include_background_energies (bool setting) |
| void | set_dlig_nmeg_limit (core::Size setting) |
| restrict the amount of memory spent on storing Rotamer Pair Energies in the DoubleLazyInteractionGraph; More... | |
| void | add_npdpro_calculator_creator (NPDPropCalculatorCreatorOP) |
| void | add_pack_daemon (core::Size daemon_index, std::string const &pdb_name, std::string const &correspondence_file_name, std::string const &secondary_resfile) |
| Each daemon is associated with an index representing its position in some master list somewhere. The DaemonSet is responsible for keeping this index. More... | |
| void | add_pack_daemon (core::Size daemon_index, std::string const &pose_file_name, Pose const &pose, std::string const &correspondence_file_filename, std::istream &correspondence_file, std::string const &secondary_refile_file_filename, std::istream &secondary_resfile) |
| void | add_npd_property_calculator_for_state (core::Size daemon_index, std::string const &npd_property, core::Size npd_index) |
| void | setup_daemons () |
| call daemon->setup() on all daemons, which will trigger the precomputation of all rotamer pair energies. More... | |
| core::Size | ndaemons () const |
| core::Size | n_npd_properties () const |
| StateEsAndNPDs | compute_energy_for_assignment (Entity const &entity) |
| Compute the state energies and, for those states requiring non-pairwise-decomposable-properties, the non-pairwise decomposable properties as well. Return them as a pair of lists. More... | |
| ConstDaemonList | daemons () const |
| void | mark_last_entity_as_important () |
| void | mark_entity_as_unimportant (Entity const &) |
| std::list< std::pair < core::Size, PoseOP > > | retrieve_relevant_poses_for_entity (Entity const &, DaemonIndices const &) const |
| core::pack::task::PackerTaskOP | entity_task () const |
| core::pack::task::ResfileContentsCOP | entity_resfile () const |
| void | activate_daemon_mode () |
| MPI related methods. More... | |
Private Member Functions | |
| void | process_add_daemon_message () |
| Private MPI related methods. More... | |
| void | process_state_energy_evaluations_for_entity () |
| When we receive a evaluate_entity signal, calculate the energies for that entity for each PackDaemon and send those energies back to the master node. More... | |
| void | process_discard_entity_message () |
| When we receive a discard_entity signal, pass that message on to the Daemons. More... | |
| void | process_pose_request_for_entity () |
| When we receive a pose_request signal, have the desired PackDaemons create the poses for that entity, and, ship them as PDB strings back to node 0. More... | |
| EntityOP | recieve_entity () const |
| Receive an entity string from node 0 and create an Entity object from that string. More... | |
| DaemonIndices | recieve_daemon_inds_requiring_pose_creation () const |
| Accept a list of daemon indices which should return a pose based on their state in the presence of a particular entity. More... | |
| void | graceful_exit () const |
| Call MPI_Finalize and exit. More... | |
Private Attributes | |
| ScoreFunctionOP | score_function_ |
| core::Size | num_entities_ |
| core::pack::task::TaskFactoryOP | task_factory_ |
| bool | include_background_energies_ |
| bool | limit_dlig_mem_usage_ |
| core::Size | dlig_nmeg_limit_ |
| core::pack::task::PackerTaskOP | entity_task_ |
| core::pack::task::ResfileContentsOP | entity_resfile_ |
| DaemonList | daemons_ |
| core::Size | ndaemons_ |
| std::map< std::string, NPDPropCalculatorCreatorOP > | npd_calculator_creators_ |
| utility::vector1< PoseOP > | daemon_poses_ |
| utility::vector1 < core::pack::task::PackerTaskOP > | daemon_tasks_ |
| utility::vector1< std::list < NPDIndAndCalc > > | npd_calcs_for_poses_ |
| core::Size | n_npd_properties_ |
| typedef utility::vector1< std::pair< core::Size, PackDaemonCOP > > protocols::pack_daemon::DaemonSet::ConstDaemonList |
| typedef ConstDaemonList::const_iterator protocols::pack_daemon::DaemonSet::ConstDaemonListIter |
| typedef utility::vector1< core::Size > protocols::pack_daemon::DaemonSet::DaemonIndices |
| typedef utility::vector1< std::pair< core::Size, PackDaemonOP > > protocols::pack_daemon::DaemonSet::DaemonList |
| typedef DaemonList::const_iterator protocols::pack_daemon::DaemonSet::DaemonListIter |
| typedef std::pair< core::Size, NPDPropCalculatorOP > protocols::pack_daemon::DaemonSet::NPDIndAndCalc |
| typedef std::pair< core::Size, core::Real > protocols::pack_daemon::DaemonSet::SizeRealPair |
| typedef std::list< SizeRealPair > protocols::pack_daemon::DaemonSet::SizeRealPairs |
| typedef std::pair< SizeRealPairs, SizeRealPairs > protocols::pack_daemon::DaemonSet::StateEsAndNPDs |
| protocols::pack_daemon::DaemonSet::DaemonSet | ( | ) |
|
overridedefault |
| void protocols::pack_daemon::DaemonSet::activate_daemon_mode | ( | ) |
MPI related methods.
receive and respond to remote repacking requests from node 0 until a spin-down signal is broadcast. This function does not return until all MPI requests have completed.
References protocols::pack_daemon::add_daemon, protocols::pack_daemon::discard_old_entity, protocols::pack_daemon::error_message, protocols::pack_daemon::evaluate_entity, protocols::pack_daemon::geneate_pose_from_old_state, graceful_exit(), protocols::pack_daemon::keep_rotamer_assignment_for_last_entity, mark_last_entity_as_important(), process_add_daemon_message(), process_discard_entity_message(), process_pose_request_for_entity(), process_state_energy_evaluations_for_entity(), protocols::pack_daemon::spin_down, and protocols::pack_daemon::success_message.
| void protocols::pack_daemon::DaemonSet::add_npd_property_calculator_for_state | ( | core::Size | daemon_index, |
| std::string const & | npd_property, | ||
| core::Size | npd_index | ||
| ) |
References daemon_poses_, daemon_tasks_, daemons_, n_npd_properties_, npd_calcs_for_poses_, npd_calculator_creators_, and core::id::to_string().
Referenced by process_add_daemon_message().
| void protocols::pack_daemon::DaemonSet::add_npdpro_calculator_creator | ( | NPDPropCalculatorCreatorOP | creator | ) |
References npd_calculator_creators_.
| void protocols::pack_daemon::DaemonSet::add_pack_daemon | ( | core::Size | daemon_index, |
| std::string const & | pdb_name, | ||
| std::string const & | correspondence_file_name, | ||
| std::string const & | secondary_resfile | ||
| ) |
Each daemon is associated with an index representing its position in some master list somewhere. The DaemonSet is responsible for keeping this index.
References core::import_pose::PDB_file, and core::import_pose::pose_from_file().
Referenced by process_add_daemon_message().
| void protocols::pack_daemon::DaemonSet::add_pack_daemon | ( | core::Size | daemon_index, |
| std::string const & | pose_file_name, | ||
| Pose const & | pose, | ||
| std::string const & | correspondence_file_filename, | ||
| std::istream & | correspondence_file, | ||
| std::string const & | secondary_refile_file_filename, | ||
| std::istream & | secondary_resfile | ||
| ) |
References daemon_poses_, daemon_tasks_, daemons_, dlig_nmeg_limit_, entity_resfile_, entity_task_, protocols::pack_daemon::error_message, include_background_energies_, protocols::pack_daemon::initialize_task_from_entity_resfile_and_secondary_resfile(), limit_dlig_mem_usage_, core::chemical::ResidueTypeBase::name(), ndaemons_, npd_calcs_for_poses_, core::chemical::num_canonical_aas, num_entities_, core::pose::Pose::residue_type(), score_function_, core::pose::Pose::size(), task_factory_, core::id::to_string(), and protocols::pack_daemon::TR().
| DaemonSet::StateEsAndNPDs protocols::pack_daemon::DaemonSet::compute_energy_for_assignment | ( | Entity const & | entity | ) |
Compute the state energies and, for those states requiring non-pairwise-decomposable-properties, the non-pairwise decomposable properties as well. Return them as a pair of lists.
References daemon_poses_, daemons_, core::sequence::end, protocols::buns::energy, n_npd_properties_, and npd_calcs_for_poses_.
Referenced by process_state_energy_evaluations_for_entity().
| DaemonSet::ConstDaemonList protocols::pack_daemon::DaemonSet::daemons | ( | ) | const |
References daemons_.
| core::pack::task::ResfileContentsCOP protocols::pack_daemon::DaemonSet::entity_resfile | ( | ) | const |
References entity_resfile_.
| core::pack::task::PackerTaskOP protocols::pack_daemon::DaemonSet::entity_task | ( | ) | const |
References entity_task_.
|
private |
Call MPI_Finalize and exit.
Referenced by activate_daemon_mode(), and process_add_daemon_message().
| void protocols::pack_daemon::DaemonSet::mark_entity_as_unimportant | ( | Entity const & | ent | ) |
References daemons_.
Referenced by process_discard_entity_message().
| void protocols::pack_daemon::DaemonSet::mark_last_entity_as_important | ( | ) |
References daemons_.
Referenced by activate_daemon_mode().
| core::Size protocols::pack_daemon::DaemonSet::n_npd_properties | ( | ) | const |
References n_npd_properties_.
| core::Size protocols::pack_daemon::DaemonSet::ndaemons | ( | ) | const |
References ndaemons_.
Referenced by process_state_energy_evaluations_for_entity().
|
private |
Private MPI related methods.
When we recieve an add_daemons message, recieve all the input files that go along with the set of daemons that should be added, and then proceed to read these files. Send back a shut-down signal and a message if any of the input files cannot be properly read. If all goes well, send back the ok signal.
References add_npd_property_calculator_for_state(), add_pack_daemon(), core::sequence::end, protocols::pack_daemon::error_message, graceful_exit(), core::import_pose::pose_from_pdbstring(), setup_daemons(), and protocols::pack_daemon::success_message.
Referenced by activate_daemon_mode().
|
private |
When we receive a discard_entity signal, pass that message on to the Daemons.
References mark_entity_as_unimportant(), and recieve_entity().
Referenced by activate_daemon_mode().
|
private |
When we receive a pose_request signal, have the desired PackDaemons create the poses for that entity, and, ship them as PDB strings back to node 0.
References core::io::pdb::dump_pdb(), recieve_daemon_inds_requiring_pose_creation(), recieve_entity(), and retrieve_relevant_poses_for_entity().
Referenced by activate_daemon_mode().
|
private |
When we receive a evaluate_entity signal, calculate the energies for that entity for each PackDaemon and send those energies back to the master node.
References compute_energy_for_assignment(), n_npd_properties_, ndaemons(), and recieve_entity().
Referenced by activate_daemon_mode().
|
private |
Accept a list of daemon indices which should return a pose based on their state in the presence of a particular entity.
Referenced by process_pose_request_for_entity().
|
private |
Receive an entity string from node 0 and create an Entity object from that string.
Referenced by process_discard_entity_message(), process_pose_request_for_entity(), and process_state_energy_evaluations_for_entity().
| std::list< std::pair< core::Size, core::pose::PoseOP > > protocols::pack_daemon::DaemonSet::retrieve_relevant_poses_for_entity | ( | Entity const & | ent, |
| DaemonIndices const & | daemon_indices | ||
| ) | const |
References daemons_.
Referenced by process_pose_request_for_entity().
| void protocols::pack_daemon::DaemonSet::set_dlig_nmeg_limit | ( | core::Size | setting | ) |
restrict the amount of memory spent on storing Rotamer Pair Energies in the DoubleLazyInteractionGraph;
References dlig_nmeg_limit_, and limit_dlig_mem_usage_.
| void protocols::pack_daemon::DaemonSet::set_entity_resfile | ( | std::string const & | resfile | ) |
The entity resfile is slightly different from a regular resfile. Its first line should consist of the number of residues that are entity; the rest of the resfile lists those residues numbering from 1.
| void protocols::pack_daemon::DaemonSet::set_entity_resfile | ( | std::istream & | resfile, |
| std::string const & | resfile_name | ||
| ) |
| void protocols::pack_daemon::DaemonSet::set_include_background_energies | ( | bool | setting | ) |
References include_background_energies_.
| void protocols::pack_daemon::DaemonSet::set_score_function | ( | ScoreFunction const & | sfxn | ) |
References core::scoring::ScoreFunction::clone(), and score_function_.
| void protocols::pack_daemon::DaemonSet::set_task_factory | ( | core::pack::task::TaskFactoryOP | factory | ) |
References task_factory_.
| void protocols::pack_daemon::DaemonSet::setup_daemons | ( | ) |
call daemon->setup() on all daemons, which will trigger the precomputation of all rotamer pair energies.
References daemons_.
Referenced by process_add_daemon_message().
|
private |
Referenced by add_npd_property_calculator_for_state(), add_pack_daemon(), and compute_energy_for_assignment().
|
private |
Referenced by add_npd_property_calculator_for_state(), and add_pack_daemon().
|
private |
|
private |
Referenced by add_pack_daemon(), and set_dlig_nmeg_limit().
|
private |
Referenced by add_pack_daemon(), entity_resfile(), and set_entity_resfile().
|
private |
Referenced by add_pack_daemon(), entity_task(), and set_entity_resfile().
|
private |
Referenced by add_pack_daemon(), and set_include_background_energies().
|
private |
Referenced by add_pack_daemon(), and set_dlig_nmeg_limit().
|
private |
|
private |
Referenced by add_pack_daemon(), and ndaemons().
|
private |
Referenced by add_npd_property_calculator_for_state(), add_pack_daemon(), and compute_energy_for_assignment().
|
private |
Referenced by add_npd_property_calculator_for_state(), and add_npdpro_calculator_creator().
|
private |
Referenced by add_pack_daemon(), and set_entity_resfile().
|
private |
Referenced by add_pack_daemon(), and set_score_function().
|
private |
Referenced by add_pack_daemon(), and set_task_factory().
1.8.7