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
loophash
MPI_LoopHashRefine_Master.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/loophash/MPI_LoopHashRefine_Master.hh
11
/// @brief
12
/// @author Mike Tyka
13
14
#ifndef INCLUDED_protocols_loophash_MPI_LoopHashRefine_Master_hh
15
#define INCLUDED_protocols_loophash_MPI_LoopHashRefine_Master_hh
16
17
#include <
protocols/wum/SilentStructStore.hh
>
18
#include <
protocols/wum/MPI_WorkUnitManager.hh
>
19
#include <
protocols/loophash/MPI_LoopHashRefine.hh
>
20
// AUTO-REMOVED #include <protocols/loophash/LoopHashSampler.fwd.hh>
21
// AUTO-REMOVED #include <protocols/loophash/LocalInserter.fwd.hh>
22
23
#include <
core/types.hh
>
24
// AUTO-REMOVED #include <core/pose/Pose.hh>
25
#include <utility/vector1.hh>
26
#include <
core/io/silent/SilentStruct.fwd.hh
>
27
// AUTO-REMOVED #include <core/io/silent/ProteinSilentStruct.hh>
28
#include <string>
29
#include <vector>
30
31
namespace
protocols {
32
namespace
loophash {
33
34
35
class
MPI_LoopHashRefine_Master
:
public
MPI_LoopHashRefine
{
36
public
:
37
MPI_LoopHashRefine_Master
(
core::Size
my_emperor
,
38
core::Size
master_rank
):
39
MPI_LoopHashRefine
(
'M'
),
40
my_emperor_
( my_emperor ),
41
master_rank_
( master_rank )
42
{
43
set_defaults
();
44
}
45
46
virtual
~MPI_LoopHashRefine_Master
(){};
47
48
void
set_defaults
();
49
50
public
:
51
virtual
void
go
();
52
53
protected
:
// overloaded functions
54
55
virtual
void
init
();
56
57
virtual
void
process_inbound_wus
();
58
59
virtual
void
process_outbound_wus
();
60
61
protected
:
// Added functions
62
63
void
create_loophash_WUs
(
const
core::io::silent::SilentStructOP
&start_struct );
64
65
void
add_relax_batch
(
protocols::wum::SilentStructStore
&start_decoys );
66
67
void
check_library_expiry_dates
();
68
69
void
load_sample_weight
();
70
71
virtual
bool
add_structure_to_library
(
core::io::silent::SilentStruct
&pss,
std::string
add_algorithm =
""
);
72
73
void
report_structure_to_emperor
(
core::io::silent::SilentStructOP
&ss ) ;
74
75
void
report_structure_to_emperor
(
core::io::silent::SilentStruct
&pss ) ;
76
77
core::Real
ev_objective_function
(
core::io::silent::SilentStructOP
&ss );
78
79
protected
:
// Accesors
80
81
core::Size
master_rank
(){
return
master_rank_
; }
82
83
core::Size
my_emperor
(){
return
my_emperor_
; }
84
private
:
85
86
// parameters
87
core::Size
max_loophash_per_structure_
;
88
core::Size
batch_relax_chunks_
;
89
core::Size
batch_relax_absolute_max_
;
90
core::Size
outbound_wu_buffer_size_
;
91
core::Size
loophash_split_size_
;
92
core::Size
library_expiry_time_
;
93
core::Size
expire_after_rounds_
;
94
bool
mpi_master_save_score_only_
;
95
// local store
96
protocols::wum::SilentStructStore
to_be_relaxed_
;
97
98
// sampling weight (is not constant!)
99
std::string
sample_weight_str_
;
100
101
// static settings
102
const
core::Size
my_emperor_
;
103
const
core::Size
master_rank_
;
104
105
std::string
objective_function
;
106
};
107
108
109
110
}
// namespace loops
111
}
// namespace protocols
112
113
114
115
#endif
116
117
118
119
Generated on Sat Jun 1 2013 11:57:24 for Rosetta 3.5 by
1.8.4