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
relax
CentroidRelax.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
6
// (c) under license. The Rosetta software is developed by the contributing
7
// (c) members of the Rosetta Commons. For more information, see
8
// (c) http://www.rosettacommons.org. Questions about this can be addressed to
9
// (c) University of Washington UW TechTransfer,email:license@u.washington.edu.
10
11
/// @file protocols/relax/CentroidRelax.hh
12
/// @brief Centroid-based relax, using Frank Dimaio's updated centroid statistics
13
/// @author Jared Adolf-Bryfogle (jadolfbr@gmail.com)
14
15
#ifndef INCLUDED_protocols_relax_CENTROIDRELAX_HH
16
#define INCLUDED_protocols_relax_CENTROIDRELAX_HH
17
18
19
//Core Headers
20
#include <
core/pose/Pose.fwd.hh
>
21
#include <
core/scoring/ScoreFunction.hh
>
22
#include <
core/scoring/ScoreType.hh
>
23
#include <
core/kinematics/MoveMap.hh
>
24
25
//Protocol Headers
26
#include <
protocols/relax/RelaxProtocolBase.hh
>
27
#include <
protocols/simple_moves/ReturnSidechainMover.hh
>
28
#include <
protocols/moves/Mover.hh
>
29
30
//Utility Headers
31
#include <utility/vector1.hh>
32
33
namespace
protocols{
34
namespace
relax{
35
using namespace
core::scoring;
36
using namespace
protocols::simple_moves;
37
using namespace
core::kinematics;
38
using namespace
core::pack::task;
39
using
core::Size
;
40
using
std::string
;
41
using
core::Real
;
42
using
core::pose::Pose
;
43
using
utility::vector1
;
44
45
///@brief Relax a pose using Frank Dimaio's smooth centroid statistics.
46
///Currently under optimization.
47
///
48
///@details Minimize a centroid representation of a pose. Ramp VDW/Rama or both.
49
///
50
///May tweak structure by up to ~2.5 A without constraints.
51
///Use custom constraints or coordinate constraints through relax options for best results.
52
///Using starting coordinate constraints, structure is tweaked by ~.3/.4 A
53
///Use increased VDW radii option for bb to improve bb-geometry when not using constraints
54
///
55
///
56
class
CentroidRelax
:
public
RelaxProtocolBase
{
57
public
:
58
CentroidRelax
();
59
CentroidRelax
(
MoveMapOP
mm);
60
CentroidRelax
(
MoveMapOP
mm,
ScoreFunctionOP
cen_scorefxn_in);
61
62
//Specific functions for Mover...
63
virtual
~
CentroidRelax
();
64
65
virtual
string
get_name()
const
;
66
67
virtual
protocols::moves::MoverOP
clone
()
const
;
68
69
void
set_defaults();
70
71
void
set_rounds(
Size
rounds);
72
73
///@brief use larger VDW radii for atoms - bb for now - default True (Courtesy of Frank Dimaio)
74
void
set_use_increased_vdw_radii(
bool
use);
75
76
///@brief Sets to use Rama2b instead of Rama - default True
77
void
set_use_rama2b(
bool
use);
78
79
///@brief Ramp Rama according to centroid relax parameters
80
void
set_ramp_rama(
bool
use);
81
82
///@brief Ramp VDW according to centroid relax parameters
83
void
set_ramp_vdw(
bool
use);
84
85
///@brief Sets main scorefunction used for centroid minimization.
86
void
set_score_function(
ScoreFunctionOP
cen_score);
87
88
///@brief Sets fullatom scorefunction - only used for scoring the full atom pose before and after protocol.
89
void
set_fa_score_function(
ScoreFunctionOP
fa_score);
90
91
///@brief Sets the minimizer type.
92
void
set_min_type(
string
min);
93
94
///@brief Sets to use the cartesian minimizer.
95
void
set_cartesian(
bool
cart);
96
97
///@brief If a fullatom pose is passed, should we repack sidechains according to movemap?
98
void
do_final_repack(
bool
repack_sc);
99
100
///@brief Applies the protocol, See notes
101
///
102
///@details Setting ramp_rama and ramp_vdw to false switches to the BASIC protocol
103
/// which is rounds of the centroid minmover
104
virtual
void
apply(
Pose
& pose );
105
106
private
:
107
108
///@brief Load the default parameters from the default file.
109
void
read_default_parameters();
110
111
///@brief used internally to setup extra stuff for movemap.
112
void
setup_class_movemap_and_constraints(
Pose
& pose);
113
114
///@brief increase VDW radii for backbone to help geometry and decrease rmsd
115
void
setup_increased_vdw_radii();
116
117
bool
use_increased_vdw_radii_
;
118
bool
ramp_rama_
;
119
bool
ramp_vdw_
;
120
Size
rounds_
;
121
bool
cartesian_mode_
;
122
bool
repack_sc_
;
123
ScoreFunctionOP
cen_scorefxn_
;
124
ScoreFunctionOP
fa_scorefxn_
;
125
MoveMapOP
movemap_
;
126
ScoreType
rama_type_
;
127
128
///@brief Container for ramp settings
129
struct
parameters
{
130
vector1< Real >
vdw_params
;
131
vector1< Real >
rama_params
;
132
vector1< Real >
min_params
;
133
vector1< Real >
cst_params
;
134
};
135
136
parameters
def_parameters
;
137
138
};
139
}
140
}
141
142
#endif //#ifndef INCLUDED_protocols/relax_CENTROIDRELAX_HH
Generated on Sat Jun 1 2013 12:08:40 for Rosetta 3.5 by
1.8.4