![]() |
Rosetta Protocols
2014.16.56682
|
Record a trajectory to an SQL database. More...
#include <DbTrajectoryRecorder.hh>
Classes | |
| struct | Frame |
| Helper struct used store cached poses. More... | |
Public Member Functions | |
| DbTrajectoryRecorder () | |
| Default constructor. More... | |
| DbTrajectoryRecorder (core::Size job_id) | |
| Constructor with a job_id parameter to use as a foreign key. More... | |
| DbTrajectoryRecorder (core::Size job_id, core::Size temp_level) | |
| Constructor with job_id and temp_level parameters. More... | |
| DbTrajectoryRecorder (DbTrajectoryRecorder const &) | |
| Copy constructor. More... | |
| protocols::moves::MoverOP | clone () const |
| Return a clone of the Mover object. More... | |
| protocols::moves::MoverOP | fresh_instance () const |
| Generates a new Mover object freshly created with the default ctor. More... | |
| std::string | get_name () const |
| Return the name of this mover. More... | |
| core::Size | job_id () const |
| Return the job id that will be used as a foreign key in the trajectory table that gets generated. More... | |
| void | set_job_id (core::Size id) |
| Set the job id that will be used as a foreign key in the trajectory table that gets generated. More... | |
| core::Size | temp_level () const |
| Return the temperature level that this observer is focusing on. More... | |
| void | set_temp_level (core::Size level) |
| Set the temperature level that this observer should focus on. More... | |
| void | initialize_simulation (core::pose::Pose &pose, MetropolisHastingsMover const &mover, core::Size cycle) |
| Callback executed before any Monte Carlo trials are attempted. More... | |
| void | finalize_simulation (core::pose::Pose &pose, MetropolisHastingsMover const &mover) |
| Callback executed after all Monte Carlo trials are completed. More... | |
| bool | restart_simulation (core::pose::Pose &pose, MetropolisHastingsMover &mover, core::Size &cycle, core::Size &temp_level, core::Real &temperature) |
| Not implemented, except to complain if accidentally used. More... | |
Public Member Functions inherited from protocols::canonical_sampling::TrajectoryRecorder | |
| TrajectoryRecorder () | |
| Default constructor. More... | |
| ~TrajectoryRecorder () | |
| Destructor. More... | |
| TrajectoryRecorder (TrajectoryRecorder const &) | |
| Copy constructor. More... | |
| virtual void | parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data, protocols::filters::Filters_map const &filters, protocols::moves::Movers_map const &movers, core::pose::Pose const &pose) |
| Configure this mover from a RosettaScripts tag. More... | |
| std::string const & | file_name () const |
| Return the file name for the trajectory. More... | |
| void | file_name (std::string const &file_name) |
| Set the file name for the trajectory. More... | |
| core::Size | model_count () const |
| Return the number of models that have been saved so far. More... | |
| core::Size | step_count () const |
| Return the number of iterations that have occurred so far. More... | |
| core::Size | stride () const |
| Return how often models should be written to the trajectory. More... | |
| void | stride (core::Size stride) |
| Set how often models should be written to the trajectory. More... | |
| core::Size | cache_limit () |
| Return the number of poses that can be cached. More... | |
| void | cache_limit (core::Size limit) |
| Specify the maximum number of poses that can be cached. More... | |
| bool | cumulate_jobs () const |
| Return true if poses from different jobs will be written to the same trajectory file. More... | |
| bool | cumulate_replicas () const |
| Return true if poses from different replicas will be written to the same trajectory file. More... | |
| virtual void | reset (protocols::moves::MonteCarlo const &mc, MetropolisHastingsMoverCAP metropolis_hastings_mover=0) |
| Callback executed whenever the simulation is initialized or reset. More... | |
| void | update_after_boltzmann (core::pose::Pose const &pose, MetropolisHastingsMoverCAP metropolis_hastings_mover=0) |
| Save the given pose to the trajectory. More... | |
| void | update_after_boltzmann (protocols::moves::MonteCarlo const &mc) |
| Save the given pose to the trajectory. More... | |
| virtual void | apply (core::pose::Pose &pose) |
| Callback executed after each move is made. More... | |
| virtual void | observe_after_metropolis (MetropolisHastingsMover const &metropolis_hastings_mover) |
| Callback executed after the Metropolis criterion is evaluated. More... | |
Public Member Functions inherited from protocols::canonical_sampling::ThermodynamicObserver | |
| ThermodynamicObserver () | |
| Default constructor. More... | |
| virtual | ~ThermodynamicObserver () |
| Destructor. 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... | |
Public Member Functions inherited from protocols::moves::Mover | |
| Mover () | |
| virtual | ~Mover () |
| virtual MoverSP | create () |
| virtual void | apply (core::io::serialization::PipeMap &pmap) |
| virtual void | parse_state (SerializableState const &state) |
| virtual void | parse_def (utility::lua::LuaObject const &def, utility::lua::LuaObject const &score_fxns, utility::lua::LuaObject const &tasks, MoverCacheSP cache) |
| virtual void | save_state (SerializableState &state) |
| Mover (std::string const &type_name) | |
| sets the type for a mover; name_ has been removed (2010/05/14) More... | |
| Mover (Mover const &other) | |
| Mover & | operator= (Mover const &other) |
| assignment operator More... | |
| virtual core::Real | last_proposal_density_ratio () |
| std::string const & | type () const |
| 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... | |
| void | set_current_tag (std::string const &new_tag) |
| 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 |
| 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... | |
| void | type (const std::string &type_in) |
| std::string | get_type () const |
| 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... | |
| 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 bool | reinitialize_for_each_job () const |
| Inform the Job Distributor (August '08 vintage) whether this object needs to be freshly regenerated on each use. 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... | |
| void | set_current_job (protocols::jobdist::BasicJobCOP job) |
| jobdist::BasicJobCOP | get_current_job () const |
| virtual void | show (std::ostream &output=std::cout) const |
| Outputs details about the Mover, including current settings. More... | |
Private Member Functions | |
| void | write_schema_to_db () const |
| Generate the table schemas and write them to the database. More... | |
| void | write_cache_to_db () const |
| Write any cached poses into the database, then clear the cache. More... | |
| void | write_model (core::pose::Pose const &pose, MetropolisHastingsMoverCAP mover=0) |
| Append the given model to the trajectory being written. More... | |
| void | write_first_model (core::pose::Pose const &pose, MetropolisHastingsMoverCAP mover) |
| Write the starting structure to the database. More... | |
Private Attributes | |
| core::Size | job_id_ |
| core::Size | temp_level_ |
| utility::vector1< Frame > | frame_cache_ |
Additional Inherited Members | |
Public Types inherited from protocols::moves::Mover | |
| typedef utility::tag::TagCOP | TagCOP |
| typedef core::pose::Pose | Pose |
| typedef core::pose::PoseCOP | PoseCOP |
| typedef protocols::filters::Filters_map | Filters_map |
| typedef std::list< std::string > | Strings |
Static Public Member Functions inherited from protocols::canonical_sampling::TrajectoryRecorder | |
| static void | register_options () |
| Associate relevant options with the TemperedDocking class. More... | |
Static Public Member Functions inherited from protocols::moves::Mover | |
| static std::string | name () |
| static void | register_options () |
| Overload this static method if you access options within the mover. More... | |
Protected Member Functions inherited from protocols::moves::Mover | |
| 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... | |
Record a trajectory to an SQL database.
This class builds upon Rosetta's database framework, which means that there is support for SQLite3, MySQL and PostgreSQL. Database options must be specified on the command line (i.e. there's no API for this):
| protocols::canonical_sampling::DbTrajectoryRecorder::DbTrajectoryRecorder | ( | ) |
Default constructor.
Referenced by clone(), and fresh_instance().
| protocols::canonical_sampling::DbTrajectoryRecorder::DbTrajectoryRecorder | ( | core::Size | job_id | ) |
Constructor with a job_id parameter to use as a foreign key.
| protocols::canonical_sampling::DbTrajectoryRecorder::DbTrajectoryRecorder | ( | core::Size | job_id, |
| core::Size | temp_level | ||
| ) |
Constructor with job_id and temp_level parameters.
| protocols::canonical_sampling::DbTrajectoryRecorder::DbTrajectoryRecorder | ( | DbTrajectoryRecorder const & | other | ) |
Copy constructor.
|
virtual |
Return a clone of the Mover object.
clone is meant to return an OP'ed deep copy of this object. This really should be a pure virtual in the base class, but adding pure virtuals to Mover would massively disrupt the code. This default implementation crashes at runtime instead of compiletime if you try to call it. If this code is causing you problems, your Mover needs to override this function.
Reimplemented from protocols::moves::Mover.
References DbTrajectoryRecorder().
|
virtual |
Callback executed after all Monte Carlo trials are completed.
Reimplemented from protocols::canonical_sampling::ThermodynamicObserver.
References protocols::canonical_sampling::ThermodynamicObserver::finalize_simulation(), and write_cache_to_db().
|
virtual |
Generates a new Mover object freshly created with the default ctor.
fresh_instance is meant to return a new object of this class, created with the default constructor. This really should be a pure virtual in the base class, but adding pure virtuals to Mover would massively disrupt the code. This default implementation crashes at runtime instead of compiletime if you try to call it. If this code is causing you problems, your Mover needs to override this function. This is used by the August 08 job distributor.
Reimplemented from protocols::moves::Mover.
References DbTrajectoryRecorder().
|
virtual |
Return the name of this mover.
Reimplemented from protocols::canonical_sampling::TrajectoryRecorder.
|
virtual |
Callback executed before any Monte Carlo trials are attempted.
The cycle parameter gives the number of times that the simulation has been restarted. Since the restart feature is currently commented out, cycle should always be 0.
Reimplemented from protocols::canonical_sampling::TrajectoryRecorder.
References protocols::canonical_sampling::TrajectoryRecorder::initialize_simulation(), write_first_model(), and write_schema_to_db().
|
inline |
Return the job id that will be used as a foreign key in the trajectory table that gets generated.
References job_id_.
Referenced by write_schema_to_db().
|
virtual |
Not implemented, except to complain if accidentally used.
Reimplemented from protocols::canonical_sampling::ThermodynamicObserver.
References utility_exit_with_message.
|
inline |
Set the job id that will be used as a foreign key in the trajectory table that gets generated.
References job_id_.
|
inline |
Set the temperature level that this observer should focus on.
Temperature levels start counting from one. If zero is given, it will be taken to mean that every level should be recorded.
References temp_level_.
|
inline |
Return the temperature level that this observer is focusing on.
References temp_level_.
Referenced by write_cache_to_db(), write_model(), and write_schema_to_db().
|
private |
Write any cached poses into the database, then clear the cache.
References core::io::silent::SilentFileData::_write_silent_struct(), basic::database::insert_statement_generator::InsertGenerator::add_column(), basic::database::insert_statement_generator::InsertGenerator::add_row(), core::pose::Pose::energies(), frame(), frame_cache_, basic::database::get_db_session(), protocols::canonical_sampling::DbTrajectoryRecorder::Frame::iteration, job_id_, make_vector(), protocols::canonical_sampling::DbTrajectoryRecorder::Frame::pose, score, temp_level(), protocols::canonical_sampling::DbTrajectoryRecorder::Frame::temp_level, core::scoring::Energies::total_energy(), and basic::database::insert_statement_generator::InsertGenerator::write_to_database().
Referenced by finalize_simulation(), and write_model().
|
private |
Write the starting structure to the database.
This case is handled specially to guarantee that the frame labeled as "iteration 0" always represents the starting structure. In the future, this method will make sure only the root node writes this frame.
References frame(), frame_cache_, protocols::canonical_sampling::DbTrajectoryRecorder::Frame::iteration, protocols::canonical_sampling::DbTrajectoryRecorder::Frame::pose, and protocols::canonical_sampling::DbTrajectoryRecorder::Frame::temp_level.
Referenced by initialize_simulation().
|
privatevirtual |
Append the given model to the trajectory being written.
The pose may be cached and not immediately written to the database.
Implements protocols::canonical_sampling::TrajectoryRecorder.
References protocols::canonical_sampling::TrajectoryRecorder::cache_limit(), frame(), frame_cache_, protocols::canonical_sampling::DbTrajectoryRecorder::Frame::iteration, protocols::canonical_sampling::DbTrajectoryRecorder::Frame::pose, protocols::canonical_sampling::TrajectoryRecorder::step_count(), temp_level(), protocols::canonical_sampling::DbTrajectoryRecorder::Frame::temp_level, temp_level_, and write_cache_to_db().
|
private |
Generate the table schemas and write them to the database.
References basic::database::schema_generator::Schema::add_column(), basic::database::get_db_session(), job_id(), make_vector1(), score, temp_level(), and basic::database::schema_generator::Schema::write().
Referenced by initialize_simulation().
|
mutableprivate |
Referenced by write_cache_to_db(), write_first_model(), and write_model().
|
private |
Referenced by job_id(), set_job_id(), and write_cache_to_db().
|
private |
Referenced by set_temp_level(), temp_level(), and write_model().
1.8.7