Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
protocols::monte_carlo::MonteCarloInterface Class Reference

A MonteCarlo object for optimizing the interface dG as defined using InterfaceAnalyzer. The dG and Total energy can be weighted. This is so that the interface energy itself can be optimized through a protocol. More...

#include <MonteCarloInterface.hh>

Inheritance diagram for protocols::monte_carlo::MonteCarloInterface:
Inheritance graph
[legend]

Public Member Functions

 MonteCarloInterface (Pose const &init_pose, ScoreFunction const &scorefxn, Real const temperature, std::string interface)
 Constructs a useable MonteCarlo object. More...
 
 MonteCarloInterface (ScoreFunction const &scorefxn, Real const temperature, std::string interface)
 Constructor without Pose – call reset(pose) before first use. More...
 
 MonteCarloInterface (MonteCarloInterface const &src)
 
 ~MonteCarloInterface () override
 
protocols::moves::MonteCarloOP clone () override
 
bool boltzmann (Pose &pose, std::string const &move_type="unk", core::Real const proposal_density_ratio=1, core::Real const inner_score_delta_over_temperature=0) override
 Applies the Metropolis Criterion on pose based on the Interface dG and Total Score according to Set weights. More...
 
void reset (Pose const &pose) override
 Sets lowest score pose and last accepted pose to the score of <pose> More...
 
void set_interface (std::string const &interface)
 Set the interface that we will be using to calculate interface energy. More...
 
void set_pack_interface_separated (bool pack_separated)
 Should we pack the interface while separated? Default TRUE. More...
 
void set_dG_weight (core::Real dG_weight)
 Set the weight on the dG component of the energy (Default = 1.0) More...
 
void set_total_weight (core::Real total_weight)
 Set the weight on the total component of the enegy (Default = 0.0) More...
 
void score_function (ScoreFunction const &scorefxn) override
 Sets the ScoreFunction to <scorefxn> , re-scores last accepted pose and lowest score pose. More...
 
core::Real calculate_score (Pose &pose)
 Calculate the score given the pose and the weights. More...
 
void set_repack_separated (bool repack_separated)
 Should we repack only the interface residues of a cloned pose on calculating the interface energy? Default TRUE. More...
 
- Public Member Functions inherited from protocols::moves::MonteCarlo
 MonteCarlo (MonteCarlo const &)
 Copy constructor. More...
 
 MonteCarlo (Pose const &init_pose, ScoreFunction const &scorefxn, Real const temperature)
 Constructs a useable MonteCarlo object. More...
 
 MonteCarlo (Pose const &init_pose, Real const init_score, Real const temperature)
 Constructor for external scoring. More...
 
 MonteCarlo (ScoreFunction const &scorefxn, Real const temperature)
 Constructor without Pose – call reset(pose) before first use. More...
 
 ~MonteCarlo () override
 Empty destructor in C++ file to reduce number of necessary includes. More...
 
void reset_scorefxn (Pose const &init_pose, ScoreFunction const &scorefxn)
 Resets the ScoreFunction. More...
 
void change_weight (core::scoring::ScoreType const &t, Real const &setting)
 Change the weight on a score term in the object's scorefunction. Useful when we don't want to reset the whole scorefunction during an annealing step. More...
 
virtual void set_temperature (Real const temp)
 Sets the temperature value used in the Metropolis Criterion to <temp> More...
 
Real temperature () const
 Returns the temperature value used in the Metropolis Criterion. More...
 
void set_autotemp (bool const setting, core::Real const quench_temp)
 Sets autotemp to quench_temp example(s): See also: MonteCarlo MonteCarlo.autotemp MonteCarlo.show_state. More...
 
virtual bool boltzmann (Pose &pose, core::Real const score, std::string const &move_type="unk", core::Real const proposal_density_ratio=1, core::Real const inner_score_temperature_delta=0)
 Applies the Metropolis Criterion on pose based on the externally computes score, temperature, and the last accepted pose. This method evaluates the change in score, compares the trial pose to the last accepted pose, and updates the pose structure and simulation statistics appropriately. More...
 
virtual bool boltzmann (core::Real score, std::string const &move_type="unk", core::Real const proposal_density_ratio=1, core::Real const inner_score_delta_over_temperature=0, bool check_lowest_score=true)
 Applies the Metropolis Criterion on the inputted pose based on the supplied score delta. More...
 
virtual bool boltzmann (core::Real score, Pose &pose, std::string const &move_type="unk", core::Real const proposal_density_ratio=1, core::Real const inner_score_delta_over_temperature=0, bool check_lowest_score=true)
 Applies the Metropolis Criterion on the inputted pose based on the supplied score delta. Updates the Pose Structure accordingly. More...
 
virtual void reset (Pose const &pose, Real const score)
 Sets lowest score pose and last accepted pose to the score of <pose> More...
 
void set_last_accepted_pose (Pose const &pose)
 Sets the last accepted pose to the score of <pose> More...
 
void set_last_accepted_pose (core::pose::Pose const &pose, core::Real score)
 Sets the last accepted pose and last accepted score. More...
 
void set_lowest_score_pose (core::pose::Pose const &pose)
 
