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
scoring
methods
pcs2
PcsTensor.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
//////////////////////////////////////////////
11
/// @begin
12
///
13
/// @file protocols/scoring/methods/pcs2/PcsTensor.hh
14
///
15
/// @brief Hold chi-tensor information of PCS
16
///
17
/// @detailed
18
///
19
/// @param
20
///
21
/// @return
22
///
23
/// @remarks
24
///
25
/// @references JBNMR 2008 41:179-189 schmitz et all will explains the tensor convention used
26
///
27
/// @authorsv Christophe Schmitz
28
///
29
/// @last_modified February 2010
30
////////////////////////////////////////////////
31
32
#ifndef INCLUDED_protocols_scoring_methods_pcs2_PcsTensor_hh
33
#define INCLUDED_protocols_scoring_methods_pcs2_PcsTensor_hh
34
35
// Package headers
36
37
// Project headers
38
#include <
core/types.hh
>
39
40
// Utility headers
41
42
// Numeric headers
43
44
// Objexx headers
45
46
// C++ headers
47
#include <string>
48
49
namespace
protocols{
50
namespace
scoring{
51
namespace
methods{
52
namespace
pcs2
{
53
54
class
PcsTensor
{
55
private
:
56
57
core::Real
a_
;
//alpha
58
core::Real
b_
;
//beta
59
core::Real
g_
;
//gamma
60
core::Real
ax_
;
//axial component
61
core::Real
rh_
;
//rhombic component
62
//ideally, alpha beta gamma ax and rh will follow the UTR convention
63
//see numbat paper JBNMR 2008 41:179-189 schmitz et all
64
65
core::Real
chi_xx_
;
66
core::Real
chi_yy_
;
67
core::Real
chi_xy_
;
68
core::Real
chi_xz_
;
69
core::Real
chi_yz_
;
70
71
std::string
label_
;
//most likely the filename of the pcs exepriment
72
//Used to identify which data has been used in case of multiple lanthanides
73
74
private
:
75
76
/// @brief NOT READY. This should set alpha beta gamma axial rhombic
77
void
78
set_abgar
();
79
80
public
:
81
PcsTensor
();
//Construct
82
83
~PcsTensor
();
//destruct
84
85
PcsTensor
(
PcsTensor
const
& other);
//copy
86
87
PcsTensor
&
//=
88
operator=
(
PcsTensor
const
& other);
89
90
PcsTensor
(
core::Real
const
chi_xx,
91
core::Real
const
chi_yy,
92
core::Real
const
chi_xy,
93
core::Real
const
chi_xz,
94
core::Real
const
chi_yz,
95
std::string
const
label);
96
97
/// @brief Give me delta chi_xx
98
core::Real
99
get_delta_X_xx
()
const
;
100
101
/// @brief Give me delta chi_yy
102
core::Real
103
get_delta_X_yy
()
const
;
104
105
/// @brief Give me delta chi_zz
106
core::Real
107
get_delta_X_zz
()
const
;
108
109
/// @brief Give me chi_zz
110
core::Real
111
get_chi_zz
()
const
;
112
113
/// @brief Give me chi_xx
114
core::Real
115
get_chi_xx
()
const
;
116
117
/// @brief Give me chi_yy
118
core::Real
119
get_chi_yy
()
const
;
120
121
/// @brief Give me chi_xy
122
core::Real
123
get_chi_xy
()
const
;
124
125
/// @brief Give me chi_xz
126
core::Real
127
get_chi_xz
()
const
;
128
129
/// @brief Give me chi_yz
130
core::Real
131
get_chi_yz
()
const
;
132
133
/// @brief Reset the tensor from the other tensor value
134
void
135
reset_from_ref
(
PcsTensor
& other);
136
137
/// @brief Give me the tensor label
138
std::string
const
&
139
get_label
()
const
;
140
141
/// @brief Reset the tensor from the given values.
142
void
143
reset_tensor
(
core::Real
const
chi_xx,
144
core::Real
const
chi_yy,
145
core::Real
const
chi_xy,
146
core::Real
const
chi_xz,
147
core::Real
const
chi_yz);
148
149
/// @brief Print me
150
friend
std::ostream &
151
operator<<
(std::ostream& out,
const
PcsTensor
&me);
152
};
153
154
155
}
//namespace pcs2
156
}
//namespace methods
157
}
//namespace scoring
158
}
//namespace protocols
159
#endif
Generated on Sat Jun 1 2013 12:11:38 for Rosetta 3.5 by
1.8.4