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
rotamer_recovery
RRReporterHuman.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/rotamer_recovery/RRReporterHuman.hh
11
/// @author Matthew O'Meara (mattjomeara@gmail.com)
12
///
13
///
14
///
15
///The rotamer recovery will be output to the screen. Output looks like:
16
/// # native_structure_tag1
17
/// # total = 30
18
/// resi_idx nat_bb_bin pct_bb nat_rot1 pct_rot1 nat_rot2 pct_rot2 nat_rot3 pct_rot3 nat_rot4 pct_rot4
19
/// 1 E 1.0000 1 1.0000 2 1.0000 1 1.0000 999 0.0000
20
/// 2 B 1.0000 2 1.0000 1 1.0000 999 0.0000 999 0.0000
21
/// ...
22
///
23
/// # native_structure_tag2
24
/// # total = 30
25
/// resi_idx nat_bb_bin pct_bb nat_rot1 pct_rot1 nat_rot2 pct_rot2 nat_rot3 pct_rot3 nat_rot4 pct_rot4
26
/// 1 E 1.0000 1 1.0000 2 1.0000 1 1.0000 999 0.0000
27
/// 2 B 1.0000 2 1.0000 1 1.0000 999 0.0000 999 0.0000
28
/// ...
29
30
/// Where the # total is how many proteins compared.
31
/// resi_idx = residue index
32
/// nat_bb_bin = dssp naming for bb
33
/// pct_bb = fraction matching backbone bins
34
/// nat_rot1 = chi 1
35
/// pct_rot1 = fraction matching chi bins
36
/// If 999 appears, that means that the amino acid does not have that chi angle
37
///
38
39
40
41
#ifndef INCLUDED_protocols_rotamer_recovery_RRReporterHuman_HH
42
#define INCLUDED_protocols_rotamer_recovery_RRReporterHuman_HH
43
44
// Unit Headers
45
#include <
protocols/rotamer_recovery/RRReporterHuman.fwd.hh
>
46
#include <
protocols/rotamer_recovery/RRReporter.hh
>
47
48
// Project Headers
49
#include <
core/types.hh
>
50
#include <
core/pose/Pose.fwd.hh
>
51
#include <
core/pack/dunbrack/DunbrackRotamer.fwd.hh
>
52
#include <
core/conformation/Residue.fwd.hh
>
53
54
// Utility headers
55
#include <utility/pointer/ReferenceCount.hh>
56
#include <utility/vector1.hh>
57
58
// C++ Headers
59
#include <map>
60
61
//Auto Headers
62
#include <string>
63
64
65
66
namespace
protocols {
67
namespace
rotamer_recovery {
68
69
class
PerNativeRRReporterHuman
:
public
utility::pointer::ReferenceCount
{
70
71
public
:
// public constructors / destructors
72
73
PerNativeRRReporterHuman
();
74
75
PerNativeRRReporterHuman
(
76
core::pose::Pose
const
& native_pose
77
);
78
79
virtual
~PerNativeRRReporterHuman
();
80
81
PerNativeRRReporterHuman
(
PerNativeRRReporterHuman
const
& src );
82
83
private
:
// private helper functions
84
85
///@brief return one character code for region of Ramachandran plot
86
char
87
torsion2big_bin
(
88
core::Real
const
phi
,
89
core::Real
const
psi
,
90
core::Real
const
omega
);
91
92
public
:
// public interface
93
94
void
95
set_native
(
96
core::pose::Pose
const
& native_pose);
97
98
void
99
report_rotamer_recovery
(
100
core::pose::Pose
const
&
/*decoy_pose*/
,
101
core::conformation::Residue
const
& res,
102
core::Real
score,
103
bool
recovered);
104
105
bool
106
initialized
()
const
;
107
108
void
109
show
(
110
std::ostream & out,
111
core::Size
column_width = 12,
112
core::Size
precision
= 4
113
)
const
;
114
115
private
:
// private member data
116
117
bool
initialized_
;
118
core::pose::PoseCOP
native_pose_
;
119
utility::vector1< char >
nat_bb_bins_
;
120
utility::vector1< core::pack::dunbrack::RotVector >
nat_rots_
;
121
utility::vector1< core::pack::dunbrack::RotVector >
nat_chis_
;
122
123
utility::vector1< utility::vector1< core::Real >
>
res_scores_
;
124
utility::vector1< utility::vector1< bool >
>
res_recovered_
;
125
126
};
127
128
129
///@brief The reporting functionality for the rotamer recovery test in
130
///a human readable format.
131
class
RRReporterHuman
:
public
RRReporter
{
132
133
public
:
// constructors destructors
134
135
RRReporterHuman
();
136
137
RRReporterHuman
(
RRReporterHuman
const
& src );
138
139
~RRReporterHuman
();
140
141
private
:
// private helper functions
142
143
144
void
145
write_header
(
146
std::ostream & out
147
)
const
;
148
149
public
:
// public interface
150
151
void
152
set_comparer_info
(
153
std::string
const
& comparer_name,
154
std::string
const
& comparer_params);
155
156
void
157
set_protocol_info
(
158
std::string
const
& protocol_name,
159
std::string
const
& protocol_params);
160
161
virtual
162
void
163
reset_recovery
();
164
165
virtual
166
void
167
report_rotamer_recovery
(
168
core::pose::Pose
const
& pose1,
169
core::pose::Pose
const
& pose2,
170
core::conformation::Residue
const
& res1,
171
core::conformation::Residue
const
& res2,
172
core::Real
score,
173
bool
recovered
174
);
175
176
virtual
177
core::Real
178
recovery_rate
()
const
;
179
180
virtual
181
void
182
show
(std::ostream & out )
const
;
183
184
virtual
185
void
186
show
()
const
;
187
188
private
:
189
190
std::string
protocol_name_
;
191
std::string
protocol_params_
;
192
std::string
comparer_name_
;
193
std::string
comparer_params_
;
194
core::Size
column_width_
;
195
core::Size
precision_
;
196
std::map< std::string, PerNativeRRReporterHuman >
per_native_recovery_
;
197
core::Real
residues_considered_
;
198
core::Size
rotamers_recovered_
;
199
core::Real
recovery_score_mean_
;
200
core::Real
recovery_score_m2_
;
201
};
202
203
204
}
// namespace rotamer_recovery
205
}
// namespace protocols
206
207
208
#endif // include guard
Generated on Sat Jun 1 2013 12:10:22 for Rosetta 3.5 by
1.8.4