void set_lowest_score_pose (core::pose::Pose const &pose, core::Real score)
 
void set_last_score (core::Real score)
 Set the last score. More...
 
Pose const & last_accepted_pose () const
 Returns the last accepted pose. More...
 
Pose const & lowest_score_pose () const
 Returns the lowest score pose encountered. More...
 
bool eval_lowest_score_pose (Pose &pose, bool score_pose=true, bool update_stats=false, std::string const &move_type="unk")
 Compares score of <pose> to the lowest score found. If lower, sets the current lowest score pose and lowest score. Use internal pose energies if score_pose is false. Used to evaluate lowest score without boltzmann. Does not change pose structure. More...
 
template<typename ConformationObserver >
void attach_observer_to_last_accepted_conformation (ConformationObserver &obs)
 attach observer to last accepted conformation More...
 
template<typename ConformationObserver >
void attach_observer_to_lowest_score_conformation (ConformationObserver &obs)
 attach observer to lowest score conformation More...
 
template<typename PoseObserver >
void attach_observer_to_last_accepted_pose (PoseObserver &obs)
 attach observer to last accepted pose More...
 
template<typename PoseObserver >
void attach_observer_to_lowest_score_pose (PoseObserver &obs)
 attach observer to lowest score pose More...
 
void recover_low (Pose &pose)
 Sets the input <pose> and last accepted pose to the lowest score pose. More...
 
ScoreFunction const & score_function () const
 Returns the MonteCarlo ScoreFunction. More...
 
void show_scores () const
 Displays the last accepted score and the lowest score. More...
 
void reset_counters ()
 Resets the mover counters. More...
 
void show_state () const
 Displays the entire MonteCarlo state temperature, scores, annealing settings, move statistics, move counters (show_counters) More...
 
void show_counters () const
 Displays the number of trials performed, fraction of trial moves accepted, and the average energy drop per accepted trial by mover types applied (unknown movers or perturbations are listed as "unktrials") More...
 
core::Size total_trials () const
 Set the counter to be used for this simulation. More...
 
Real last_accepted_score () const
 Manually record that a move was attempted. More...
 
Real last_score () const
 Returns the score value of the last score. More...
 
Real lowest_score () const
 Returns the score value of the lowest score pose encountered. More...
 
MCA mc_accepted () const
 Returns mc_accepted, informative of the last move applied. More...
 
std::string mc_accepted_string () const
 Returns mc_accepted as a human-readable string, informative of the last move applied. More...
 
void clear_poses ()
 Removes last accepted pose and lowest score pose. More...
 
void set_update_boinc (bool setting)
 no brief for now More...
 
bool get_update_boinc () const
 
Real total_score_of_last_considered_pose () const
 
core::Size last_accept () const
 Returns the number of trials since last acceptance. More...
 
core::Size heat_after_cycles () const
 no brief for now More...
 
void set_heat_after_cycles (core::Size setting)
 no brief for now More...
 
void push_back (moves::MonteCarloExceptionConvergeOP)
 no brief for now More...
 
core::Size check_frequency () const
 
void set_total_score_last_considered (core::Real score)
 
void set_last_accepted (core::Real score)
 
void set_lowest (core::Real score)
 

Private Member Functions

void init_interface_analyzer ()
 
void read_cmd_line_options ()
 

Private Attributes

std::string interface_definition_ = ""
 
protocols::analysis::InterfaceAnalyzerMoverOP analyzer_
 
core::Real dG_weight_ = 1.0
 
core::Real total_weight_ = 0.0
 
core::Real last_dG_ = 0.0
 
core::Real last_score_ = 0.0
 
bool repack_separated_ = true
 

Additional Inherited Members

- Public Types inherited from protocols::moves::MonteCarlo
typedef
core::scoring::ScoreFunction 
ScoreFunction
 
typedef
core::scoring::ScoreFunctionOP 
ScoreFunctionOP
 
typedef
core::scoring::ScoreFunctionCOP 
ScoreFunctionCOP
 
typedef core::pose::Pose Pose
 
typedef core::pose::PoseOP PoseOP
 
typedef core::pose::PoseCOP PoseCOP
 
typedef core::Real Real
 
typedef core::Size Size
 
- Protected Member Functions inherited from protocols::moves::MonteCarlo
void autotemp_reject ()
 for managing the temperature, if we need to do so More...
 
void autotemp_accept ()
 
void evaluate_convergence_checks (core::pose::Pose const &pose, bool reject, bool final)
 
Poselast_accepted_pose_non_const ()
 Returns the non-const last accepted pose (for subclasses) More...
 
void set_last_accepted_score (core::Real score)
 
void set_mc_accepted (MCA value)
 

Detailed Description

A MonteCarlo object for optimizing the interface dG as defined using InterfaceAnalyzer. The dG and Total energy can be weighted. This is so that the interface energy itself can be optimized through a protocol.

Constructor & Destructor Documentation

protocols::monte_carlo::MonteCarloInterface::MonteCarloInterface ( Pose const &  init_pose,
ScoreFunction const &  scorefxn,
Real const  temperature,
std::string  interface 
)

