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
swa
rna
StepWiseRNA_RotamerGenerator.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 SWA_ResidueSampler.hh
11
/// @brief
12
/// @detailed
13
///
14
/// @author Rhiju Das
15
/// @author Parin Sripakdeevong
16
17
18
#ifndef INCLUDED_protocols_swa_rna_StepWiseRNA_RotamerGenerator_hh
19
#define INCLUDED_protocols_swa_rna_StepWiseRNA_RotamerGenerator_hh
20
21
#include <
protocols/swa/rna/StepWiseRNA_Classes.hh
>
22
23
#include <
core/types.hh
>
24
#include <
core/id/TorsionID.fwd.hh
>
25
#include <
core/id/TorsionID.hh
>
26
#include <
core/pose/Pose.fwd.hh
>
27
#include <utility/vector1.hh>
28
#include <utility/pointer/ReferenceCount.hh>
29
30
#include <string>
31
#include <map>
32
33
34
35
namespace
protocols {
36
namespace
swa {
37
namespace
rna {
38
39
class
StepWiseRNA_RotamerGenerator
:
public
utility::pointer::ReferenceCount
{
40
public
:
41
42
StepWiseRNA_RotamerGenerator
(
Size
const
moving_suite
,
43
bool
const
sample_lower_sugar_and_base,
44
bool
const
sample_upper_sugar_and_base,
45
PuckerState
const
pucker1,
46
PuckerState
const
pucker2);
47
48
49
virtual
~StepWiseRNA_RotamerGenerator
();
50
51
utility::vector1< core::id::TorsionID >
const
&
torsion_ids
()
const
;
52
53
bool
has_another_rotamer
()
const
;
54
55
void
update_to_next_rotamer
();
56
57
utility::vector1< Torsion_Info >
const
&
get_current_rotamer
(){
return
rotamer_list_
; }
58
59
void
reset
();
60
61
// void set_Is_bulge( bool const & setting ){ Is_bulge_ = setting; }
62
63
void
set_sample_extra_rotamers
(
bool
const
setting ){
sample_extra_rotamers_
= setting; }
64
65
void
set_fast
(
bool
const
setting ){
fast_
= setting; }
66
67
void
set_sample_chi_torsion
(
bool
const
setting) {
sample_chi_torsion_
= setting; }
68
69
void
set_include_syn_chi
(
bool
const
setting){
include_syn_chi_
=setting; }
70
71
void
set_force_syn_chi_res_list
(
utility::vector1< core::Size >
const
& setting){
force_syn_chi_res_list_
= setting; }
//April 29, 2011
72
73
void
set_bin_size
(
core::Size
const
setting){
bin_size_
=setting;}
74
75
void
set_extra_epsilon
(
bool
const
setting){
extra_epsilon_
=setting; }
76
77
void
set_extra_beta
(
bool
const
setting){
extra_beta_
=setting; }
78
79
void
set_extra_anti_chi
(
bool
const
setting){
extra_anti_chi_
=setting; }
80
81
void
set_extra_syn_chi
(
bool
const
setting){
extra_syn_chi_
=setting; }
82
83
void
set_exclude_alpha_beta_gamma_sampling
(
bool
const
setting){
exclude_alpha_beta_gamma_sampling_
=setting; }
84
85
void
set_allow_syn_pyrimidine
(
bool
const
setting){
allow_syn_pyrimidine_
=setting; }
86
87
void
initialize_rotamer_generator
(
core::pose::Pose
const
& pose);
88
89
core::Size
num_rotamer_centers
();
90
core::Size
const
&
group_rotamer
();
91
core::Size
const
&
subgroup_rotamer
();
92
core::Size
const
&
moving_suite
();
93
94
PuckerState
pucker_state
(
std::string
const
which_sugar);
95
96
97
98
private
:
99
/*
100
void
101
initialize_puckers(
102
core::pose::Pose const & pose,
103
bool const & sample_sugar_and_base1,
104
bool const & sample_sugar_and_base2 );
105
*/
106
void
107
initialize_sample_base_states
(
core::pose::Pose
const
& pose );
108
109
void
110
initialize_rotamers
();
111
112
void
113
initialize_extra_rotamer_perturbations
();
114
115
void
116
add_torsion_id
(
core::id::TorsionID
const
torsion_id);
117
118
private
:
119
120
core::Size
const
moving_suite_
;
121
122
bool
const
sample_lower_sugar_and_base_
;
123
bool
const
sample_upper_sugar_and_base_
;
124
125
PuckerState
const
pucker1_specified_
;
126
PuckerState
const
pucker2_specified_
;
127
128
129
bool
sample_extra_rotamers_
;
130
bool
fast_
;
131
132
core::Size
bin_size_
;
133
int
bins1_
,
bins2_
,
bins3_
,
eps_bins_
,
beta_bins_
;
//int because they are compared to ints in torsion definition loops.
134
bool
verbose_
;
135
136
utility::vector1< core::id::TorsionID >
torsion_ids_
;
137
utility::vector1< utility::vector1< core::Real >
>
rotamer_centers_
;
138
139
utility::vector1< core::id::TorsionID >
perturb_torsion_ids_
;
140
utility::vector1< utility::vector1< core::Real >
>
extra_rotamer_perturbations_
;
141
142
core::Size
group_rotamer_
;
143
core::Size
subgroup_rotamer_
;
144
145
utility::vector1< Torsion_Info >
rotamer_list_
;
146
bool
sample_chi_torsion_
;
147
bool
include_syn_chi_
;
148
utility::vector1< core::Size >
force_syn_chi_res_list_
;
//April 29, 2011
149
bool
extra_epsilon_
;
150
bool
extra_beta_
;
151
bool
extra_anti_chi_
;
152
bool
extra_syn_chi_
;
153
bool
exclude_alpha_beta_gamma_sampling_
;
154
bool
allow_syn_pyrimidine_
;
155
BaseState
lower_base_state_
;
156
BaseState
upper_base_state_
;
157
158
};
159
160
}
//rna
161
}
//swa
162
}
// protocols
163
164
#endif
165
Generated on Sat Jun 1 2013 12:19:57 for Rosetta 3.5 by
1.8.4