Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
RNA_CS_Parameters.cc
Go to the documentation of this file.
1 // (c) Copyright Rosetta Commons Member Institutions.
2 // (c) This file is part of the Rosetta software suite and is made available under license.
3 // (c) The Rosetta software is developed by the contributing members of the Rosetta Commons.
4 // (c) For more information, see http://www.rosettacommons.org. Questions about this can be
5 // (c) addressed to University of Washington UW TechTransfer, email: license@u.washington.edu.
6 
7 
8 /// @file core/scoring/rna/chemical_shift/RNA_CS_Parameters.cc
9 /// @brief
10 /// @author Parin Sripakdeevong (sripakpa@stanford.edu)
11 
12 
13 
15 #include <ObjexxFCL/format.hh>
16 
17 //////////////////////////////////////////////////////////////////////////////////
18 //////////////////////////////////////////////////////////////////////////////////
19 //////////////////////////////////////////////////////////////////////////////////
20 using namespace core;
21 using namespace ObjexxFCL;
22 
23 namespace core {
24 namespace scoring {
25 namespace rna {
26 namespace chemical_shift {
27 
28  /////////////////////////////////////////////////////////RNA_CS_residue_parameters Class////////////////////////////////////////////////////////////////////
29 
30 
31  RNA_CS_residue_parameters::RNA_CS_residue_parameters(chemical::AA const & res_aa):
32  res_aa_(res_aa),
33  maxatoms_(40),
34  // Numerical data which is not specific for one of the bases
35  RCCO_(2.13), // RCCO Constant in the formula for calculating the ring current effect
36  MACQ_(5.368), // MACQ Constant for the q factor of the Magnetic Anisotropy (this is the paramagnetic component coefficient)
37  MACR_(1.967) // MACR Constant for the r factor of the Magnetic Anisotropy (this is the diamagnetic component coefficient)
38  //Currently no including charge parameters:
39  // CHAC a coefficent for charge calculation
40  // CHBC b coefficent for charge calculation
41  // CONV conversion factor in charge calculation
42  // CHD0 dielectric constant 0th order
43  // CHD1 dielectric constant 1st order
44  {
45 
46  // Standard configuration file for the cs calculation in DNA
47  // Numbers for RC and MA parameters from F.Ribas Prado & C.Giessner Prettre
48  // Parameters for the calculation of the ring current and atomic magnetic anisotryopy
49  // contributions to magnetic shielding constants:Nucleic Acid Bases and Intercalating
50  // agents: THEOCHEM / Journal of Molecular Structure 76 (1981) pp 81-92
51  // OSHI corrections: Jenny Cromsigt et al. J.Biomol.NMR (2001)
52 
53  utility::vector1< core::Real > indiv_real_atom_data(last_atomdesc, 0.0); //Important to set to 0.0!
54 
55  realatomdata_.clear();
56  realatomdata_.assign(maxatoms_, indiv_real_atom_data);
57 
58  ring_intensity_.clear(); //RCI ring current intensity (relative to benzene?)
59  ring_radius_.clear(); //RCR: Radius of the ring (Angstrom)
60  ring_height_.clear(); //RCH: Distance of the ring current loops to the molecular plane (Angstrom)
61 
62  atomnames_.clear();
63 
64  //P, O1P and O2P are considered sugar atom by NUCHEMICS [rename to backbone?]
65 
67 
68  BASE_="ADE"; //NUCHEMICS abbreviation.
69 
70  num_rings_=2; //RCCA 2
71 
72  ring_intensity_.push_back(0.9000); //RCI1 0.9000
73  ring_intensity_.push_back(0.6600); //RCI2 0.6600
74 
75  ring_radius_.push_back(1.3430); //RCR1 1.3430
76  ring_radius_.push_back(1.1540); //RCR2 1.1540
77 
78  ring_height_.push_back(0.5660); //RCH1 0.5660
79  ring_height_.push_back(0.5660); //RCH2 0.5660
80 
81  // 1 2 3 4 5 6 7 8 9 10
82  //ATOM N1 C2 N3 C4 C5 C6 N6 N7 C8 N9
83  //XDIR 0 2 0 1 0 0 0 0 0 0
84  //YDIR 0 2 1 2 0 0 0 0 0 0
85 
86  //RCL1 1 1 1 1 1 1 0 0 0 0
87  //RCL2 0 0 0 1 1 0 0 1 1 1
88 
89  //MACA 1 1 1 1 1 1 1 1 1 1
90  //MAQX 2.943 3.050 3.048 3.148 3.147 2.386 2.567 1.972 3.301 2.139
91  //MAQW -0.524 0.404 -0.093 -0.069 0.042 -0.075 0.000 0.186 0.131 -0.051
92  //MAQY 2.644 2.700 3.239 2.959 2.656 3.158 2.000 3.206 2.433 2.957
93  //MAQZ 2.000 2.000 2.000 2.000 2.000 2.000 2.000 2.000 2.000 2.000
94  //MARX 5.020 5.308 4.427 5.615 5.842 5.349 5.267 5.506 5.537 4.942
95  //MARY 5.283 5.308 4.902 5.615 5.842 5.349 5.267 4.980 5.537 4.942
96  //MARZ 5.206 5.494 5.212 5.648 5.716 5.515 4.606 5.252 5.609 4.443
97 
98  atomnames_.push_back("N1"); //1
99  atomnames_.push_back("C2"); //2
100  atomnames_.push_back("N3"); //3
101  atomnames_.push_back("C4"); //4
102  atomnames_.push_back("C5"); //5
103  atomnames_.push_back("C6"); //6
104  atomnames_.push_back("N6"); //7
105  atomnames_.push_back("N7"); //8
106  atomnames_.push_back("C8"); //9
107  atomnames_.push_back("N9"); //10
108 
109  realatomdata_[1 ][rcl1]=1.0;
110  realatomdata_[2 ][xdir]=2.0; realatomdata_[2 ][ydir]=2.0; realatomdata_[2 ][rcl1]=1.0;
111  realatomdata_[3 ][ydir]=1.0; realatomdata_[3 ][rcl1]=1.0;
112  realatomdata_[4 ][xdir]=1.0; realatomdata_[4 ][ydir]=2.0; realatomdata_[4 ][rcl1]=1.0; realatomdata_[4 ][rcl2]=1.0;
113  realatomdata_[5 ][rcl1]=1.0; realatomdata_[5 ][rcl2]=1.0;
114  realatomdata_[6 ][rcl1]=1.0;
115 
116  realatomdata_[8 ][rcl2]=1.0;
117  realatomdata_[9 ][rcl2]=1.0;
118  realatomdata_[10][rcl2]=1.0;
119 
120  realatomdata_[1 ][maca]=1.0; realatomdata_[1 ][maqx]=2.943; realatomdata_[1 ][maqw]=-0.524; realatomdata_[1 ][maqy]=2.644;
121  realatomdata_[2 ][maca]=1.0; realatomdata_[2 ][maqx]=3.050; realatomdata_[2 ][maqw]= 0.404; realatomdata_[2 ][maqy]=2.700;
122  realatomdata_[3 ][maca]=1.0; realatomdata_[3 ][maqx]=3.048; realatomdata_[3 ][maqw]=-0.093; realatomdata_[3 ][maqy]=3.239;
123  realatomdata_[4 ][maca]=1.0; realatomdata_[4 ][maqx]=3.148; realatomdata_[4 ][maqw]=-0.069; realatomdata_[4 ][maqy]=2.959;
124  realatomdata_[5 ][maca]=1.0; realatomdata_[5 ][maqx]=3.147; realatomdata_[5 ][maqw]= 0.042; realatomdata_[5 ][maqy]=2.656;
125  realatomdata_[6 ][maca]=1.0; realatomdata_[6 ][maqx]=2.386; realatomdata_[6 ][maqw]=-0.075; realatomdata_[6 ][maqy]=3.158;
126  realatomdata_[7 ][maca]=1.0; realatomdata_[7 ][maqx]=2.567; realatomdata_[7 ][maqw]= 0.000; realatomdata_[7 ][maqy]=2.000;
127  realatomdata_[8 ][maca]=1.0; realatomdata_[8 ][maqx]=1.972; realatomdata_[8 ][maqw]= 0.186; realatomdata_[8 ][maqy]=3.206;
128  realatomdata_[9 ][maca]=1.0; realatomdata_[9 ][maqx]=3.301; realatomdata_[9 ][maqw]= 0.131; realatomdata_[9 ][maqy]=2.433;
129  realatomdata_[10][maca]=1.0; realatomdata_[10][maqx]=2.139; realatomdata_[10][maqw]=-0.051; realatomdata_[10][maqy]=2.957;
130 
131  realatomdata_[1 ][maqz]=2.000; realatomdata_[1 ][marx]=5.020; realatomdata_[1 ][mary]=5.283; realatomdata_[1 ][marz]=5.206;
132  realatomdata_[2 ][maqz]=2.000; realatomdata_[2 ][marx]=5.308; realatomdata_[2 ][mary]=5.308; realatomdata_[2 ][marz]=5.494;
133  realatomdata_[3 ][maqz]=2.000; realatomdata_[3 ][marx]=4.427; realatomdata_[3 ][mary]=4.902; realatomdata_[3 ][marz]=5.212;
134  realatomdata_[4 ][maqz]=2.000; realatomdata_[4 ][marx]=5.615; realatomdata_[4 ][mary]=5.615; realatomdata_[4 ][marz]=5.648;
135  realatomdata_[5 ][maqz]=2.000; realatomdata_[5 ][marx]=5.842; realatomdata_[5 ][mary]=5.842; realatomdata_[5 ][marz]=5.716;
136  realatomdata_[6 ][maqz]=2.000; realatomdata_[6 ][marx]=5.349; realatomdata_[6 ][mary]=5.349; realatomdata_[6 ][marz]=5.515;
137  realatomdata_[7 ][maqz]=2.000; realatomdata_[7 ][marx]=5.267; realatomdata_[7 ][mary]=5.267; realatomdata_[7 ][marz]=4.606;
138  realatomdata_[8 ][maqz]=2.000; realatomdata_[8 ][marx]=5.506; realatomdata_[8 ][mary]=4.980; realatomdata_[8 ][marz]=5.252;
139  realatomdata_[9 ][maqz]=2.000; realatomdata_[9 ][marx]=5.537; realatomdata_[9 ][mary]=5.537; realatomdata_[9 ][marz]=5.609;
140  realatomdata_[10][maqz]=2.000; realatomdata_[10][marx]=4.942; realatomdata_[10][mary]=4.942; realatomdata_[10][marz]=4.443;
141 
142 
143  // 11 12 13 14 15 16 17 18 19 20 21 22
144  //ATOM P O1P O2P C1' C2' C3' O3' C4' O4' C5' O5' O2'
145  //SUGA 1 1 1 1 1 1 1 1 1 1 1 1
146  atomnames_.push_back("P" ); realatomdata_[11][suga]=1.0; //11
147  atomnames_.push_back("O1P"); realatomdata_[12][suga]=1.0; //12
148  atomnames_.push_back("O2P"); realatomdata_[13][suga]=1.0; //13
149  atomnames_.push_back("C1*"); realatomdata_[14][suga]=1.0; //14
150  atomnames_.push_back("C2*"); realatomdata_[15][suga]=1.0; //15
151  atomnames_.push_back("C3*"); realatomdata_[16][suga]=1.0; //16
152  atomnames_.push_back("O3*"); realatomdata_[17][suga]=1.0; //17
153  atomnames_.push_back("C4*"); realatomdata_[18][suga]=1.0; //18
154  atomnames_.push_back("O4*"); realatomdata_[19][suga]=1.0; //19
155  atomnames_.push_back("C5*"); realatomdata_[20][suga]=1.0; //20
156  atomnames_.push_back("O5*"); realatomdata_[21][suga]=1.0; //21
157  atomnames_.push_back("O2*"); realatomdata_[22][suga]=1.0; //22
158 
159 
160  // 23 24 25 26 27 28 29 30 31 32 33
161  //ATOM H1' H2' HO2' H3' H4' H5' H5'' H2 H61 H62 H8
162  //CSCA 1 1 0 1 1 1 1 1 0 0 1 // CSCA has to be nonzero if the chemical shift must be calculated for the atom
163  //SUGA 1 1 1 1 1 1 1 0 0 0 0 // SUGA has to be true if an atom counts to the sugar part
164  //OSHI 5.02 4.66 0 4.62 4.35 4.38 4.09 8.43 0 0 8.64 // OSHI, offset of the chemical shift calculation
165 
166  atomnames_.push_back("H1*" ); realatomdata_[23][csca]=1.0; realatomdata_[23][suga]=1.0; realatomdata_[23][oshi]=5.02; //23
167  atomnames_.push_back("1H2*"); realatomdata_[24][csca]=1.0; realatomdata_[24][suga]=1.0; realatomdata_[24][oshi]=4.66; //24
168  atomnames_.push_back("2HO*"); realatomdata_[25][csca]=0.0; realatomdata_[25][suga]=1.0; realatomdata_[25][oshi]=0.00; //25
169  atomnames_.push_back("H3*" ); realatomdata_[26][csca]=1.0; realatomdata_[26][suga]=1.0; realatomdata_[26][oshi]=4.62; //26
170  atomnames_.push_back("H4*" ); realatomdata_[27][csca]=1.0; realatomdata_[27][suga]=1.0; realatomdata_[27][oshi]=4.35; //27
171  atomnames_.push_back("1H5*"); realatomdata_[28][csca]=1.0; realatomdata_[28][suga]=1.0; realatomdata_[28][oshi]=4.38; //28
172  atomnames_.push_back("2H5*"); realatomdata_[29][csca]=1.0; realatomdata_[29][suga]=1.0; realatomdata_[29][oshi]=4.09; //29
173  atomnames_.push_back("H2" ); realatomdata_[30][csca]=1.0; realatomdata_[30][suga]=0.0; realatomdata_[30][oshi]=8.43; //30
174  atomnames_.push_back("1H6" ); realatomdata_[31][csca]=0.0; realatomdata_[31][suga]=0.0; realatomdata_[31][oshi]=0.00; //31
175  atomnames_.push_back("2H6" ); realatomdata_[32][csca]=0.0; realatomdata_[32][suga]=0.0; realatomdata_[32][oshi]=0.00; //32
176  atomnames_.push_back("H8" ); realatomdata_[33][csca]=1.0; realatomdata_[33][suga]=0.0; realatomdata_[33][oshi]=8.64; //33
177 
178 
179  }else if(res_aa_==chemical::na_rgu){
180 
181  BASE_="GUA"; //NUCHEMICS abbreviation.
182 
183  num_rings_=2; //RCCA 2
184 
185  ring_intensity_.push_back(0.3000); //RCI1 0.3000
186  ring_intensity_.push_back(0.6350); //RCI2 0.6350
187 
188  ring_radius_.push_back(1.3610); //RCR1 1.3610
189  ring_radius_.push_back(1.1540); //RCR2 1.1540
190 
191  ring_height_.push_back(0.5660); //RCH1 0.5660
192  ring_height_.push_back(0.5660); //RCH2 0.5660
193 
194  // 1 2 3 4 5 6 7 8 9 10 11
195  //ATOM N1 C2 N2 N3 C4 C5 C6 O6 N7 C8 N9
196  //XDIR 0 2 0 0 1 0 0 0 0 0 0
197  //YDIR 0 2 0 1 2 0 0 0 0 0 0
198  //RCL1 1 1 0 1 1 1 1 0 0 0 0
199  //RCL2 0 0 0 0 1 1 0 0 1 1 1
200  //MACA 1 1 1 1 1 1 1 1 1 1 1
201  //MAQX 2.731 2.985 2.135 1.862 3.200 3.194 3.327 2.809 2.054 3.289 2.330
202  //MAQW -0.209 0.182 -0.234 0.181 0.025 -0.096 -0.014 0.000 0.141 -0.122 -0.051
203  //MAQY 2.369 3.126 2.405 3.129 2.859 2.843 2.700 1.144 3.255 2.429 2.990
204  //MAQZ 2.000 2.000 2.000 2.000 2.000 2.000 2.000 1.333 2.000 2.000 2.000
205  //MARX 5.060 5.415 5.289 5.606 5.571 5.635 5.192 4.360 5.427 5.619 4.914
206  //MARY 5.060 5.415 5.289 5.080 5.571 5.635 5.192 4.747 5.902 5.619 4.914
207  //MARZ 4.503 5.548 4.617 5.301 5.716 5.758 5.436 4.692 5.212 5.650 4.429
208 
209  atomnames_.push_back("N1"); //1
210  atomnames_.push_back("C2"); //2
211  atomnames_.push_back("N2"); //3
212  atomnames_.push_back("N3"); //4
213  atomnames_.push_back("C4"); //5
214  atomnames_.push_back("C5"); //6
215  atomnames_.push_back("C6"); //7
216  atomnames_.push_back("O6"); //8
217  atomnames_.push_back("N7"); //9
218  atomnames_.push_back("C8"); //10
219  atomnames_.push_back("N9"); //11
220 
221  realatomdata_[1 ][rcl1]=1.0;
222  realatomdata_[2 ][xdir]=2.0; realatomdata_[2 ][ydir]=2.0; realatomdata_[2 ][rcl1]=1.0;
223 
224  realatomdata_[4 ][ydir]=1.0; realatomdata_[4 ][rcl1]=1.0;
225  realatomdata_[5 ][xdir]=1.0; realatomdata_[5 ][ydir]=2.0; realatomdata_[5 ][rcl1]=1.0; realatomdata_[5 ][rcl2]=1.0;
226  realatomdata_[6 ][rcl1]=1.0; realatomdata_[6 ][rcl2]=1.0;
227  realatomdata_[7 ][rcl1]=1.0;
228 
229  realatomdata_[9 ][rcl2]=1.0;
230  realatomdata_[10][rcl2]=1.0;
231  realatomdata_[11][rcl2]=1.0;
232 
233  realatomdata_[1 ][maca]=1.0; realatomdata_[1 ][maqx]=2.731; realatomdata_[1 ][maqw]=-0.209; realatomdata_[1 ][maqy]=2.369;
234  realatomdata_[2 ][maca]=1.0; realatomdata_[2 ][maqx]=2.985; realatomdata_[2 ][maqw]= 0.182; realatomdata_[2 ][maqy]=3.126;
235  realatomdata_[3 ][maca]=1.0; realatomdata_[3 ][maqx]=2.135; realatomdata_[3 ][maqw]=-0.234; realatomdata_[3 ][maqy]=2.405;
236  realatomdata_[4 ][maca]=1.0; realatomdata_[4 ][maqx]=1.862; realatomdata_[4 ][maqw]= 0.181; realatomdata_[4 ][maqy]=3.129;
237  realatomdata_[5 ][maca]=1.0; realatomdata_[5 ][maqx]=3.200; realatomdata_[5 ][maqw]= 0.025; realatomdata_[5 ][maqy]=2.859;
238  realatomdata_[6 ][maca]=1.0; realatomdata_[6 ][maqx]=3.194; realatomdata_[6 ][maqw]=-0.096; realatomdata_[6 ][maqy]=2.843;
239  realatomdata_[7 ][maca]=1.0; realatomdata_[7 ][maqx]=3.327; realatomdata_[7 ][maqw]=-0.014; realatomdata_[7 ][maqy]=2.700;
240  realatomdata_[8 ][maca]=1.0; realatomdata_[8 ][maqx]=2.809; realatomdata_[8 ][maqw]= 0.000; realatomdata_[8 ][maqy]=1.144;
241  realatomdata_[9 ][maca]=1.0; realatomdata_[9 ][maqx]=2.054; realatomdata_[9 ][maqw]= 0.141; realatomdata_[9 ][maqy]=3.255;
242  realatomdata_[10][maca]=1.0; realatomdata_[10][maqx]=3.289; realatomdata_[10][maqw]=-0.122; realatomdata_[10][maqy]=2.429;
243  realatomdata_[11][maca]=1.0; realatomdata_[11][maqx]=2.330; realatomdata_[11][maqw]=-0.051; realatomdata_[11][maqy]=2.990;
244 
245 
246  realatomdata_[1 ][maqz]=2.000; realatomdata_[1 ][marx]=5.060; realatomdata_[1 ][mary]=5.060; realatomdata_[1 ][marz]=4.503;
247  realatomdata_[2 ][maqz]=2.000; realatomdata_[2 ][marx]=5.415; realatomdata_[2 ][mary]=5.415; realatomdata_[2 ][marz]=5.548;
248  realatomdata_[3 ][maqz]=2.000; realatomdata_[3 ][marx]=5.289; realatomdata_[3 ][mary]=5.289; realatomdata_[3 ][marz]=4.617;
249  realatomdata_[4 ][maqz]=2.000; realatomdata_[4 ][marx]=5.606; realatomdata_[4 ][mary]=5.080; realatomdata_[4 ][marz]=5.301;
250  realatomdata_[5 ][maqz]=2.000; realatomdata_[5 ][marx]=5.571; realatomdata_[5 ][mary]=5.571; realatomdata_[5 ][marz]=5.716;
251  realatomdata_[6 ][maqz]=2.000; realatomdata_[6 ][marx]=5.635; realatomdata_[6 ][mary]=5.635; realatomdata_[6 ][marz]=5.758;
252  realatomdata_[7 ][maqz]=2.000; realatomdata_[7 ][marx]=5.192; realatomdata_[7 ][mary]=5.192; realatomdata_[7 ][marz]=5.436;
253  realatomdata_[8 ][maqz]=1.333; realatomdata_[8 ][marx]=4.360; realatomdata_[8 ][mary]=4.747; realatomdata_[8 ][marz]=4.692;
254  realatomdata_[9 ][maqz]=2.000; realatomdata_[9 ][marx]=5.427; realatomdata_[9 ][mary]=5.902; realatomdata_[9 ][marz]=5.212;
255  realatomdata_[10][maqz]=2.000; realatomdata_[10][marx]=5.619; realatomdata_[10][mary]=5.619; realatomdata_[10][marz]=5.650;
256  realatomdata_[11][maqz]=2.000; realatomdata_[11][marx]=4.914; realatomdata_[11][mary]=4.914; realatomdata_[11][marz]=4.429;
257 
258  // 12 13 14 15 16 17 18 19 20 21 22 23
259  //ATOM P O1P O2P C1' C2' C3' O3' C4' O4' C5' O5' O2'
260  //SUGA 1 1 1 1 1 1 1 1 1 1 1 1
261  atomnames_.push_back("P" ); realatomdata_[12][suga]=1.0; //12
262  atomnames_.push_back("O1P"); realatomdata_[13][suga]=1.0; //13
263  atomnames_.push_back("O2P"); realatomdata_[14][suga]=1.0; //14
264  atomnames_.push_back("C1*"); realatomdata_[15][suga]=1.0; //15
265  atomnames_.push_back("C2*"); realatomdata_[16][suga]=1.0; //16
266  atomnames_.push_back("C3*"); realatomdata_[17][suga]=1.0; //17
267  atomnames_.push_back("O3*"); realatomdata_[18][suga]=1.0; //18
268  atomnames_.push_back("C4*"); realatomdata_[19][suga]=1.0; //19
269  atomnames_.push_back("O4*"); realatomdata_[20][suga]=1.0; //20
270  atomnames_.push_back("C5*"); realatomdata_[21][suga]=1.0; //21
271  atomnames_.push_back("O5*"); realatomdata_[22][suga]=1.0; //22
272  atomnames_.push_back("O2*"); realatomdata_[23][suga]=1.0; //23
273 
274 
275  // 24 25 26 27 28 29 30 31 32 33 34
276  //ATOM H1' H2' HO2' H3' H4' H5' H5'' H1 H21 H22 H8
277  //CSCA 1 1 0 1 1 1 1 0 0 0 1
278  //SUGA 1 1 1 1 1 1 1 0 0 0 0
279  //OSHI 5.20 4.66 0 4.62 4.35 4.38 4.09 0 0 0 8.10
280 
281  atomnames_.push_back("H1*" ); realatomdata_[24][csca]=1.0; realatomdata_[24][suga]=1.0; realatomdata_[24][oshi]=5.20; //24
282  atomnames_.push_back("1H2*"); realatomdata_[25][csca]=1.0; realatomdata_[25][suga]=1.0; realatomdata_[25][oshi]=4.66; //25
283  atomnames_.push_back("2HO*"); realatomdata_[26][csca]=0.0; realatomdata_[26][suga]=1.0; realatomdata_[26][oshi]=0.00; //26
284  atomnames_.push_back("H3*" ); realatomdata_[27][csca]=1.0; realatomdata_[27][suga]=1.0; realatomdata_[27][oshi]=4.62; //27
285  atomnames_.push_back("H4*" ); realatomdata_[28][csca]=1.0; realatomdata_[28][suga]=1.0; realatomdata_[28][oshi]=4.35; //28
286  atomnames_.push_back("1H5*"); realatomdata_[29][csca]=1.0; realatomdata_[29][suga]=1.0; realatomdata_[29][oshi]=4.38; //29
287  atomnames_.push_back("2H5*"); realatomdata_[30][csca]=1.0; realatomdata_[30][suga]=1.0; realatomdata_[30][oshi]=4.09; //30
288  atomnames_.push_back("H1" ); realatomdata_[31][csca]=0.0; realatomdata_[31][suga]=0.0; realatomdata_[31][oshi]=0.00; //31
289  atomnames_.push_back("1H2" ); realatomdata_[32][csca]=0.0; realatomdata_[32][suga]=0.0; realatomdata_[32][oshi]=0.00; //32
290  atomnames_.push_back("2H2" ); realatomdata_[33][csca]=0.0; realatomdata_[33][suga]=0.0; realatomdata_[33][oshi]=0.00; //33
291  atomnames_.push_back("H8" ); realatomdata_[34][csca]=1.0; realatomdata_[34][suga]=0.0; realatomdata_[34][oshi]=8.10; //34
292 
293 
294  }else if(res_aa_==chemical::na_rcy){
295 
296  BASE_="CYT"; //BASE CYT //NUCHEMICS abbreviation.
297 
298  num_rings_=1; //RCCA 1
299 
300  ring_intensity_.push_back(0.2750); //RCI1 0.2750
301 
302  ring_radius_.push_back(1.3675); //RCR1 1.3675
303 
304  ring_height_.push_back(0.5770); //RCH1 0.5770
305 
306  // 1 2 3 4 5 6 7 8
307  //ATOM N1 C2 O2 N3 C4 N4 C5 C6
308  //XDIR 0 2 0 0 0 0 0 1
309  //YDIR 1 2 0 0 0 0 0 2
310  //RCL1 1 1 0 1 1 0 1 1
311  //MACA 1 1 1 1 1 1 1 1
312  //MAQX 2.675 2.917 1.496 2.275 3.284 2.625 3.240 2.998
313  //MAQW -0.592 -0.236 -0.724 -0.032 -0.255 0.000 0.213 -0.221
314  //MAQY 2.715 3.179 2.264 2.826 2.441 2.000 2.396 3.120
315  //MAQZ 2.000 2.000 1.333 2.000 2.000 2.000 2.000 2.000
316  //MARX 5.034 5.211 4.688 5.017 5.390 5.209 5.985 5.571
317  //MARY 5.034 5.211 4.495 5.334 5.390 5.209 5.985 5.571
318  //MARZ 4.489 5.445 4.711 5.231 5.535 4.577 5.833 5.626
319 
320  atomnames_.push_back("N1"); //1
321  atomnames_.push_back("C2"); //2
322  atomnames_.push_back("O2"); //3
323  atomnames_.push_back("N3"); //4
324  atomnames_.push_back("C4"); //5
325  atomnames_.push_back("N4"); //6
326  atomnames_.push_back("C5"); //7
327  atomnames_.push_back("C6"); //8
328 
329 
330  realatomdata_[1 ][ydir]=1.0; realatomdata_[1 ][rcl1]=1.0;
331  realatomdata_[2 ][xdir]=2.0; realatomdata_[2 ][ydir]=2.0; realatomdata_[2 ][rcl1]=1.0;
332 
333  realatomdata_[4 ][rcl1]=1.0;
334  realatomdata_[5 ][rcl1]=1.0;
335 
336  realatomdata_[7 ][rcl1]=1.0;
337  realatomdata_[8 ][xdir]=1.0; realatomdata_[8 ][ydir]=2.0; realatomdata_[8 ][rcl1]=1.0;
338 
339 
340  realatomdata_[1 ][maca]=1.0; realatomdata_[1 ][maqx]=2.675; realatomdata_[1 ][maqw]=-0.592; realatomdata_[1 ][maqy]=2.715;
341  realatomdata_[2 ][maca]=1.0; realatomdata_[2 ][maqx]=2.917; realatomdata_[2 ][maqw]=-0.236; realatomdata_[2 ][maqy]=3.179;
342  realatomdata_[3 ][maca]=1.0; realatomdata_[3 ][maqx]=1.496; realatomdata_[3 ][maqw]=-0.724; realatomdata_[3 ][maqy]=2.264;
343  realatomdata_[4 ][maca]=1.0; realatomdata_[4 ][maqx]=2.275; realatomdata_[4 ][maqw]=-0.032; realatomdata_[4 ][maqy]=2.826;
344  realatomdata_[5 ][maca]=1.0; realatomdata_[5 ][maqx]=3.284; realatomdata_[5 ][maqw]=-0.255; realatomdata_[5 ][maqy]=2.441;
345  realatomdata_[6 ][maca]=1.0; realatomdata_[6 ][maqx]=2.625; realatomdata_[6 ][maqw]= 0.000; realatomdata_[6 ][maqy]=2.000;
346  realatomdata_[7 ][maca]=1.0; realatomdata_[7 ][maqx]=3.240; realatomdata_[7 ][maqw]= 0.213; realatomdata_[7 ][maqy]=2.396;
347  realatomdata_[8 ][maca]=1.0; realatomdata_[8 ][maqx]=2.998; realatomdata_[8 ][maqw]=-0.221; realatomdata_[8 ][maqy]=3.120;
348 
349  realatomdata_[1 ][maqz]=2.000; realatomdata_[1 ][marx]=5.034; realatomdata_[1 ][mary]=5.034; realatomdata_[1 ][marz]=4.489;
350  realatomdata_[2 ][maqz]=2.000; realatomdata_[2 ][marx]=5.211; realatomdata_[2 ][mary]=5.211; realatomdata_[2 ][marz]=5.445;
351  realatomdata_[3 ][maqz]=1.333; realatomdata_[3 ][marx]=4.688; realatomdata_[3 ][mary]=4.495; realatomdata_[3 ][marz]=4.711;
352  realatomdata_[4 ][maqz]=2.000; realatomdata_[4 ][marx]=5.017; realatomdata_[4 ][mary]=5.334; realatomdata_[4 ][marz]=5.231;
353  realatomdata_[5 ][maqz]=2.000; realatomdata_[5 ][marx]=5.390; realatomdata_[5 ][mary]=5.390; realatomdata_[5 ][marz]=5.535;
354  realatomdata_[6 ][maqz]=2.000; realatomdata_[6 ][marx]=5.209; realatomdata_[6 ][mary]=5.209; realatomdata_[6 ][marz]=4.577;
355  realatomdata_[7 ][maqz]=2.000; realatomdata_[7 ][marx]=5.985; realatomdata_[7 ][mary]=5.985; realatomdata_[7 ][marz]=5.833;
356  realatomdata_[8 ][maqz]=2.000; realatomdata_[8 ][marx]=5.571; realatomdata_[8 ][mary]=5.571; realatomdata_[8 ][marz]=5.626;
357 
358  // 9 10 11 12 13 14 15 16 17 18 19 20
359  //ATOM P O1P O2P C1' C2' C3' O3' C4' O4' C5' O5' O2'
360  //SUGA 1 1 1 1 1 1 1 1 1 1 1 1
361  atomnames_.push_back("P" ); realatomdata_[9 ][suga]=1.0; //9
362  atomnames_.push_back("O1P"); realatomdata_[10][suga]=1.0; //10
363  atomnames_.push_back("O2P"); realatomdata_[11][suga]=1.0; //11
364  atomnames_.push_back("C1*"); realatomdata_[12][suga]=1.0; //12
365  atomnames_.push_back("C2*"); realatomdata_[13][suga]=1.0; //13
366  atomnames_.push_back("C3*"); realatomdata_[14][suga]=1.0; //14
367  atomnames_.push_back("O3*"); realatomdata_[15][suga]=1.0; //15
368  atomnames_.push_back("C4*"); realatomdata_[16][suga]=1.0; //16
369  atomnames_.push_back("O4*"); realatomdata_[17][suga]=1.0; //17
370  atomnames_.push_back("C5*"); realatomdata_[18][suga]=1.0; //18
371  atomnames_.push_back("O5*"); realatomdata_[19][suga]=1.0; //19
372  atomnames_.push_back("O2*"); realatomdata_[20][suga]=1.0; //20
373 
374  // 21 22 23 24 25 26 27 28 29 30 31
375  //ATOM H1' H2' HO2' H3' H4' H5' H5'' H41 H42 H5 H6
376  //CSCA 1 1 0 1 1 1 1 0 0 1 1
377  //SUGA 1 1 1 1 1 1 1 0 0 0 0
378  //OSHI 5.23 4.66 0 4.62 4.35 4.38 4.09 0 0 6.12 8.16
379  atomnames_.push_back("H1*" ); realatomdata_[21][csca]=1.0; realatomdata_[21][suga]=1.0; realatomdata_[21][oshi]=5.23; //21
380  atomnames_.push_back("1H2*"); realatomdata_[22][csca]=1.0; realatomdata_[22][suga]=1.0; realatomdata_[22][oshi]=4.66; //22
381  atomnames_.push_back("2HO*"); realatomdata_[23][csca]=0.0; realatomdata_[23][suga]=1.0; realatomdata_[23][oshi]=0.00; //23
382  atomnames_.push_back("H3*" ); realatomdata_[24][csca]=1.0; realatomdata_[24][suga]=1.0; realatomdata_[24][oshi]=4.62; //24
383  atomnames_.push_back("H4*" ); realatomdata_[25][csca]=1.0; realatomdata_[25][suga]=1.0; realatomdata_[25][oshi]=4.35; //25
384  atomnames_.push_back("1H5*"); realatomdata_[26][csca]=1.0; realatomdata_[26][suga]=1.0; realatomdata_[26][oshi]=4.38; //26
385  atomnames_.push_back("2H5*"); realatomdata_[27][csca]=1.0; realatomdata_[27][suga]=1.0; realatomdata_[27][oshi]=4.09; //27
386  atomnames_.push_back("1H4" ); realatomdata_[28][csca]=0.0; realatomdata_[28][suga]=0.0; realatomdata_[28][oshi]=0.00; //28
387  atomnames_.push_back("2H4" ); realatomdata_[29][csca]=0.0; realatomdata_[29][suga]=0.0; realatomdata_[29][oshi]=0.00; //29
388  atomnames_.push_back("H5" ); realatomdata_[30][csca]=1.0; realatomdata_[30][suga]=0.0; realatomdata_[30][oshi]=6.12; //30
389  atomnames_.push_back("H6" ); realatomdata_[31][csca]=1.0; realatomdata_[31][suga]=0.0; realatomdata_[31][oshi]=8.16; //31
390 
391  }else if(res_aa_==chemical::na_ura){
392 
393 
394  BASE_="URI"; //BASE URI //NUCHEMICS abbreviation.
395 
396  num_rings_=1; //RCCA 1
397 
398  ring_intensity_.push_back(0.1110); //RCI1 0.1110
399 
400  ring_radius_.push_back(1.3790); //RCR1 1.3790
401 
402  ring_height_.push_back(0.5770); //RCH1 0.5770
403 
404  // 1 2 3 4 5 6 7 8
405  //ATOM N1 C2 O2 N3 C4 O4 C5 C6
406  //XDIR 0 2 0 0 0 0 0 1
407  //YDIR 1 2 0 0 0 0 0 2
408  //RCL1 1 1 0 1 1 0 1 1
409  //MACA 1 1 1 1 1 1 1 1
410  //MAQX 2.257 2.921 1.517 2.653 3.348 2.857 3.275 3.299
411  //MAQW -0.020 -0.253 -0.726 -0.215 -0.024 0.000 0.192 -0.233
412  //MAQY 2.773 3.176 2.269 2.373 2.705 1.232 2.332 2.404
413  //MAQZ 2.000 2.000 1.333 2.000 2.000 1.333 2.000 2.000
414  //MARX 5.097 5.240 4.677 5.112 5.260 4.309 5.883 5.646
415  //MARY 5.097 5.240 4.484 5.112 5.260 4.696 5.883 5.646
416  //MARZ 4.521 5.460 4.705 4.529 5.470 4.666 5.782 5.663
417 
418  atomnames_.push_back("N1"); //1
419  atomnames_.push_back("C2"); //2
420  atomnames_.push_back("O2"); //3
421  atomnames_.push_back("N3"); //4
422  atomnames_.push_back("C4"); //5
423  atomnames_.push_back("O4"); //6
424  atomnames_.push_back("C5"); //7
425  atomnames_.push_back("C6"); //8
426 
427 
428  realatomdata_[1 ][ydir]=1.0; realatomdata_[1 ][rcl1]=1.0;
429  realatomdata_[2 ][xdir]=2.0; realatomdata_[2 ][ydir]=2.0; realatomdata_[2 ][rcl1]=1.0;
430 
431  realatomdata_[4 ][rcl1]=1.0;
432  realatomdata_[5 ][rcl1]=1.0;
433 
434  realatomdata_[7 ][rcl1]=1.0;
435  realatomdata_[8 ][xdir]=1.0; realatomdata_[8 ][ydir]=2.0; realatomdata_[8 ][rcl1]=1.0;
436 
437 
438  realatomdata_[1 ][maca]=1.0; realatomdata_[1 ][maqx]=2.257; realatomdata_[1 ][maqw]=-0.020; realatomdata_[1 ][maqy]=2.773;
439  realatomdata_[2 ][maca]=1.0; realatomdata_[2 ][maqx]=2.921; realatomdata_[2 ][maqw]=-0.253; realatomdata_[2 ][maqy]=3.176;
440  realatomdata_[3 ][maca]=1.0; realatomdata_[3 ][maqx]=1.517; realatomdata_[3 ][maqw]=-0.726; realatomdata_[3 ][maqy]=2.269;
441  realatomdata_[4 ][maca]=1.0; realatomdata_[4 ][maqx]=2.653; realatomdata_[4 ][maqw]=-0.215; realatomdata_[4 ][maqy]=2.373;
442  realatomdata_[5 ][maca]=1.0; realatomdata_[5 ][maqx]=3.348; realatomdata_[5 ][maqw]=-0.024; realatomdata_[5 ][maqy]=2.705;
443  realatomdata_[6 ][maca]=1.0; realatomdata_[6 ][maqx]=2.857; realatomdata_[6 ][maqw]= 0.000; realatomdata_[6 ][maqy]=1.232;
444  realatomdata_[7 ][maca]=1.0; realatomdata_[7 ][maqx]=3.275; realatomdata_[7 ][maqw]= 0.192; realatomdata_[7 ][maqy]=2.332;
445  realatomdata_[8 ][maca]=1.0; realatomdata_[8 ][maqx]=3.299; realatomdata_[8 ][maqw]=-0.233; realatomdata_[8 ][maqy]=2.404;
446 
447  realatomdata_[1 ][maqz]=2.000; realatomdata_[1 ][marx]=5.097; realatomdata_[1 ][mary]=5.097; realatomdata_[1 ][marz]=4.521;
448  realatomdata_[2 ][maqz]=2.000; realatomdata_[2 ][marx]=5.240; realatomdata_[2 ][mary]=5.240; realatomdata_[2 ][marz]=5.460;
449  realatomdata_[3 ][maqz]=1.333; realatomdata_[3 ][marx]=4.677; realatomdata_[3 ][mary]=4.484; realatomdata_[3 ][marz]=4.705;
450  realatomdata_[4 ][maqz]=2.000; realatomdata_[4 ][marx]=5.112; realatomdata_[4 ][mary]=5.112; realatomdata_[4 ][marz]=4.529;
451  realatomdata_[5 ][maqz]=2.000; realatomdata_[5 ][marx]=5.260; realatomdata_[5 ][mary]=5.260; realatomdata_[5 ][marz]=5.470;
452  realatomdata_[6 ][maqz]=1.333; realatomdata_[6 ][marx]=4.309; realatomdata_[6 ][mary]=4.696; realatomdata_[6 ][marz]=4.666;
453  realatomdata_[7 ][maqz]=2.000; realatomdata_[7 ][marx]=5.883; realatomdata_[7 ][mary]=5.883; realatomdata_[7 ][marz]=5.782;
454  realatomdata_[8 ][maqz]=2.000; realatomdata_[8 ][marx]=5.646; realatomdata_[8 ][mary]=5.646; realatomdata_[8 ][marz]=5.663;
455 
456  // 9 10 11 12 13 14 15 16 17 18 19 20
457  //ATOM P O1P O2P C1' C2' C3' O3' C4' O4' C5' O5' O2'
458  //SUGA 1 1 1 1 1 1 1 1 1 1 1 1
459  atomnames_.push_back("P" ); realatomdata_[9 ][suga]=1.0; //9
460  atomnames_.push_back("O1P"); realatomdata_[10][suga]=1.0; //10
461  atomnames_.push_back("O2P"); realatomdata_[11][suga]=1.0; //11
462  atomnames_.push_back("C1*"); realatomdata_[12][suga]=1.0; //12
463  atomnames_.push_back("C2*"); realatomdata_[13][suga]=1.0; //13
464  atomnames_.push_back("C3*"); realatomdata_[14][suga]=1.0; //14
465  atomnames_.push_back("O3*"); realatomdata_[15][suga]=1.0; //15
466  atomnames_.push_back("C4*"); realatomdata_[16][suga]=1.0; //16
467  atomnames_.push_back("O4*"); realatomdata_[17][suga]=1.0; //17
468  atomnames_.push_back("C5*"); realatomdata_[18][suga]=1.0; //18
469  atomnames_.push_back("O5*"); realatomdata_[19][suga]=1.0; //19
470  atomnames_.push_back("O2*"); realatomdata_[20][suga]=1.0; //20
471 
472  // 21 22 23 24 25 26 27 28 29 30
473  //ATOM H1' H2' HO2' H3' H4' H5' H5'' H3 H6 H5
474  //CSCA 1 1 0 1 1 1 1 0 1 1
475  //SUGA 1 1 1 1 1 1 1 0 0 0
476  //OSHI 5.57 4.66 0 4.62 4.35 4.38 4.09 0 8.25 6.04
477  atomnames_.push_back("H1*" ); realatomdata_[21][csca]=1.0; realatomdata_[21][suga]=1.0; realatomdata_[21][oshi]=5.57; //21
478  atomnames_.push_back("1H2*"); realatomdata_[22][csca]=1.0; realatomdata_[22][suga]=1.0; realatomdata_[22][oshi]=4.66; //22
479  atomnames_.push_back("2HO*"); realatomdata_[23][csca]=0.0; realatomdata_[23][suga]=1.0; realatomdata_[23][oshi]=0.00; //23
480  atomnames_.push_back("H3*" ); realatomdata_[24][csca]=1.0; realatomdata_[24][suga]=1.0; realatomdata_[24][oshi]=4.62; //24
481  atomnames_.push_back("H4*" ); realatomdata_[25][csca]=1.0; realatomdata_[25][suga]=1.0; realatomdata_[25][oshi]=4.35; //25
482  atomnames_.push_back("1H5*"); realatomdata_[26][csca]=1.0; realatomdata_[26][suga]=1.0; realatomdata_[26][oshi]=4.38; //26
483  atomnames_.push_back("2H5*"); realatomdata_[27][csca]=1.0; realatomdata_[27][suga]=1.0; realatomdata_[27][oshi]=4.09; //27
484  atomnames_.push_back("H3" ); realatomdata_[28][csca]=0.0; realatomdata_[28][suga]=0.0; realatomdata_[28][oshi]=0.00; //28
485  atomnames_.push_back("H6" ); realatomdata_[29][csca]=1.0; realatomdata_[29][suga]=0.0; realatomdata_[29][oshi]=8.25; //29
486  atomnames_.push_back("H5" ); realatomdata_[30][csca]=1.0; realatomdata_[30][suga]=0.0; realatomdata_[30][oshi]=6.04; //30
487 
488 
489  }else{
490  utility_exit_with_message("Invalid res_aa_ ("+ ObjexxFCL::string_of(res_aa_) +")!");
491  }
492 
493  ///Consistency check////
494  //if(num_rings_!=atoms_in_ring_list_.size()){
495  // utility_exit_with_message("atom ("+ string_of(num_rings_) + ")>atomnames_.size() ("+ string_of(atoms_in_ring_list_.size()) + ")!");
496  //}
497 
498  if(num_rings_!=ring_intensity_.size()){
499  utility_exit_with_message("atom ("+ string_of(num_rings_) + ")>ring_intensity_.size() ("+ string_of(ring_intensity_.size()) + ")!");
500  }
501 
502  if(num_rings_!=ring_radius_.size()){
503  utility_exit_with_message("atom ("+ string_of(num_rings_) + ")>ring_radius_.size() ("+ string_of(ring_radius_.size()) + ")!");
504  }
505 
506  if(num_rings_!=ring_height_.size()){
507  utility_exit_with_message("atom ("+ string_of(num_rings_) + ")>ring_height_.size() ("+ string_of(ring_height_.size()) + ")!");
508  }
509 
510  if(atomnames_.size()>maxatoms_) utility_exit_with_message("atomnames_.size()>maxatoms_");
511 
512  std::cout << " for BASE_= " << BASE_ << " :";
513  std::cout << " atomnames_.size()= " << atomnames_.size();
514  std::cout << std::endl;
515  }
516 
517 
518  //destructor
520 
521  ////////////////////////////////////////////////////////////
522  std::string const
524  return BASE_;
525  }
526 
527  ////////////////////////////////////////////////////////////
528  Size
530  return num_rings_;
531  }
532 
533  ////////////////////////////////////////////////////////////
534  Real
536 
537  if(ring_ID>num_rings_) utility_exit_with_message("ring_ID ("+ string_of(ring_ID) + ")>num_rings_("+ string_of(num_rings_) + ")!");
538 
539  if(ring_ID<1) utility_exit_with_message("ring_ID ("+ string_of(ring_ID) + ")<1!");
540 
541 
542  return ring_intensity_[ring_ID];
543 
544  }
545 
546  ////////////////////////////////////////////////////////////
547  Real
549 
550  if(ring_ID>num_rings_) utility_exit_with_message("ring_ID ("+ string_of(ring_ID) + ")>num_rings_("+ string_of(num_rings_) + ")!");
551 
552  if(ring_ID<1) utility_exit_with_message("ring_ID ("+ string_of(ring_ID) + ")<1!");
553 
554  return ring_radius_[ring_ID];
555 
556  }
557 
558  ////////////////////////////////////////////////////////////
559  Real
561 
562  if(ring_ID>num_rings_) utility_exit_with_message("ring_ID ("+ string_of(ring_ID) + ")>num_rings_("+ string_of(num_rings_) + ")!");
563 
564  if(ring_ID<1) utility_exit_with_message("ring_ID ("+ string_of(ring_ID) + ")<1!");
565 
566  return ring_height_[ring_ID];
567 
568  }
569 
570  ////////////////////////////////////////////////////////////
571  Size
573 
574  return atomnames_.size();
575 
576  }
577 
578  ////////////////////////////////////////////////////////////
579  std::string const
581 
582  if(count>atomnames_.size()) utility_exit_with_message("count ("+ string_of(count) + ")>atomnames_.size() ("+ string_of(atomnames_.size()) + ")!");
583 
584  return atomnames_[count];
585  }
586 
587 
588  ////////////////////////////////////////////////////////////
589  Real
590  RNA_CS_residue_parameters::atom_data(Size const atom, atomitem const item) const{
591 
592 
593  if(atom>atomnames_.size()) utility_exit_with_message("atom ("+ string_of(atom) + ")>atomnames_.size() ("+ string_of(atomnames_.size()) + ")!");
594 
595  if(item>last_atomdesc) utility_exit_with_message("atom ("+string_of(item) + ")>atomnames_.size() ("+ string_of(last_atomdesc) + ")!");
596 
597  if(item<1) utility_exit_with_message("item ("+ ObjexxFCL::string_of(item) + ")<1!");
598 
599 
600  return realatomdata_[atom][item];
601 
602 
603  }
604 
605  ////////////////////////////////////////////////////////////
606  Real
608  {
609  return RCCO_;
610 
611  }
612 
613  ////////////////////////////////////////////////////////////
614  Real
616  {
617  return MACR_;
618 
619  }
620 
621  ////////////////////////////////////////////////////////////
622  Real
624  {
625  return MACQ_;
626 
627  }
628  ////////////////////////////////////////////////////////////
631  return res_aa_;
632  }
633 
634  /////////////////////////////////////////////////////////RNA_CS_parameters Class////////////////////////////////////////////////////////////////////
635 
636  //constructor!
638  COMM_("RNA data set without charge"),
639  //From datafile.cc..include these when needed.
640  //IGNORE:const int maxdiffbases = 10; ##NUMBER OF TYPE OF BASES WHICH FOR RNA SHOULD BE FOUR (RAD, RGU, RCY, URA)
641  //IGNORE:const int maxbasenamelength = 3;
642  //IGNORE:const int maxatomnamelength = 5;
643  //const int maxstrandnamelength = 6;
644  //const int maxfilenamelength = 256;
645  //const char remarkstart = '#';
646 
647  CS_RAD_params_( RNA_CS_residue_parameters( chemical::na_rad ) ),
648  CS_RGU_params_( RNA_CS_residue_parameters( chemical::na_rgu ) ),
649  CS_RCY_params_( RNA_CS_residue_parameters( chemical::na_rcy ) ),
650  CS_URA_params_( RNA_CS_residue_parameters( chemical::na_ura ) )
651 
652  {
653  }
654 
655 
656 
657  //destructor
659 
660  ////////////////////////////////////////////////////////////
663  {
664 
665  if(res_aa==chemical::na_rad) return CS_RAD_params_;
666 
667  if(res_aa==chemical::na_rgu) return CS_RGU_params_;
668 
669  if(res_aa==chemical::na_rcy) return CS_RCY_params_;
670 
671  if(res_aa==chemical::na_ura) return CS_URA_params_;
672 
673  utility_exit_with_message("Invalid res_aa_ ("+ string_of(res_aa) +")!");
674 
675  utility_exit_with_message("SHOULD NOT REACH THIS POINT OF THE FUNCTION!!");
676 
677  return CS_RGU_params_; //This is just for prevent compiler warning!
678 
679  }
680 
681 
682 
683 } // chemical_shift
684 } // rna
685 } // scoring
686 } // core
687 
688