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
fldsgn
NcontactsCalculator.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 ./src/protocols/fldsgn/NcontactsCalculator.hh
11
/// @brief header file for NcontactsCalculator class.
12
/// @detailed
13
/// @author Nobuyasu Koga ( nobuyasu@uw.edu )
14
15
16
#ifndef INCLUDED_protocols_fldsgn_NcontactsCalculator_hh
17
#define INCLUDED_protocols_fldsgn_NcontactsCalculator_hh
18
19
#include <
core/pose/metrics/PoseMetricCalculatorBase.hh
>
20
#include <basic/MetricValue.fwd.hh>
21
#include <
core/types.hh
>
22
#include <
core/pose/Pose.fwd.hh
>
23
#include <
core/conformation/Atom.fwd.hh
>
24
#include <
core/conformation/Residue.fwd.hh
>
25
#include <
protocols/fldsgn/topology/SS_Info2.fwd.hh
>
26
27
#include <utility/vector1.hh>
28
29
30
// Utility headers
31
32
//// C++ headers
33
34
namespace
protocols {
35
namespace
fldsgn {
36
37
class
NcontactsCalculator
:
public
core::pose::metrics::StructureDependentCalculator
{
38
public
:
39
40
41
typedef
core::pose::metrics::StructureDependentCalculator
Super
;
42
typedef
std::string
String
;
43
typedef
core::Size
Size
;
44
typedef
core::Real
Real
;
45
typedef
core::pose::Pose
Pose
;
46
typedef
core::conformation::Atom
Atom
;
47
typedef
core::conformation::Residue
Residue
;
48
typedef
core::pose::metrics::PoseMetricCalculatorOP
PoseMetricCalculatorOP
;
49
typedef
basic::MetricValueBase
MetricValueBase
;
50
//typedef protocols::fldsgn::topology::SS_Info2 SS_Info2;
51
//typedef protocols::fldsgn::topology::SS_Info2_OP SS_Info2_OP;
52
53
54
55
public
:
// constructor/destructor
56
57
58
/// @brief default constructor
59
NcontactsCalculator
();
60
61
/// @brief default constructor
62
NcontactsCalculator
(
Real
const
condist,
Size
const
isep_sep );
63
64
/// @brief copy constructor
65
NcontactsCalculator
(
NcontactsCalculator
const
& rval );
66
67
/// @brief destructor
68
virtual
~NcontactsCalculator
();
69
70
71
public
:
// virtual constructor
72
73
74
/// @brief make clone
75
PoseMetricCalculatorOP
clone
()
const
{
return
new
NcontactsCalculator
( *
this
); }
76
77
78
public
:
// mutator
79
80
/// @brief set contact distance
81
void
contact_distance
(
Real
const
r ) {
condist_
= r; }
82
83
/// @breif ignore loops for calculation
84
void
ignore_loops
(
bool
const
b
) {
ignore_loops_
=
b
; };
85
86
/// @breif ignore residue pairs of which residue belong to same ss element
87
void
ignore_same_sselement
(
bool
const
b
) {
ignore_same_sselement_
=
b
; }
88
89
/// @breif ignore residue pairs of which residue belong to same beta sheet ( default true )
90
void
ignore_same_sheet
(
bool
const
b
) {
ignore_same_sheet_
=
b
; }
91
92
/// @brief use only calpha for calculation
93
void
use_only_calpha
(
bool
const
b
) {
use_only_calpha_
=
b
; }
94
95
protected
:
96
97
98
virtual
void
lookup
(
String
const
& key,
MetricValueBase
* valptr )
const
;
99
virtual
std::string
print
(
String
const
& key )
const
;
100
virtual
void
recompute
(
Pose
const
& this_pose );
101
102
103
private
:
104
105
/// @brief distact used for juding contact pair ( default 6.0 )
106
Real
condist_
;
107
108
/// @brief residue pairs of i < i+isep_residue_ are used for counting #countacts ( default 4 )
109
Size
isep_residue_
;
110
111
/// @breif ignore loops for calculation ( default false )
112
bool
ignore_loops_
;
113
114
/// @breif ignore residue pairs of which residue belong to same ss element ( default false )
115
bool
ignore_same_sselement_
;
116
117
/// @breif ignore residue pairs of which residue belong to same beta sheet ( default false )
118
bool
ignore_same_sheet_
;
119
120
/// @brief use only calpha atoms for calculation ( default false )
121
bool
use_only_calpha_
;
122
123
/// @brief #atom-contacts among all heavy atoms
124
Real
nc_allatm_
;
125
126
/// @brief #atom-contacts among hydrophobic heavy atoms
127
Real
nc_hpatm_
;
128
129
/// @brief #atom-contacts among heavy atoms of sidechains of hydrophobic residues
130
Real
nc_hpres_
;
131
132
/// @brief
133
Real
ss_entrpy_
;
134
135
};
//NontactCalculator
136
137
138
}
// ns toolbox
139
}
// ns protocols
140
141
#endif
Generated on Sat Jun 1 2013 11:50:01 for Rosetta 3.5 by
1.8.4