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
toolbox
task_operations
LimitAromaChi2Operation.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/toolbox/task_operations/LimitAromaChi2Operation.hh
11
/// @brief eliminate aromatic rotamers, of which chi2 are around 0, 180 degree.
12
/// @detail Chi2=0, 180 rotamers of aromatic residues ( PHE, TYR, HIS ) are not observed in nature very much,
13
/// however Rosetta really like them. This is really pathology. For design purpose, we don't need them actually.
14
/// @author Nobuyasu Koga ( nobuyasu@uw.edu )
15
16
17
#ifndef INCLUDED_protocols_toolbox_task_operations_LimitAromaChi2Operation_hh
18
#define INCLUDED_protocols_toolbox_task_operations_LimitAromaChi2Operation_hh
19
20
21
// Unit Headers
22
#include <
protocols/toolbox/task_operations/LimitAromaChi2Operation.fwd.hh
>
23
#include <
core/pack/rotamer_set/RotamerSetOperation.hh
>
24
25
#include <
core/pack/task/PackerTask.fwd.hh
>
26
#include <
core/pack/task/operation/TaskOperation.hh
>
27
28
// Package Headers
29
#include <
core/pack/rotamer_set/RotamerSet.fwd.hh
>
30
#include <
core/graph/Graph.fwd.hh
>
31
#include <
core/pose/Pose.fwd.hh
>
32
#include <
core/scoring/ScoreFunction.fwd.hh
>
33
#include <
core/pack/dunbrack/ChiSet.fwd.hh
>
34
35
// Utility Headers
36
#include <utility/pointer/ReferenceCount.hh>
37
#include <utility/tag/Tag.fwd.hh>
38
#include <utility/vector1.hh>
39
40
namespace
protocols {
41
namespace
toolbox {
42
namespace
task_operations {
43
44
class
LimitAromaChi2_RotamerSetOperation
:
public
core::pack::rotamer_set::RotamerSetOperation
45
{
46
public
:
47
48
49
typedef
core::Real
Real
;
50
typedef
core::pose::Pose
Pose
;
51
typedef
core::pack::task::PackerTask
PackerTask
;
52
typedef
core::pack::task::PackerTaskCOP
PackerTaskCOP
;
53
typedef
core::pack::rotamer_set::RotamerSet
RotamerSet
;
54
typedef
core::pack::rotamer_set::Rotamers
Rotamers
;
55
typedef
core::scoring::ScoreFunction
ScoreFunction
;
56
typedef
core::graph::GraphCOP
GraphCOP
;
57
typedef
core::pack::rotamer_set::RotamerSetOperationOP
RotamerSetOperationOP
;
58
59
60
public
:
61
62
63
LimitAromaChi2_RotamerSetOperation
();
64
65
LimitAromaChi2_RotamerSetOperation
(
Real
const
chi2max
,
Real
const
chi2min
);
66
67
virtual
~LimitAromaChi2_RotamerSetOperation
();
68
69
virtual
70
RotamerSetOperationOP
71
clone
()
const
;
72
73
virtual
74
void
75
alter_rotamer_set
(
76
Pose
const
&,
77
ScoreFunction
const
&,
78
PackerTask
const
& ptask,
79
GraphCOP
,
80
RotamerSet
& rotamer_set
81
);
82
83
public
:
84
85
86
/// @brief max chi2 for picking rotamers of YFH
87
void
chi2max
(
Real
const
r )
88
{
89
chi2max_
= r;
90
}
91
92
/// @brief min chi2 for picking rotamers of YFH
93
void
chi2min
(
Real
const
r )
94
{
95
chi2min_
= r;
96
}
97
98
/// @brief include TRP ?
99
void
include_trp
(
bool
const
b
)
100
{
101
include_trp_
=
b
;
102
}
103
104
private
:
// data
105
106
/// @brief max chi2 for picking rotamers of YFH
107
Real
chi2max_
;
108
109
/// @brief min chi2 for picking rotamers of YFH
110
Real
chi2min_
;
111
#ifdef USEBOOSTSERIALIZE
112
friend
class
boost::serialization::access;
113
114
template
<
class
Archive>
115
void
serialize(Archive & ar,
const
unsigned
int
version) {
116
ar & boost::serialization::base_object<core::pack::rotamer_set::RotamerSetOperation>(*this);
117
ar &
chi2max_
;
118
ar &
chi2min_
;
119
}
120
#endif
121
122
/// @brief include TRP ? ( default false )
123
bool
include_trp_
;
124
125
};
126
127
128
//////////////////////////////////////////////////////////////////////////////////////////////
129
class
LimitAromaChi2Operation
:
public
core::pack::task::operation::TaskOperation
{
130
public
:
131
132
133
typedef
core::Real
Real
;
134
typedef
core::pose::Pose
Pose
;
135
typedef
core::pack::task::PackerTask
PackerTask
;
136
typedef
core::pack::task::operation::TaskOperation
TaskOperation
;
137
typedef
core::pack::task::operation::TaskOperationOP
TaskOperationOP
;
138
typedef
TaskOperation
parent
;
139
typedef
utility::tag::TagPtr
TagPtr
;
140
141
142
public
:
143
144
145
/// @brief default constructor
146
LimitAromaChi2Operation
();
147
148
/// @brief destructor
149
virtual
~LimitAromaChi2Operation
();
150
151
/// @brief make clone
152
virtual
TaskOperationOP
clone
()
const
;
153
154
public
:
155
156
157
/// @brief max chi2 for picking rotamers of YFH
158
Real
chi2max
()
const
159
{
160
return
chi2max_
;
161
}
162
163
/// @brief min chi2 for picking rotamers of YFH
164
Real
chi2min
()
const
165
{
166
return
chi2min_
;
167
}
168
169
/// @brief include TRP ?
170
bool
include_trp
()
const
171
{
172
return
include_trp_
;
173
}
174
175
176
public
:
177
178
179
/// @brief max chi2 for picking rotamers of YFH
180
void
chi2max
(
Real
const
r )
181
{
182
chi2max_
= r;
183
}
184
185
/// @brief min chi2 for picking rotamers of YFH
186
void
chi2min
(
Real
const
r )
187
{
188
chi2min_
= r;
189
}
190
191
/// @brief include TRP ?
192
void
include_trp
(
bool
const
b
)
193
{
194
include_trp_
=
b
;
195
}
196
197
198
199
public
:
200
201
202
/// @brief apply
203
virtual
void
apply
(
Pose
const
& pose,
PackerTask
& task )
const
;
204
205
206
public
:
207
208
209
void
parse_tag
(
TagPtr
tag );
210
void
parse_def
( utility::lua::LuaObject
const
& def );
211
212
213
private
:
// data
214
215
216
/// @brief max chi2 for picking rotamers of YFH
217
Real
chi2max_
;
218
219
/// @brief min chi2 for picking rotamers of YFH
220
Real
chi2min_
;
221
222
/// @brief include TRP ? ( default false )
223
bool
include_trp_
;
224
225
};
226
227
228
}
// TaskOperations
229
}
// toolbox
230
}
// protocols
231
232
233
#endif
Generated on Sat Jun 1 2013 12:23:17 for Rosetta 3.5 by
1.8.4