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
loophash
LoopHashDiversifier.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 protocols/loophash/movers/LoopHashDiversifier.hh
11
/// @author Tim Jacobs
12
13
#ifndef INCLUDED_protocols_loophash_LoopHashDiversifier_hh
14
#define INCLUDED_protocols_loophash_LoopHashDiversifier_hh
15
16
#include <
core/types.hh
>
17
#include <
core/pose/Pose.fwd.hh
>
18
#include <
core/scoring/ScoreFunction.hh
>
19
#include <
core/io/silent/SilentStruct.hh
>
20
#include <utility/tag/Tag.fwd.hh>
21
#include <
protocols/filters/Filter.hh
>
22
#include <
protocols/moves/Mover.hh
>
23
#include <
protocols/relax/FastRelax.hh
>
24
#include <
protocols/relax/FastRelax.fwd.hh
>
25
#include <
protocols/moves/DataMap.fwd.hh
>
26
#include <
protocols/loophash/LoopHashLibrary.hh
>
27
// AUTO-REMOVED #include <set>
28
29
#include <utility/vector1.hh>
30
31
32
namespace
protocols {
33
namespace
loophash {
34
35
using
core::Real
;
36
using
core::Size
;
37
using
std::string
;
38
39
class
LoopHashDiversifier
:
public
protocols::moves::Mover
40
{
41
public
:
42
LoopHashDiversifier
();
43
44
LoopHashDiversifier
(
45
LoopHashLibraryOP
library,
46
core::Real
min_inter_ss_bbrms
,
47
core::Real
max_inter_ss_bbrms
,
48
core::Real
min_intra_ss_bbrms
,
49
core::Real
max_intra_ss_bbrms
,
50
core::Real
min_rms
,
51
core::Real
max_rms
,
52
core::Size
start_res,
53
core::Size
stop_res,
54
core::Size
window_size,
55
core::Size
max_radius,
56
core::Size
max_struct,
57
core::Size
num_iterations
,
58
core::Size
num_try_div
,
59
bool
ideal,
60
bool
filter_by_phipsi,
61
protocols::filters::FilterOP
cenfilter
,
62
protocols::filters::FilterOP
ranking_cenfilter
,
63
core::scoring::ScoreFunctionOP
scorefxn_cen_cst,
64
core::scoring::ScoreFunctionOP
scorefxn_rama_cst
65
);
66
67
void
apply
(
core::pose::Pose
& pose );
68
// core::pose::PoseOP get_additional_output();
69
70
virtual
std::string
get_name
()
const
;
71
void
parse_my_tag
(
utility::tag::TagPtr
const
tag,
72
protocols::moves::DataMap
&,
73
protocols::filters::Filters_map
const
&,
74
protocols::moves::Movers_map
const
&,
75
core::pose::Pose
const
&
76
);
77
protocols::moves::MoverOP
clone
()
const
{
return
(
protocols::moves::MoverOP
(
new
LoopHashDiversifier
( *
this
) ) ); }
78
protocols::moves::MoverOP
fresh_instance
()
const
{
return
protocols::moves::MoverOP
(
new
LoopHashDiversifier
); }
79
virtual
~LoopHashDiversifier
();
80
81
Real
min_inter_ss_bbrms
()
const
;
82
void
min_inter_ss_bbrms
(
Real
const
min_inter_ss_bbrms );
83
Real
max_inter_ss_bbrms
()
const
;
84
void
max_inter_ss_bbrms
(
Real
const
max_inter_ss_bbrms );
85
86
Real
min_intra_ss_bbrms
()
const
;
87
void
min_intra_ss_bbrms
(
Real
const
min_intra_ss_bbrms );
88
Real
max_intra_ss_bbrms
()
const
;
89
void
max_intra_ss_bbrms
(
Real
const
max_intra_ss_bbrms );
90
91
Real
min_rms
()
const
;
92
void
min_rms
(
Real
const
min_rms );
93
Real
max_rms
()
const
;
94
void
max_rms
(
Real
const
max_rms );
95
96
Size
num_iterations
()
const
;
97
void
num_iterations
(
Size
const
num_iterations );
98
99
Size
num_try_div
()
const
;
100
void
num_try_div
(
Size
const
num_try_div );
101
102
utility::vector1< Size >
loop_sizes
()
const
;
103
void
add_loop_size
(
Size
const
loop_size );
104
105
void
cenfilter
(
protocols::filters::FilterOP
cenfilter );
106
void
ranking_cenfilter
(
protocols::filters::FilterOP
filter ){
ranking_cenfilter_
= filter; }
107
protocols::filters::FilterOP
ranking_cenfilter
()
const
{
return
ranking_cenfilter_
; }
108
109
private
:
110
// loopsampler
111
utility::vector1< Size >
loop_sizes_
;
112
LoopHashLibraryOP
library_
;
113
114
//torsion-angle rmsd for residue windows that span two pieces of secondary structure
115
Real
min_inter_ss_bbrms_
,
max_inter_ss_bbrms_
;
116
117
//torsion-angle rmsd for residue windows that are a single pieces of secondary structure
118
Real
min_intra_ss_bbrms_
,
max_intra_ss_bbrms_
;
119
120
//Anstrom Rmsd cuttofs for loophash generated structures
121
Real
min_rms_
,
max_rms_
;
122
123
//Residues to loophash over
124
Size
start_res_
,
stop_res_
;
125
126
//loophash window size & loophash fragment size
127
Size
window_size_
;
128
129
//max loophash radius
130
Size
max_radius_
;
131
132
//Max models to create in loophash (number of fragment tried is 200x this)
133
Size
max_struct_
;
134
135
//Number of loophash runs to execute
136
Size
num_iterations_
;
137
138
//Number of loophash runs to try in each execution
139
Size
num_try_div_
;
140
141
// should we save space and assume structure is ideal?
142
bool
ideal_
,
filter_by_phipsi_
;
143
144
//cen actually prune decoys based on the filter's apply function.
145
protocols::filters::FilterOP
cenfilter_
,
ranking_cenfilter_
;
146
147
core::scoring::ScoreFunctionOP
scorefxn_cen_cst_
,
scorefxn_rama_cst_
;
148
149
// structure store
150
std::vector< std::pair< Real, core::io::silent::SilentStructOP > >
all_structs_
;
151
};
152
153
154
}
// loophash
155
}
// protocols
156
157
158
#endif
/*INCLUDED_protocols_loophash_movers_LoopHashDiversifier_HH*/
159
Generated on Sat Jun 1 2013 11:56:45 for Rosetta 3.5 by
1.8.4