Rosetta 3.5
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
src
protocols
moves
JumpOutMover.cc
Go to the documentation of this file.
1
// -*- mode:c++;tab-width:2;indent-tabs-mode:t;show-trailing-whitespace:t;rm-trailing-spaces:t -*-
2
// vi: set ts=2 noet:
3
//
4
// (c) Copyright Rosetta Commons Member Institutions.
5
// (c) This file is part of the Rosetta software suite and is made available under license.
6
// (c) The Rosetta software is developed by the contributing members of the Rosetta Commons.
7
// (c) For more information, see http://www.rosettacommons.org. Questions about this can be
8
// (c) addressed to University of Washington UW TechTransfer, email: license@u.washington.edu.
9
10
/// @file JumpOutMover.cc
11
/// @brief
12
/// @author
13
14
// Unit Headers
15
#include <
protocols/moves/JumpOutMover.hh
>
16
#include <
protocols/moves/JumpOutMover.fwd.hh
>
17
18
// Package headers
19
20
// Project headers
21
#include <
core/pose/Pose.hh
>
22
#include <
core/scoring/Energies.hh
>
23
#include <
core/scoring/ScoreFunction.hh
>
24
#include <
core/scoring/ScoreFunction.fwd.hh
>
25
26
// tracer
27
#include <basic/Tracer.hh>
28
29
#include <utility/vector1.hh>
30
31
32
using
basic::T
;
33
using
basic::Error;
34
using
basic::Warning;
35
36
// C++ Headers
37
38
// ObjexxFCL Headers
39
//#include <ObjexxFCL/string.functions.hh>
40
41
namespace
protocols {
42
namespace
moves {
43
44
/// JumpOutMover
45
46
JumpOutMover::JumpOutMover
() :
Mover
(
"JumpOutMover"
), tolerance_( 100000.0 ) {}
47
48
49
JumpOutMover::JumpOutMover
(
50
MoverOP
first_mover_in,
51
MoverOP
second_mover_in,
52
core::scoring::ScoreFunctionCOP
scorefxn_in,
53
core::Real
tolerance_in
54
) :
Mover
(
"JumpOutMover"
),
55
first_mover_(first_mover_in),
56
second_mover_(second_mover_in),
57
scorefxn_(scorefxn_in),
58
tolerance_(tolerance_in)
59
{}
60
61
JumpOutMover::~JumpOutMover
() {}
62
63
void
64
JumpOutMover::apply
(
core::pose::Pose
& pose ) {
65
using
core::scoring::total_score
;
66
67
core::Real
const
initial_score ( pose.
energies
().
total_energy
() );
68
first_mover_
->apply( pose );
69
(*scorefxn_)(pose);
70
71
core::Real
const
move_score( pose.
energies
().
total_energy
() );
72
if
( (move_score - initial_score) <
tolerance_
) {
73
second_mover_
->apply( pose );
74
75
// why isn't this done in the constructor?
76
type
(
first_mover_
->type() +
std::string
(
"+"
) +
second_mover_
->type() );
77
}
78
}
// apply
79
80
std::string
81
JumpOutMover::get_name
()
const
{
82
return
"JumpOutMover"
;
83
}
84
85
86
}
// moves
87
}
// protocols
88
Generated on Sat Jun 1 2013 12:00:20 for Rosetta 3.5 by
1.8.4