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
protein_interface_design
movers
ProteinInterfaceMultiStateDesignMover.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 ProteinInterfaceMultiStateDesignMover.hh
11
/// @brief
12
/// @author Sarel Fleishman (sarelf@uw.edu)
13
14
#ifndef INCLUDED_protocols_protein_interface_design_movers_ProteinInterfaceMultiStateDesignMover_hh
15
#define INCLUDED_protocols_protein_interface_design_movers_ProteinInterfaceMultiStateDesignMover_hh
16
#include <
protocols/protein_interface_design/movers/ProteinInterfaceMultiStateDesignMover.fwd.hh
>
17
#include <
protocols/simple_moves/PackRotamersMover.hh
>
18
19
#include <
protocols/multistate_design/MultiStatePacker.fwd.hh
>
20
// AUTO-REMOVED #include <protocols/genetic_algorithm/GeneticAlgorithm.hh>
21
#include <
protocols/filters/Filter.fwd.hh
>
22
23
#include <
core/pose/Pose.fwd.hh
>
24
#include <
core/pack/task/PackerTask.fwd.hh
>
25
#include <
core/scoring/ScoreFunction.fwd.hh
>
26
#include <
core/pack/task/TaskFactory.fwd.hh
>
27
#include <utility/tag/Tag.fwd.hh>
28
29
#include <
protocols/genetic_algorithm/GeneticAlgorithm.fwd.hh
>
30
#include <utility/vector0.hh>
31
#include <utility/vector1.hh>
32
33
34
namespace
protocols {
35
namespace
protein_interface_design {
36
namespace
movers {
37
38
///@brief wraps protein-interface specific considerations around the general multistate design / genetic algorithm framework
39
class
ProteinInterfaceMultiStateDesignMover
:
public
protocols::simple_moves::PackRotamersMover
{
40
public
:
41
typedef
multistate_design::PosType
PosType
;
42
typedef
core::pack::task::PackerTaskCOP
PackerTaskCOP
;
43
typedef
utility::pointer::owning_ptr< genetic_algorithm::GeneticAlgorithm >
44
GeneticAlgorithmOP
;
45
46
public
:
47
ProteinInterfaceMultiStateDesignMover
();
48
virtual
~ProteinInterfaceMultiStateDesignMover
();
49
virtual
void
apply
(
Pose
& );
50
virtual
std::string
get_name
()
const
;
51
void
output_results
(
Pose
& );
52
53
virtual
void
parse_my_tag
(
54
TagPtr
const
,
55
moves::DataMap
&,
56
protocols::filters::Filters_map
const
&,
57
moves::Movers_map
const
&,
58
Pose
const
& );
59
virtual
moves::MoverOP
fresh_instance
()
const
;
60
virtual
moves::MoverOP
clone
()
const
;
61
void
restrict_sequence_profile
(
core::pose::Pose
const
& pose,
core::pack::task::PackerTaskOP
const
ptask )
const
;
62
unsigned
long
sequence_space
(
core::pack::task::PackerTaskCOP
ptask )
const
;
63
void
output_alternative_states
(
core::pose::Pose
const
& output_pose )
const
;
64
65
private
:
66
void
initialize
(
Pose
& );
67
68
using
protocols::simple_moves::PackRotamersMover::run
;
69
void
run
();
70
/// @brief add target and competitor states
71
void
add_states
(
Pose
const
& );
72
73
private
:
74
GeneticAlgorithmOP
gen_alg_
;
75
// direct use of MultiStatePacker is only for outputting results
76
// (GeneticAlgorithm also holds pointer to it and uses it heavily)
77
multistate_design::MultiStatePackerOP
multistate_packer_
;
78
// option flags/parameters: constructor defaults to command line options
79
// parse_my_tag method may change them
80
core::Size
rb_jump_
;
81
core::scoring::ScoreFunctionOP
scorefxn_
;
82
core::Size
generations_
,
pop_size_
,
num_packs_
,
pop_from_ss_
,
numresults_
;
83
core::Real
fraction_by_recombination_
,
mutate_rate_
,
boltz_temp_
,
anchor_offset_
;
84
// checkpointing options
85
std::string
checkpoint_prefix_
;
86
core::Size
checkpoint_interval_
;
87
bool
checkpoint_gz_
,
checkpoint_rename_
;
88
89
bool
unbound_
,
unfolded_
,
input_is_positive_
;
90
bool
use_unbound_for_sequence_profile_
;
// use a poly-ala unbound state to decide which residues to allow at each position
91
core::Real
bump_threshold_
;
//for residues to be allowed in seq_profile
92
bool
compare_energy_to_ground_state_
;
// set internally by the mover
93
///states
94
utility::vector1< core::pose::PoseOP >
state_poses_
;
95
utility::vector1< core::pose::PoseOP >
saved_state_poses_
;
/// for dumping out pdbs of negative states at the end
96
utility::vector1< bool >
state_positive_
;
97
utility::vector1< bool >
state_unfolded_
;
98
utility::vector1< bool >
state_unbound_
;
99
utility::vector1< core::pack::task::TaskFactoryCOP >
state_task_factory_
;
// a state-specific task factory that will be applied to each state in addition to the task factory that is implied by the design process
100
std::string
fname_prefix_
;
101
};
102
103
}
//namespace movers
104
}
// namespace protein_interface_design
105
}
// namespace protocols
106
107
#endif
Generated on Sat Jun 1 2013 12:06:34 for Rosetta 3.5 by
1.8.4