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
docking
DockMCMCycle.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 docking_initialization_protocols
11
/// @brief initialization protocols for docking
12
/// @detailed
13
/// This contains the functions that create initial positions for docking
14
/// You can either randomize partner 1 or partner 2, spin partner 2, or
15
/// perform a simple perturbation.
16
/// @author Monica Berrondo
17
/// @author Modified by Sergey Lyskov
18
19
20
#ifndef INCLUDED_protocols_docking_DockMCMCycle_hh
21
#define INCLUDED_protocols_docking_DockMCMCycle_hh
22
23
#include <
protocols/docking/types.hh
>
24
#include <
protocols/docking/DockMCMCycle.fwd.hh
>
25
// AUTO-REMOVED #include <protocols/docking/DockTaskFactory.hh>
26
27
// Package headers
28
#include <
core/kinematics/MoveMap.fwd.hh
>
29
#include <
core/pack/task/TaskFactory.fwd.hh
>
30
#include <
core/pose/Pose.fwd.hh
>
31
32
#include <
protocols/moves/MonteCarlo.hh
>
33
#include <
protocols/moves/Mover.hh
>
34
#include <
protocols/moves/TrialMover.fwd.hh
>
35
36
#include <
core/scoring/ScoreFunction.fwd.hh
>
37
38
#include <
protocols/moves/MoverContainer.fwd.hh
>
39
#include <utility/vector1.hh>
40
#include <iostream>
41
42
43
44
// option key includes
45
46
namespace
protocols {
47
namespace
docking
{
48
49
class
DockMCMCycle
:
public
moves::Mover
50
{
51
typedef
core::Real
Real
;
52
public
:
53
54
/// @brief Default constructor
55
DockMCMCycle
();
56
57
/// @brief Constructor with two arguments: The first argument is the jump number to dock over.
58
/// The second is a scorefunction that will be used for docking and packing.
59
DockMCMCycle
(
60
core::Size
const
rb_jump,
61
core::scoring::ScoreFunctionOP
scorefxn
62
);
63
64
/// @brief Constructor with arguments: The first argument is the jump number to dock over.
65
/// The second is a scorefunction that will be used for docking, the third is a scorefunction that will be used for packing.
66
DockMCMCycle
(
67
core::Size
const
rb_jump,
68
core::scoring::ScoreFunctionOP
scorefxn,
69
core::scoring::ScoreFunctionOP
scorefxn_pack
70
);
71
72
/// @brief Constructor with arguments: The first argument is a DockJumps vector.
73
/// The second is a scorefunction that will be used for docking, the third is a scorefunction that will be used for packing.
74
DockMCMCycle
(
75
DockJumps
const
movable_jumps
,
76
core::scoring::ScoreFunctionOP
scorefxn,
77
core::scoring::ScoreFunctionOP
scorefxn_pack
78
);
79
80
~DockMCMCycle
();
81
82
//clone
83
protocols::moves::MoverOP
clone
()
const
;
84
85
/// @brief Sets the default values for all members
86
void
set_default
();
87
88
void
set_move_map
(
core::kinematics::MoveMapOP
movemap );
89
void
set_min_type
(
std::string
min_type ) {
min_type_
= min_type; }
90
void
set_task_factory
(
core::pack::task::TaskFactoryCOP
tf );
91
92
moves::MonteCarloOP
get_mc
() {
return
mc_
; }
93
94
// protocol functions
95
virtual
void
apply
(
core::pose::Pose
& pose );
96
virtual
std::string
get_name
()
const
;
97
98
void
show
( std::ostream & out=std::cout )
const
;
99
friend
std::ostream &
operator<<
(std::ostream& out,
const
DockMCMCycle
& dp );
100
101
102
//JQX: allow the DockMCMProtocol.cc file to change the index of the CycleMover
103
void
reset_cycle_index
();
104
void
init_mc
(
core::pose::Pose
& pose);
105
106
void
set_scmin
(
bool
setting){
scmin_
=setting;}
107
void
set_rtmin
(
bool
setting){
rtmin_
=setting;}
108
void
set_rot_magnitude
(
core::Real
value){
rot_magnitude_
=value;}
109
110
DockJumps
const
&
movable_jumps
()
const
;
111
112
private
:
113
core::scoring::ScoreFunctionOP
scorefxn_
;
114
core::scoring::ScoreFunctionOP
scorefxn_pack_
;
115
core::kinematics::MoveMapOP
movemap_
;
116
// moves::TrialMoverOP dock_mcm_mover_;
117
moves::CycleMoverOP
dock_mcm_cycle_
;
//JQX define it
118
moves::MonteCarloOP
mc_
;
119
120
121
122
// docking
123
DockJumps
movable_jumps_
;
124
core::Real
trans_magnitude_
,
rot_magnitude_
;
125
bool
rtmin_
,
scmin_
;
// belongs to the packer task
126
127
void
setup_protocol
(
core::pose::Pose
& pose );
128
/// @brief tf_ will be used internally by dockinghires. It will be initialized through the init_task_factory_ below
129
core::pack::task::TaskFactoryOP
tf_
;
130
/// @brief task_factory_ is used by outside movers to set the internal taskfactory. Does not actually override internal TF!
131
/// init_task_factory_ instead acts as a starting point and the docking mover masks over init_task_factory
132
core::Size
repack_period_
;
133
134
bool
norepack1_
;
// belongs to the packer task
135
bool
norepack2_
;
// belongs to the packer task
136
137
// minimization
138
core::Real
min_tolerance_
;
139
bool
nb_list_
;
140
std::string
min_type_
;
141
};
142
143
}
// docking
144
}
// protocols
145
146
#endif
Generated on Sat Jun 1 2013 11:47:17 for Rosetta 3.5 by
1.8.4