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
core
scoring
rna
chemical_shift
RNA_ChemicalShiftEnergy.cc
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 core/scoring/rna/chemical_shift/RNA_ChemicalShiftEnergy.cc
11
/// @brief Energy score based on the agreement between experimentally determined and theoretically calculated NMR chemical_shift
12
/// @author Parin Sripakdeevong (sripakpa@stanford.edu)
13
14
15
// Unit headers
16
#include <
core/scoring/rna/chemical_shift/RNA_ChemicalShiftEnergy.hh
>
17
#include <
core/scoring/rna/chemical_shift/RNA_ChemicalShiftEnergyCreator.hh
>
18
19
#include <
core/scoring/ScoringManager.hh
>
20
21
// Project headers
22
#include <
core/pose/Pose.hh
>
23
#include <
core/conformation/Residue.hh
>
24
#include <
core/conformation/Atom.hh
>
25
26
27
// Utility headers
28
29
//Auto Headers
30
#include <
core/id/AtomID.hh
>
31
#include <
core/scoring/EnergyMap.hh
>
32
33
////////////////////////////////////////////////////////
34
35
36
// C++
37
38
namespace
core {
39
namespace
scoring {
40
namespace
rna {
41
namespace
chemical_shift {
42
43
44
/// @details This must return a fresh instance of the RNA_ChemicalShiftEnergy class,
45
/// never an instance already in use
46
methods::EnergyMethodOP
47
RNA_ChemicalShiftEnergyCreator::create_energy_method
(
48
methods::EnergyMethodOptions
const
&
49
)
const
{
50
return
new
RNA_ChemicalShiftEnergy
;
51
}
52
53
ScoreTypes
54
RNA_ChemicalShiftEnergyCreator::score_types_for_method
()
const
{
55
ScoreTypes
sts;
56
sts.push_back(
rna_chem_shift
);
57
return
sts;
58
}
59
60
61
/// c-tor
62
RNA_ChemicalShiftEnergy::RNA_ChemicalShiftEnergy
():
63
parent
( new
RNA_ChemicalShiftEnergyCreator
),
64
rna_chemical_shift_potential_(
ScoringManager
::get_instance()->get_RNA_ChemicalShiftPotential() )
65
{}
66
67
/// clone
68
methods::EnergyMethodOP
69
RNA_ChemicalShiftEnergy::clone
()
const
70
{
71
return
new
RNA_ChemicalShiftEnergy
;
72
}
73
74
75
/////////////////////////////////////////////////////////////////////////////
76
// scoring
77
/////////////////////////////////////////////////////////////////////////////
78
79
/////////////////////////////////////////////////////////////////////////////
80
void
81
RNA_ChemicalShiftEnergy::setup_for_scoring
(
pose::Pose
& ,
ScoreFunction
const
& )
const
82
{
83
84
85
//MIGHT BENEFIT FROM SOME BOOKKEEPING such as MAPPING atom_namerealatomdata_index/ to atom_index for fast look-up;
86
87
}
88
89
90
/////////////////////////////////////////////////////////////////////////////
91
void
92
RNA_ChemicalShiftEnergy::setup_for_derivatives
(
pose::Pose
& ,
ScoreFunction
const
& )
const
93
{
94
95
96
//MIGHT BENEFIT FROM SOME BOOKKEEPING such as MAPPING atom_namerealatomdata_index/ to atom_index for fast look-up;
97
//or precalculate the calc_chem_shift values of the atoms with CS_data
98
//this assumes that the pose conformation does change between the call to setup_for_derivative() and the calls to eval_atom_derivative()
99
100
}
101
102
103
///////////////////////////////////////////////////////////////////////////////
104
void
105
RNA_ChemicalShiftEnergy::finalize_total_energy
(
106
pose::Pose
& pose,
107
ScoreFunction
const
&,
108
EnergyMap
& totals
109
)
const
{
110
111
rna_chemical_shift_potential_
.
finalize_total_energy
(pose, totals);
112
113
}
// finalize_total_energy
114
115
///////////////////////////////////////////////////////////////////////////////
116
void
117
RNA_ChemicalShiftEnergy::eval_atom_derivative
(
118
id::AtomID
const
& atom_id,
119
pose::Pose
const
& pose,
120
kinematics::DomainMap
const
& domain_map,
121
ScoreFunction
const
&,
122
EnergyMap
const
& weights,
123
Vector
& F1,
124
Vector
& F2
125
)
const
126
{
127
128
rna_chemical_shift_potential_
.
eval_atom_derivative
( atom_id, pose, domain_map, weights, F1, F2 );
129
130
131
}
// eval atom derivative
132
133
core::Size
134
RNA_ChemicalShiftEnergy::version
()
const
135
{
136
return
1;
// Initial versioning
137
}
138
139
140
}
// chemical_shift
141
}
// rna
142
}
// scoring
143
}
// core
Generated on Sat Jun 1 2013 11:39:51 for Rosetta 3.5 by
1.8.4