Constructs a useable MonteCarlo object.

mc = MonteCarlo( init_pose , scorefxn , temp )

Pose init_pose /manipulated during the simulation ScoreFunction scorefxn /evaluates pose scores Real (float) temp /used in the Metropolis Criterion

References init_interface_analyzer(), read_cmd_line_options(), reset(), and set_interface().

protocols::monte_carlo::MonteCarloInterface::MonteCarloInterface ( ScoreFunction const &  scorefxn,
Real const  temperature,
std::string  interface 
)

Constructor without Pose – call reset(pose) before first use.

References init_interface_analyzer(), read_cmd_line_options(), and set_interface().

protocols::monte_carlo::MonteCarloInterface::MonteCarloInterface ( MonteCarloInterface const &  src)
protocols::monte_carlo::MonteCarloInterface::~MonteCarloInterface ( )
override

Member Function Documentation

bool protocols::monte_carlo::MonteCarloInterface::boltzmann ( Pose pose,
std::string const &  move_type = "unk",
core::Real const  proposal_density_ratio = 1,
core::Real const  inner_score_delta_over_temperature = 0 
)
overridevirtual

Applies the Metropolis Criterion on pose based on the Interface dG and Total Score according to Set weights.

Interface dG is calculated using the InterfaceAnalyzer Application.

pose. This method evaluates the change in score, compares the trial pose to the last accepted pose, and updates the pose structure and simulation statistics appropriately

example(s): mc.boltzmann( pose ) See also: MonteCarlo MonteCarlo.last_accepted_score MonteCarlo.lowest_score

Reimplemented from protocols::moves::MonteCarlo.

References protocols::moves::MonteCarlo::boltzmann(), calculate_score(), and protocols::hybridization::score.

core::Real protocols::monte_carlo::MonteCarloInterface::calculate_score ( Pose pose)
MonteCarloOP protocols::monte_carlo::MonteCarloInterface::clone ( )
overridevirtual

Reimplemented from protocols::moves::MonteCarlo.

void protocols::monte_carlo::MonteCarloInterface::init_interface_analyzer ( )
private
void protocols::monte_carlo::MonteCarloInterface::read_cmd_line_options ( )
private

References dG_weight_, and total_weight_.

Referenced by MonteCarloInterface().

void protocols::monte_carlo::MonteCarloInterface::reset ( Pose const &  pose)
overridevirtual
void protocols::monte_carlo::MonteCarloInterface::score_function ( ScoreFunction const &  scorefxn)
overridevirtual

Sets the ScoreFunction to <scorefxn> , re-scores last accepted pose and lowest score pose.

set the scorefxn, re-scores last-accepted and lowest-score pose

example(s): mc.score_function( scorefxn ) See also: MonteCarlo MonteCarlo.boltzmann MonteCarlo.set_temperature MonteCarlo.temperature ScoreFunction create_score_function

Reimplemented from protocols::moves::MonteCarlo.

References analyzer_, calculate_score(), core::scoring::ScoreFunction::clone(), protocols::moves::MonteCarlo::last_accepted_pose_non_const(), protocols::hybridization::score, protocols::moves::MonteCarlo::score_function(), protocols::moves::MonteCarlo::set_last_accepted(), and protocols::moves::MonteCarlo::set_lowest().

void protocols::monte_carlo::MonteCarloInterface::set_dG_weight ( core::Real  dG_weight)

Set the weight on the dG component of the energy (Default = 1.0)

References dG_weight_.

void protocols::monte_carlo::MonteCarloInterface::set_interface ( std::string const &  interface)

Set the interface that we will be using to calculate interface energy.

References analyzer_, and interface_definition_.

Referenced by MonteCarloInterface().

void protocols::monte_carlo::MonteCarloInterface::set_pack_interface_separated ( bool  pack_separated)

Should we pack the interface while separated? Default TRUE.

References analyzer_.

void protocols::monte_carlo::MonteCarloInterface::set_repack_separated ( bool  repack_separated)

Should we repack only the interface residues of a cloned pose on calculating the interface energy? Default TRUE.

References analyzer_, and repack_separated_.

void protocols::monte_carlo::MonteCarloInterface::set_total_weight ( core::Real  total_weight)

Set the weight on the total component of the enegy (Default = 0.0)

References total_weight_.

Member Data Documentation

protocols::analysis::InterfaceAnalyzerMoverOP protocols::monte_carlo::MonteCarloInterface::analyzer_
private
core::Real protocols::monte_carlo::MonteCarloInterface::dG_weight_ = 1.0
private
std::string protocols::monte_carlo::MonteCarloInterface::interface_definition_ = ""
private

Referenced by set_interface().

core::Real protocols::monte_carlo::MonteCarloInterface::last_dG_ = 0.0
private

Referenced by calculate_score().

core::Real protocols::monte_carlo::MonteCarloInterface::last_score_ = 0.0
private

Referenced by calculate_score().

bool protocols::monte_carlo::MonteCarloInterface::repack_separated_ = true
private
core::Real protocols::monte_carlo::MonteCarloInterface::total_weight_ = 0.0
private

The documentation for this class was generated from the following files: