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
ligand_docking
LigandDockProtocol.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/ligand_docking/LigandDockProtocol.hh
11
///
12
/// @brief
13
/// @author Ian W. Davis
14
15
16
#ifndef INCLUDED_protocols_ligand_docking_LigandDockProtocol_hh
17
#define INCLUDED_protocols_ligand_docking_LigandDockProtocol_hh
18
19
#include <
protocols/ligand_docking/LigandDockProtocol.fwd.hh
>
20
21
// AUTO-REMOVED #include <core/grid/CartGrid.fwd.hh>
22
#include <
core/kinematics/MoveMap.fwd.hh
>
23
#include <
core/pose/Pose.fwd.hh
>
24
#include <
core/scoring/ScoreFunction.fwd.hh
>
25
// AUTO-REMOVED #include <protocols/enzdes/EnzConstraintIO.hh> //for adding constraints if demanded by user
26
#include <
protocols/ligand_docking/LigandBaseProtocol.hh
>
27
#include <
protocols/ligand_docking/ResidueTorsionRestraints.fwd.hh
>
28
#include <
protocols/moves/MonteCarlo.fwd.hh
>
29
#include <
protocols/moves/Mover.hh
>
30
// AUTO-REMOVED #include <utility/vector1.hh>
31
32
#include <map>
33
34
#include <
protocols/toolbox/match_enzdes_util/EnzConstraintIO.fwd.hh
>
35
#include <utility/vector1.hh>
36
37
38
#ifdef WIN32
39
#include <
protocols/ligand_docking/ResidueTorsionRestraints.hh
>
40
#include <
protocols/ligand_docking/MinimizeLigand.hh
>
41
#endif
42
43
namespace
protocols {
44
namespace
ligand_docking {
45
46
47
///@brief
48
///
49
///@details
50
///
51
class
LigandDockProtocol
:
public
protocols::ligand_docking::LigandBaseProtocol
52
{
53
public
:
54
55
LigandDockProtocol
();
56
57
LigandDockProtocol
(
58
std::string
const
protocol,
59
bool
const
minimize_ligand,
60
bool
const
minimize_backbone,
61
bool
const
tether_ligand,
62
bool
const
mutate_same_name3,
63
core::Real
const
ligand_chi_stddev_deg,
64
core::Real
const
protein_CA_stddev_Ang,
65
core::Real
const
ligand_tether_stddev_Ang_
=-1,
66
core::Size
const
ligand_shear_moves=0
67
);
68
69
virtual
~LigandDockProtocol
();
70
71
void
add_start_from
(
core::Real
x,
core::Real
y,
core::Real
z);
72
73
virtual
void
apply
(
core::pose::Pose
& pose );
74
virtual
std::string
get_name
()
const
;
75
76
void
77
append_ligand_docking_scores
(
78
core::pose::Pose
const
& before,
79
core::pose::Pose
const
& after,
80
core::scoring::ScoreFunctionCOP
scorefxn,
81
std::map< std::string, core::Real > & scores,
//< appended to for output
82
protocols::toolbox::match_enzdes_util::EnzConstraintIOCOP
constraint_io = NULL
83
)
const
;
84
85
private
:
86
87
LigandDockProtocol
(
LigandDockProtocol
const
& that);
88
89
void
90
classic_protocol
(
91
core::pose::Pose
& pose,
92
int
jump_id,
93
core::scoring::ScoreFunctionOP
scorefxn,
94
protocols::moves::MonteCarloOP
monteCarlo,
95
core::Size
num_cycles,
96
core::Size
repack_every_Nth
97
)
const
;
98
99
void
100
shear_min_protocol
(
101
core::pose::Pose
& pose,
102
int
jump_id,
103
core::scoring::ScoreFunctionOP
scorefxn,
104
protocols::moves::MonteCarloOP
monteCarlo,
105
core::Size
num_cycles
106
)
const
;
107
108
void
109
optimize_orientation3
(
110
core::pose::Pose
& pose,
111
int
jump_id,
112
core::Size
lig_id
113
);
114
115
void
116
random_conformer
(
117
core::pose::Pose
& pose
118
)
const
;
119
120
protocols::moves::MoverOP
121
make_dockmcm_mover
(
122
core::pose::Pose
const
& pose,
123
int
jump_id,
124
protocols::moves::MoverOP
repack_mover,
125
protocols::moves::MoverOP
rigbod_mover,
126
core::kinematics::MoveMapOP
movemap,
//< would be COP but MinMover wants OP
127
core::scoring::ScoreFunctionOP
scorefxn,
128
protocols::moves::MonteCarloOP
monteCarlo
129
)
const
;
130
131
void
132
restrain_ligand_chis
(
133
core::pose::Pose
& pose
134
);
135
136
private
:
137
std::string
protocol_
;
// i.e. 50 cycles instead of just 5
138
bool
minimize_ligand_
;
139
bool
minimize_backbone_
;
140
bool
tether_ligand_
;
141
bool
ligand_protonation_
;
142
core::Real
ligand_chi_stddev_deg_
;
143
core::Real
protein_CA_stddev_Ang_
;
144
core::Real
ligand_tether_stddev_Ang_
;
145
core::Size
ligand_shear_moves_
;
146
bool
minimize_all_rsds_
;
147
bool
repack_all_rsds_
;
148
bool
rottrials_all_rsds_
;
149
bool
minimize_water_
;
150
utility::vector1< core::Vector >
start_from_pts_
;
// may be empty
151
utility::vector1< protocols::ligand_docking::ResidueTorsionRestraintsOP >
ligand_torsion_restraints_
;
152
153
};
// class LigandDockProtocol
154
155
156
}
// namespace ligand_docking
157
}
// namespace protocols
158
159
#endif // INCLUDED_protocols_ligand_docking_LigandDockProtocol_HH
Generated on Sat Jun 1 2013 11:56:05 for Rosetta 3.5 by
1.8.4