Rosetta
|
Periodically output miscellaneous information. More...
#include <MetricRecorder.hh>
Public Member Functions | |
MetricRecorder () | |
Default constructor. More... | |
~MetricRecorder () override | |
Default destructor. More... | |
MetricRecorder (MetricRecorder const &) | |
Copy constructor. More... | |
MetricRecorder & | operator= (MetricRecorder const &)=delete |
Assignment operator. More... | |
protocols::moves::MoverOP | clone () const override |
Return a copy of this mover. More... | |
protocols::moves::MoverOP | fresh_instance () const override |
Return a newly instantiated mover. More... | |
void | parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data) override |
Return the name of this mover. More... | |
bool | reinitialize_for_each_job () const override |
Return true. This mover needs to be reinitialized for each job. More... | |
std::string const & | file_name () const |
Return the name of the file being written to. More... | |
void | file_name (std::string const &file_name) |
Set the name of the file being written to. More... | |
core::Size | stride () const |
Return the frequency with which data is written. More... | |
void | stride (core::Size stride) |
Set the frequency with which data is written. More... | |
bool | cumulate_jobs () const |
Return true if every job is being reported to the same file. More... | |
void | cumulate_jobs (bool cumulate_jobs) |
Indicate whether or not every job should be reported to the same file. More... | |
bool | cumulate_replicas () const |
Return true if every replica is being reported to the same file. More... | |
void | cumulate_replicas (bool cumulate_replicas) |
Indicate whether or not every replica should be reported to the same file. More... | |
bool | prepend_output_name () const |
Return true if the job name should be prepended onto the output filename. More... | |
void | prepend_output_name (bool prepend_output_name) |
Indicate whether or not the job name should be prepended onto the output filename. More... | |
void | add_torsion (core::id::TorsionID const &torsion_id, std::string const &name="") |
Include the given torsion in the output. More... | |
void | add_torsion (core::pose::Pose const &pose, std::string const &rsd, std::string const &type, core::Size torsion, std::string const &name="") |
Include the given torsion in the output. More... | |
void | add_torsion (TorsionSpec const &torsion) |
void | reset (core::pose::Pose const &pose, protocols::canonical_sampling::MetropolisHastingsMover const *metropolis_hastings_mover=nullptr) |
Truncate the output file and rewrite the output header. More... | |
void | update_after_boltzmann (core::pose::Pose const &pose, protocols::canonical_sampling::MetropolisHastingsMover const *metropolis_hastings_mover=nullptr) |
Write information like temperature, score, and torsion angles to a file. More... | |
void | apply (core::pose::Pose &pose) override |
Just invoke update_after_boltzmann() with a const pose. More... | |
void | initialize_simulation (core::pose::Pose &pose, protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover, core::Size cycle) override |
Callback executed before any Monte Carlo trials are attempted. More... | |
void | observe_after_metropolis (protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover) override |
Callback executed after the Metropolis criterion is evaluated. More... | |
void | finalize_simulation (core::pose::Pose &pose, protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover) override |
Callback executed after all Monte Carlo trials are completed. More... | |
std::string | get_name () const override |
Each derived class must specify its name. The class name. More... | |
![]() | |
ThermodynamicObserver () | |
Default constructor. More... | |
~ThermodynamicObserver () override | |
Destructor. More... | |
void | apply (core::pose::Pose &) override |
Callback executed after each move is made. More... | |
virtual bool | restart_simulation (core::pose::Pose &, MetropolisHastingsMover &, core::Size &, core::Size &, core::Real &) |
Attempt to restart the last simulation that was recorded by this observer. More... | |
virtual bool | requires_pose () |
Return false if this observer does not require a valid pose. TrialCounterObserver is an example of such an observer. More... | |
![]() | |
Mover () | |
virtual MoverOP | create () |
MoverCOP | get_self_ptr () const |
MoverOP | get_self_ptr () |
MoverCAP | get_self_weak_ptr () const |
MoverAP | get_self_weak_ptr () |
Mover (std::string const &type_name) | |
sets the type for a mover; name_ has been removed (2010/05/14) More... | |
virtual void | test_move (Pose &pose) |
: Unit test support function. Apply one move to a given pose. Allows extra test specific functions to be called before applying More... | |
virtual bool | reinitialize_for_new_input () const |
Inform the Job Distributor (August '08 vintage) whether this object needs to be regenerated when the input pose is about to change, (for example, if the Mover has special code on the first apply() that is only valid for that one input pose). More... | |
MoverStatus | get_last_move_status () const |
end parser interface, start Job Distributor interface///////////// More... | |
void | reset_status () |
resets status to SUCCESS, meant to be used before an apply(). The job distributor (august 08 vintage) uses this to ensure non-accumulation of status across apply()s. More... | |
virtual core::pose::PoseOP | get_additional_output () |
Mechanism by which a mover may return multiple output poses from a single input pose. More... | |
void | set_type (std::string const &setting) |
Set the 'type' string. More... | |
std::string | get_type () const |
void | type (const std::string &type_in) |
Set the 'type' string. More... | |
std::string const & | type () const |
Get the set 'type' string. More... | |
virtual void | set_input_pose (PoseCOP pose) |
setter for poses contained for rms More... | |
virtual void | set_native_pose (PoseCOP pose) |
setter for native poses contained for rms -— we should get rid of this method? it is widely used, but a bit unsafe More... | |
PoseCOP | get_input_pose () const |
PoseCOP | get_native_pose () const |
void | set_current_job (protocols::jobdist::BasicJobCOP job) |
jobdist::BasicJobCOP | get_current_job () const |
virtual void | set_current_tag (std::string const &new_tag) |
std::string | get_current_tag () const |
A tag is a unique identifier used to identify structures produced by this Mover. get_current_tag() returns the tag, and set_current_tag( std::string tag ) sets the tag. This functionality is not intended for use with the 2008 job distributor. More... | |
virtual void | show (std::ostream &output=std::cout) const |
Outputs details about the Mover, including current settings. More... | |
virtual core::Real | last_proposal_density_ratio () |
virtual void | clear_info () |
Strings container can be used to return miscellaneous info (as std::string) from a mover, such as notes about the results of apply(). The job distributor (Apr 09 vintage) will check this function to see if your protocol wants to add string info to the Job that ran this mover. One way this can be useful is that later, a JobOutputter may include/append this info to an output file. More... | |
virtual Strings & | info () |
non-const accessor More... | |
virtual Strings const & | info () const |
const accessor More... | |
virtual void | provide_citation_info (basic::citation_manager::CitationCollectionList &) const |
Provide citations to the passed CitationCollectionList Subclasses should add the info for themselves and any other classes they use. More... | |
Static Public Member Functions | |
static std::string | mover_name () |
static void | provide_xml_schema (utility::tag::XMLSchemaDefinition &xsd) |
![]() | |
static std::string | name () |
static void | register_options () |
Overload this static method if you access options within the mover. More... | |
Protected Member Functions | |
void | add_torsion (utility::vector1< std::pair< core::id::TorsionID, std::string > > &torsion_ids, core::Size rsd, std::string type, core::Size torsion, std::string const &name="") const |
utility::vector1< std::pair< core::id::TorsionID, std::string > > | get_torsion_ids (core::pose::Pose const &pose) const |
Expand the list of torsion ids based on the Pose. More... | |
![]() | |
void | set_last_move_status (MoverStatus status) |
nonvirtual setter for MoverStatus last_status_. Protected means that only the mover itself will be able to change its own status. The job distributor (august 08 vintage) is aware of status set with this function and will do what the MoverStatus says. More... | |
Private Attributes | |
std::string | file_name_ |
core::Size | stride_ |
bool | cumulate_jobs_ |
bool | cumulate_replicas_ |
bool | prepend_output_name_ |
core::Size | step_count_ |
utility::io::ozstream | recorder_stream_ |
utility::vector1< std::pair< core::id::TorsionID, std::string > > | torsion_ids_ |
utility::vector1< TorsionSpec > | torsion_specs_ |
time_t | last_flush_ |
Additional Inherited Members | |
![]() | |
typedef utility::tag::TagCOP | TagCOP |
typedef core::pose::Pose | Pose |
typedef core::pose::PoseCOP | PoseCOP |
typedef std::list< std::string > | Strings |
Periodically output miscellaneous information.
This class is capable of writing out a variety of data related to the trajectory. This includes the job name, the replica, the temperature, and the score. Any number of torsion angles can also be added to the report using add_torsion(). Methods are also provided for specifying an output filename. Most of the IO work is done by update_after_boltzmann().
protocols::canonical_sampling::MetricRecorder::MetricRecorder | ( | ) |
Default constructor.
|
overridedefault |
Default destructor.
protocols::canonical_sampling::MetricRecorder::MetricRecorder | ( | MetricRecorder const & | other | ) |
Copy constructor.
void protocols::canonical_sampling::MetricRecorder::add_torsion | ( | core::id::TorsionID const & | torsion_id, |
std::string const & | name = "" |
||
) |
Include the given torsion in the output.
References protocols::moves::Mover::name(), core::id::TorsionID::str(), torsion_ids_, and core::id::TorsionID::valid().
Referenced by add_torsion(), get_torsion_ids(), and parse_my_tag().
void protocols::canonical_sampling::MetricRecorder::add_torsion | ( | core::pose::Pose const & | pose, |
std::string const & | rsd, | ||
std::string const & | type, | ||
core::Size | torsion, | ||
std::string const & | name = "" |
||
) |
Include the given torsion in the output.
References add_torsion(), protocols::moves::Mover::name(), core::pose::parse_resnum(), torsion_ids_, and protocols::moves::Mover::type().
void protocols::canonical_sampling::MetricRecorder::add_torsion | ( | TorsionSpec const & | torsion | ) |
References torsion_specs_.
|
protected |
|
overridevirtual |
Just invoke update_after_boltzmann() with a const pose.
Implements protocols::moves::Mover.
References update_after_boltzmann().
|
overridevirtual |
Return a copy of this mover.
Reimplemented from protocols::moves::Mover.
bool protocols::canonical_sampling::MetricRecorder::cumulate_jobs | ( | ) | const |
Return true if every job is being reported to the same file.
References cumulate_jobs_.
Referenced by cumulate_jobs().
void protocols::canonical_sampling::MetricRecorder::cumulate_jobs | ( | bool | cumulate_jobs | ) |
Indicate whether or not every job should be reported to the same file.
References cumulate_jobs(), and cumulate_jobs_.
bool protocols::canonical_sampling::MetricRecorder::cumulate_replicas | ( | ) | const |
Return true if every replica is being reported to the same file.
References cumulate_replicas_.
Referenced by cumulate_replicas().
void protocols::canonical_sampling::MetricRecorder::cumulate_replicas | ( | bool | cumulate_replicas | ) |
Indicate whether or not every replica should be reported to the same file.
References cumulate_replicas(), and cumulate_replicas_.
std::string const & protocols::canonical_sampling::MetricRecorder::file_name | ( | ) | const |
Return the name of the file being written to.
References file_name_.
Referenced by file_name(), and initialize_simulation().
void protocols::canonical_sampling::MetricRecorder::file_name | ( | std::string const & | file_name | ) |
Set the name of the file being written to.
References file_name(), and file_name_.
|
overridevirtual |
Callback executed after all Monte Carlo trials are completed.
Reimplemented from protocols::canonical_sampling::ThermodynamicObserver.
References recorder_stream_.
|
overridevirtual |
Return a newly instantiated mover.
Reimplemented from protocols::moves::Mover.
|
overridevirtual |
Each derived class must specify its name. The class name.
Implements protocols::moves::Mover.
References mover_name().
|
protected |
Expand the list of torsion ids based on the Pose.
References add_torsion(), protocols::canonical_sampling::AllBB, protocols::canonical_sampling::AllChi, core::chemical::ResidueTypeBase::name3(), core::pose::parse_resnum(), core::pose::Pose::residue_type(), protocols::canonical_sampling::Single, core::pose::Pose::size(), core::id::to_string(), torsion_ids_, and torsion_specs_.
Referenced by update_after_boltzmann().
|
overridevirtual |
Callback executed before any Monte Carlo trials are attempted.
Reimplemented from protocols::canonical_sampling::ThermodynamicObserver.
References cumulate_jobs_, cumulate_replicas_, file_name(), protocols::canonical_sampling::MetropolisHastingsMover::monte_carlo(), protocols::canonical_sampling::MetropolisHastingsMover::output_file_name(), and reset().
|
static |
|
overridevirtual |
Callback executed after the Metropolis criterion is evaluated.
Implements protocols::canonical_sampling::ThermodynamicObserver.
References protocols::canonical_sampling::MetropolisHastingsMover::monte_carlo(), and update_after_boltzmann().
|
delete |
Assignment operator.
|
overridevirtual |
Return the name of this mover.
Use a RosettaScripts tag to configure this mover.
Reimplemented from protocols::moves::Mover.
References add_torsion(), protocols::canonical_sampling::AllBB, protocols::canonical_sampling::AllChi, cumulate_jobs_, cumulate_replicas_, file_name_, protocols::canonical_sampling::TorsionSpec::name, protocols::canonical_sampling::TorsionSpec::number, prepend_output_name_, protocols::canonical_sampling::TorsionSpec::rsd, protocols::canonical_sampling::Single, stride_, protocols::canonical_sampling::TorsionSpec::style, and protocols::canonical_sampling::TorsionSpec::type.
bool protocols::canonical_sampling::MetricRecorder::prepend_output_name | ( | ) | const |
Return true if the job name should be prepended onto the output filename.
References prepend_output_name_.
Referenced by prepend_output_name().
void protocols::canonical_sampling::MetricRecorder::prepend_output_name | ( | bool | prepend_output_name | ) |
Indicate whether or not the job name should be prepended onto the output filename.
References prepend_output_name(), and prepend_output_name_.
|
static |
|
inlineoverridevirtual |
Return true. This mover needs to be reinitialized for each job.
Reimplemented from protocols::moves::Mover.
void protocols::canonical_sampling::MetricRecorder::reset | ( | core::pose::Pose const & | pose, |
protocols::canonical_sampling::MetropolisHastingsMover const * | metropolis_hastings_mover = nullptr |
||
) |
Truncate the output file and rewrite the output header.
This method may not actually truncate the output file. It really just closes and reopens the file, and I'm not sure whether or not it picks a new name when it does the reopening.
References recorder_stream_, step_count_, and update_after_boltzmann().
Referenced by initialize_simulation().
core::Size protocols::canonical_sampling::MetricRecorder::stride | ( | ) | const |
void protocols::canonical_sampling::MetricRecorder::stride | ( | core::Size | stride | ) |
void protocols::canonical_sampling::MetricRecorder::update_after_boltzmann | ( | core::pose::Pose const & | pose, |
protocols::canonical_sampling::MetropolisHastingsMover const * | metropolis_hastings_mover = nullptr |
||
) |
Write information like temperature, score, and torsion angles to a file.
References cumulate_jobs_, cumulate_replicas_, protocols::jd2::current_nstruct_index(), protocols::jd2::current_output_name(), protocols::jd2::current_replica(), core::pose::Pose::energies(), file_name_, get_torsion_ids(), protocols::jd2::jd2_used(), last_flush_, protocols::canonical_sampling::MetropolisHastingsMover::monte_carlo(), protocols::canonical_sampling::MetropolisHastingsMover::output_name(), prepend_output_name_, recorder_stream_, step_count_, stride_, protocols::canonical_sampling::MetropolisHastingsMover::tempering(), core::pose::Pose::torsion(), and core::scoring::Energies::total_energy().
Referenced by apply(), observe_after_metropolis(), and reset().
|
private |
Referenced by cumulate_jobs(), initialize_simulation(), parse_my_tag(), and update_after_boltzmann().
|
private |
Referenced by cumulate_replicas(), initialize_simulation(), parse_my_tag(), and update_after_boltzmann().
|
private |
Referenced by file_name(), parse_my_tag(), and update_after_boltzmann().
|
private |
Referenced by update_after_boltzmann().
|
private |
Referenced by parse_my_tag(), prepend_output_name(), and update_after_boltzmann().
|
private |
Referenced by finalize_simulation(), reset(), and update_after_boltzmann().
|
private |
Referenced by reset(), and update_after_boltzmann().
|
private |
Referenced by parse_my_tag(), stride(), and update_after_boltzmann().
|
private |
Referenced by add_torsion(), and get_torsion_ids().
|
private |
Referenced by add_torsion(), and get_torsion_ids().