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
loops
loop_closure
ccd
CcdLoopClosureMover.hh
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 src/protocols/loops/loop_closure/ccd/CcdLoopClosureMover.hh
11
/// @brief header file for CcdLoopClosureMover protocol
12
/// @detailed
13
/// Contains currently: Classic Abinitio
14
///
15
///
16
/// @author Oliver Lange
17
18
19
#ifndef INCLUDED_protocols_loops_loop_closure_ccd_CcdLoopClosureMover_hh
20
#define INCLUDED_protocols_loops_loop_closure_ccd_CcdLoopClosureMover_hh
21
22
// Unit Headers
23
#include <
protocols/loops/loop_closure/ccd/CcdLoopClosureMover.fwd.hh
>
24
25
// Package Headers
26
// AUTO-REMOVED #include <protocols/loops/Loops.hh>
27
28
// Project Headers
29
#include <
core/pose/Pose.fwd.hh
>
30
#include <
core/kinematics/MoveMap.fwd.hh
>
31
#include <
protocols/moves/Mover.hh
>
32
33
// ObjexxFCL Headers
34
35
// Utility headers
36
#include <
core/types.hh
>
37
#include <utility/pointer/ReferenceCount.hh>
38
39
//// C++ headers
40
// AUTO-REMOVED #include <cstdlib>
41
#include <string>
42
// AUTO-REMOVED #include <vector>
43
44
#include <
protocols/loops/Loop.hh
>
45
#include <utility/vector1.hh>
46
47
48
namespace
protocols {
49
namespace
loops {
50
namespace
loop_closure {
51
namespace
ccd {
52
53
/// Move these forward declarations to CcdLoopClosureMover.fwd.hh
54
class
CcdLoopClosureMover;
55
typedef
utility::pointer::owning_ptr< CcdLoopClosureMover >
CcdLoopClosureMoverOP
;
56
typedef
utility::pointer::owning_ptr< CcdLoopClosureMover const >
CcdLoopClosureMoverCOP
;
57
58
//wrapper for fast_ccd_loop_closure
59
class
CcdLoopClosureMover
:
public
moves::Mover
{
60
public
:
61
CcdLoopClosureMover
(
62
Loop
const
& loop_def,
63
core::kinematics::MoveMapCOP
mm
64
);
65
66
~CcdLoopClosureMover
();
67
68
void
set_max_rama_score_increase
(
core::Real
input_max_rama_score_increase );
69
70
void
set_max_total_delta
(
71
core::Real
input_max_delta_helix,
72
core::Real
input_max_delta_strand,
73
core::Real
input_max_delta_loop );
74
75
void
set_tolerance
(
core::Real
input_tolerance );
76
77
void
set_ccd_cycles
(
core::Size
input_ccd_cycles );
78
79
void
set_bRama_check
(
bool
input_bRama_check );
80
81
virtual
void
apply
(
core::pose::Pose
&pose );
82
virtual
std::string
get_name
()
const
;
83
84
core::Real
forward_deviation
()
const
{
85
return
forward_deviation_
;
86
}
87
88
core::Real
backward_deviation
()
const
{
89
return
backward_deviation_
;
90
}
91
92
bool
success
()
const
{
93
return
(
forward_deviation
() <
tolerance_
) && (
backward_deviation
() <
tolerance_
);
94
}
95
96
Loop
get_loop
()
const
{
return
loop_
;}
97
core::Size
get_loop_start
()
const
{
return
loop_
.
start
(); }
98
core::Size
get_loop_stop
()
const
{
return
loop_
.
stop
(); }
99
core::Size
get_loop_cut
()
const
{
return
loop_
.
cut
(); }
100
core::Size
get_loop_size
()
const
{
return
loop_
.
size
(); }
101
core::Real
get_loop_skip_rate
()
const
{
return
loop_
.
skip_rate
(); }
102
std::string
get_loop_extended
()
const
{
return
( (
loop_
.
is_extended
()) ? (
"True"
) : (
"False"
) );}
103
core::Real
get_max_rama_score_increase
()
const
;
104
core::Real
get_tolerance
()
const
;
105
core::Real
get_max_total_delta
(
std::string
secstr )
const
;
106
core::Size
get_ccd_cycles
()
const
{
return
ccd_cycles_
; }
107
std::string
bRama_check
()
const
{
return
( (
bRama_check_
) ? (
"True"
) : (
"False"
) ); }
108
core::kinematics::MoveMap
movemap
()
const
;
109
friend
std::ostream &
operator<<
( std::ostream &os,
CcdLoopClosureMover
const
&mover );
110
111
private
:
112
Loop
loop_
;
113
core::kinematics::MoveMapCOP
movemap_
;
114
core::Real
max_rama_score_increase_
;
115
core::Real
max_total_delta_helix_
;
116
core::Real
max_total_delta_strand_
;
117
core::Real
max_total_delta_loop_
;
118
core::Real
tolerance_
;
119
120
Size
ccd_cycles_
;
121
bool
bRama_check_
;
122
123
core::Real
forward_deviation_
;
// output
124
core::Real
backward_deviation_
;
// output
125
core::Real
torsion_delta_
;
126
core::Real
rama_delta_
;
127
128
Size
actual_cycles_
;
129
};
130
131
class
CcdMover
;
132
typedef
utility::pointer::owning_ptr< CcdMover >
CcdMoverOP
;
133
typedef
utility::pointer::owning_ptr< CcdMover const >
CcdMoverCOP
;
134
135
class
CcdMover
:
public
moves::Mover
{
136
public
:
137
CcdMover
(
138
Loop
const
& loop_def,
139
core::kinematics::MoveMapCOP
mm
140
);
141
142
~CcdMover
();
143
144
virtual
void
apply
(
core::pose::Pose
&pose );
145
virtual
std::string
get_name
()
const
;
146
147
private
:
148
core::Size
total_moves_
;
149
Loop
loop_
;
150
core::kinematics::MoveMapCOP
movemap_
;
151
};
152
153
}
// namespace ccd
154
}
// namespace loop_closure
155
}
// namespace loops
156
}
// namespace protocols
157
158
#endif //INCLUDED_protocols_loops_loop_closure_ccd_CcdLoopClosureMover_hh
Generated on Sat Jun 1 2013 11:57:36 for Rosetta 3.5 by
1.8.4