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
potentials
sspot
NatbiasStrandPairPotential.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/fldsgn/potentials/sspot/NatbiasStrandPairPotential.hh
11
/// @brief native biased centroid score for strand pairings
12
/// @author Nobuyasu Koga ( nobuyasu@uw.edu )
13
14
15
#ifndef INCLUDED_protocols_fldsgn_potentials_sspot_NatbiasStrandPairPotential_hh
16
#define INCLUDED_protocols_fldsgn_potentials_sspot_NatbiasStrandPairPotential_hh
17
18
#include <
protocols/fldsgn/potentials/sspot/NatbiasStrandPairPotential.fwd.hh
>
19
20
#include <
core/types.hh
>
21
#include <
core/pose/Pose.fwd.hh
>
22
// AUTO-REMOVED #include <core/scoring/EnergyGraph.fwd.hh>
23
#include <
protocols/fldsgn/topology/SS_Info2.fwd.hh
>
24
#include <
protocols/fldsgn/topology/BB_Pos.fwd.hh
>
25
#include <
protocols/fldsgn/topology/DimerPairing.fwd.hh
>
26
#include <
protocols/fldsgn/topology/StrandPairing.fwd.hh
>
27
28
// ObjexxFCL Headers
29
#include <ObjexxFCL/FArray1D.hh>
30
// AUTO-REMOVED #include <ObjexxFCL/FArray3D.hh>
31
#include <ObjexxFCL/FArray4D.hh>
32
33
// Utility Headers
34
#include <utility/pointer/ReferenceCount.hh>
35
36
#include <utility/vector1.hh>
37
38
39
namespace
protocols {
40
namespace
fldsgn {
41
namespace
potentials {
42
namespace
sspot {
43
44
/// @brief secondary structure scoring cut from classic rosetta structure.h/structure.cc
45
class
NatbiasStrandPairPotential
:
public
utility::pointer::ReferenceCount
{
46
public
:
47
48
49
typedef
std::string
String
;
50
typedef
core::Size
Size
;
51
typedef
core::Real
Real
;
52
typedef
core::Vector
Vector
;
53
typedef
core::pose::Pose
Pose
;
54
typedef
protocols::fldsgn::topology::BB_Pos
BB_Pos
;
55
typedef
protocols::fldsgn::topology::SS_Info2
SS_Info2
;
56
typedef
protocols::fldsgn::topology::DimerPairings
DimerPairings
;
57
typedef
protocols::fldsgn::topology::StrandPairingSetOP
StrandPairingSetOP
;
58
typedef
protocols::fldsgn::topology::StrandPairingSetCOP
StrandPairingSetCOP
;
59
60
typedef
ObjexxFCL::FArray1D< int >
FArray1D_int
;
61
typedef
ObjexxFCL::FArray1D< Real >
FArray1D_real
;
62
typedef
ObjexxFCL::FArray4D< Real >
FArray4D_real
;
63
64
65
public
:
// construct/destruct
66
67
68
/// @brief default constructor
69
NatbiasStrandPairPotential
();
70
71
/// @brief default constructor
72
NatbiasStrandPairPotential
(
StrandPairingSetOP
const
spairset );
73
74
/// @brief default destructor
75
virtual
~NatbiasStrandPairPotential
();
76
77
78
public
:
// scoring
79
80
81
/// @brief score secondary structure
82
void
score
(
Pose
const
& pose,
SS_Info2
const
& ss_info,
Real
& ss_score )
const
;
83
84
85
public
:
86
87
88
// @brief
89
void
set_native_spairset
(
StrandPairingSetOP
const
spairset );
90
91
92
private
:
// methods
93
94
95
/// @brief calculate sum of dot product of the co vectors of strand dimers ss1 and ss2
96
/// @brief with the vector connecting the midpoints of the dimer vectors (vdist)
97
/// @brief also determine return the sign of the dot products for each dimer
98
/// @brief to determine which direction the CO groups point
99
void
100
pair_dp
(
101
Size
const
& ss1,
102
Size
const
& ss2,
103
BB_Pos
const
& bb_pos,
104
Real
& dp,
105
Vector
const
& mid_vector,
106
Size
& sign1,
107
Size
& sign2
108
)
const
;
109
110
111
private
:
112
113
114
// @brief
115
Real
calc_phithetascore
(
Real
const
phi
,
Real
const
theta )
const
;
116
117
// @brief
118
Real
calc_dotscore
(
Real
const
dpall )
const
;
119
120
/// @brief
121
Real
calc_rsigmascore
(
Real
sig,
Real
dist,
Size
const
sign1,
Size
const
sign2 )
const
;
122
123
/// @brief
124
static
void
rsigma_dot_initializer
(
FArray4D_real
& rsigma_dot );
125
126
127
private
:
// initialization
128
129
130
/// @brief load phi/theta bins for use in secondary structure scoring
131
void
load_phi_theta_bins
(
String
const
& ss_filename =
"scoring/score_functions/SecondaryStructurePotential/phi.theta.36.SS.resmooth"
);
132
133
/// @brief
134
void
load_dotscore_bins
();
135
136
137
138
private
:
// secondary structure data
139
140
141
/// @brief
142
Real
strand_dist_cutoff_
;
143
/// @brief
144
FArray4D_real
phithetascore_
;
145
/// @brief
146
FArray1D_real
dotscore_
;
147
/// @brief
148
FArray4D_real
rsigma_dot_
;
149
150
/// @brief
151
StrandPairingSetOP
native_spairset_
;
152
153
154
};
155
156
}
// ns sspot
157
}
// ns potentials
158
}
// ns fldsgn
159
}
// ns protocols
160
161
162
#endif
Generated on Sat Jun 1 2013 11:50:06 for Rosetta 3.5 by
1.8.4