ARTS  1.0.222
partition_function_data.cc
Go to the documentation of this file.
1 /* Copyright (C) 2000, 2001 Stefan Buehler <sbuehler@uni-bremen.de>,
2  Axel von Engeln <engeln@uni-bremen.de>
3 
4  This program is free software; you can redistribute it and/or modify it
5  under the terms of the GNU General Public License as published by the
6  Free Software Foundation; either version 2, or (at your option) any
7  later version.
8 
9  This program is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  GNU General Public License for more details.
13 
14  You should have received a copy of the GNU General Public License
15  along with this program; if not, write to the Free Software
16  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
17  USA. */
18 
34 #include "arts.h"
35 #include "make_array.h"
36 #include "absorption.h"
37 
38 /*
39  Default values for a linear molecule:
40 
41  c0 c1 c2 c3
42  0.0 1.0 0.0 0.0
43 
44  and for non linear molecules:
45 
46  c0 c1 c2 c3
47  -76.2339 6.95356 1.30510e-07 -1.17068e-11
48 
49  Here we assumed that either
50 
51  linear: Q = T
52  non-linear: Q = T^1.5
53 
54  These numbers are from Axel von Engeln, May 2005.
55 */
56 
59 #define Qcoeff MakeArray<Numeric>
60 
61 
62 
148  String name);
149 
151  String name,
152  const ArrayOfNumeric& coeff);
153 
154 
156 {
158 
159  Array<SpeciesRecord>::iterator it_species = species_data.begin();
161 
162 
163  // H2O
164  // Coeff: 1 1 1 1 1 1 2
165  //
166  // There are dummy entries here for the continuum tags. Of course,
167  // continua need no partition functions, but the entries must be
168  // present, so that the consistency check between species_data and
169  // partition_function_data is successful. Thomas, you will also need
170  // to add more dummy entries here in case you add more continuum tags.
171  //
172  // Excetp isotope 262, data for all other isotopes is obtained by using the new code provided by Bob Gamasche (falged with HITRAN). The missing data is taken from JPL.
173  spec(it_species, it_isotope, "H2O");
174  // Name c0 c1 c2 c3
175  // | | | | |
176 iso(it_isotope, "161" , Qcoeff(-6.065594e+00, 2.907027e-01, 1.246245e-03, -5.606119e-07 )); //HITRAN
177 iso(it_isotope, "181" , Qcoeff(-7.220624e+00, 2.945347e-01, 1.250362e-03, -5.554638e-07 )); //HITRAN
178 iso(it_isotope, "171" , Qcoeff(-4.668105e+01, 1.819186e+00, 7.137470e-03, -2.670352e-06 )); //HITRAN
179 iso(it_isotope, "162" , Qcoeff(-4.084466e+01, 1.484533e+00, 5.953330e-03, -2.359695e-06 )); //HITRAN
180 iso(it_isotope, "182" , Qcoeff(-3.529770e+01, 1.503267e+00, 6.020059e-03, -2.389284e-06 )); //HITRAN
181 iso(it_isotope, "172" , Qcoeff(-2.098457e+02, 8.959286e+00, 3.593721e-02, -1.428880e-05 )); //HITRAN
182  iso(it_isotope, "262" , Qcoeff(-3.572493e+01, 1.652500e+00, 7.633309e-03, -3.770940e-06 )); // JPL
183  iso(it_isotope, "SelfContStandardType", Qcoeff( 0 ,0 ,0 ,0 ) );
184  iso(it_isotope, "ForeignContStandardType", Qcoeff( 0 ,0 ,0 ,0 ) );
185  iso(it_isotope, "ForeignContMaTippingType", Qcoeff( 0 ,0 ,0 ,0 ) );
186  iso(it_isotope, "ContMPM93", Qcoeff( 0 ,0 ,0 ,0 ) );
187  iso(it_isotope, "SelfContCKDMT100", Qcoeff( 0 ,0 ,0 ,0 ) );
188  iso(it_isotope, "ForeignContCKDMT100", Qcoeff( 0 ,0 ,0 ,0 ) );
189  iso(it_isotope, "SelfContCKD222", Qcoeff( 0 ,0 ,0 ,0 ) );
190  iso(it_isotope, "ForeignContCKD222", Qcoeff( 0 ,0 ,0 ,0 ) );
191  iso(it_isotope, "SelfContCKD242", Qcoeff( 0 ,0 ,0 ,0 ) );
192  iso(it_isotope, "ForeignContCKD242", Qcoeff( 0 ,0 ,0 ,0 ) );
193  iso(it_isotope, "SelfContCKD24", Qcoeff( 0 ,0 ,0 ,0 ) );
194  iso(it_isotope, "ForeignContCKD24", Qcoeff( 0 ,0 ,0 ,0 ) );
195  iso(it_isotope, "ForeignContATM01", Qcoeff( 0 ,0 ,0 ,0 ) );
196  iso(it_isotope, "CP98", Qcoeff( 0 ,0 ,0 ,0 ) );
197  iso(it_isotope, "MPM87",Qcoeff( 0 ,0 ,0 ,0 ) );
198  iso(it_isotope, "MPM89",Qcoeff( 0 ,0 ,0 ,0 ) );
199  iso(it_isotope, "MPM93",Qcoeff( 0 ,0 ,0 ,0 ) );
200  iso(it_isotope, "PWR98",Qcoeff( 0 ,0 ,0 ,0 ) );
201 
202 
203  // CO2
204  // Coeff: 1 1 1 1 1 1 1 1
205  spec(it_species, it_isotope, "CO2");
206  // Name c0 c1 c2 c3
207  // | | | | |
208 iso(it_isotope, "626" , Qcoeff(-1.720718e+00, 9.669217e-01, -8.277298e-04, 2.891070e-06 )); //HITRAN
209 iso(it_isotope, "636" , Qcoeff(-1.850250e+00, 1.912107e+00, -1.599677e-03, 5.955462e-06 )); //HITRAN
210 iso(it_isotope, "628" , Qcoeff(-2.989446e+00, 2.041095e+00, -1.732748e-03, 6.174831e-06 )); //HITRAN
211 iso(it_isotope, "627" , Qcoeff(-2.256240e+01, 1.197737e+01, -1.036863e-02, 3.618820e-05 )); //HITRAN
212 iso(it_isotope, "638" , Qcoeff(-1.882095e+00, 4.025528e+00, -3.299047e-03, 1.266725e-05 )); //HITRAN
213 iso(it_isotope, "637" , Qcoeff(-1.788894e+01, 2.358158e+01, -1.957976e-02, 7.389405e-05 )); //HITRAN
214 iso(it_isotope, "828" , Qcoeff(-1.818540e+00, 1.086818e+00, -9.427241e-04, 3.352295e-06 )); //HITRAN
215 iso(it_isotope, "728" , Qcoeff(-2.087791e+01, 1.266486e+01, -1.091287e-02, 3.874034e-05 )); //HITRAN
216 iso(it_isotope, "CKD241", Qcoeff( 0 ,0 ,0 ,0 ) );
217 iso(it_isotope, "CKDMT100", Qcoeff( 0 ,0 ,0 ,0 ) );
218 iso(it_isotope, "SelfContPWR93", Qcoeff( 0 ,0 ,0 ,0 ) );
219 iso(it_isotope, "ForeignContPWR93", Qcoeff( 0 ,0 ,0 ,0 ) );
220 
221 
222 
223  // O3
224  // Coeff: 1 1 1 1 1
225  spec(it_species, it_isotope, "O3");
226  // Name c0 c1 c2 c3
227  // | | | | |
228 iso(it_isotope, "666" , Qcoeff(-2.773214e+02, 8.175293e+00, 6.892651e-03, 2.842028e-05 )); //HITRAN
229 iso(it_isotope, "668" , Qcoeff(-5.978029e+02, 1.759117e+01, 1.353516e-02, 6.440030e-05 )); //HITRAN
230 iso(it_isotope, "686" , Qcoeff(-3.005190e+02, 8.726453e+00, 5.976672e-03, 3.241643e-05 )); //HITRAN
231 iso(it_isotope, "667" , Qcoeff(-3.454638e+03, 1.018144e+02, 8.249751e-02, 3.631247e-04 )); //HITRAN
232 iso(it_isotope, "676" , Qcoeff(-1.735693e+03, 5.072998e+01, 3.877763e-02, 1.821985e-04 )); //HITRAN
233 
234 
235 
236  // N2O
237  // Coeff: 1 1 1 1 1
238  spec(it_species, it_isotope, "N2O");
239  // Name c0 c1 c2 c3
240  // | | | | |
241 iso(it_isotope, "446" , Qcoeff(3.478254e+01, 1.530195e+01, -1.120080e-02, 5.472145e-05 )); //HITRAN
242 iso(it_isotope, "456" , Qcoeff(3.479618e+01, 1.002537e+01, -6.789834e-03, 3.681093e-05 )); //HITRAN
243 iso(it_isotope, "546" , Qcoeff(2.435117e+01, 1.055152e+01, -7.756090e-03, 3.819981e-05 )); //HITRAN
244 iso(it_isotope, "448" , Qcoeff(4.066999e+01, 1.615921e+01, -1.180945e-02, 5.883212e-05 )); //HITRAN
245 iso(it_isotope, "447" , Qcoeff(2.050163e+02, 9.473303e+01, -7.029656e-02, 3.426216e-04 )); //HITRAN
246 
247 
248  // CO
249  // Coeff: 1 1 1 1 1 1
250  spec(it_species, it_isotope, "CO");
251  // Name c0 c1 c2 c3
252  // | | | | |
253 iso(it_isotope, "26" , Qcoeff(3.243148e-01, 3.601229e-01, 1.538205e-06, 2.385704e-09 )); //HITRAN
254 iso(it_isotope, "36" , Qcoeff(4.632274e-01, 7.560062e-01, -8.390593e-06, 2.229242e-08 )); //HITRAN
255 iso(it_isotope, "28" , Qcoeff(2.874382e-01, 3.786605e-01, -5.551926e-07, 5.629838e-09 )); //HITRAN
256 iso(it_isotope, "27" , Qcoeff(1.697400e+00, 2.220079e+00, -4.074631e-06, 3.291954e-08 )); //HITRAN
257 iso(it_isotope, "38" , Qcoeff(6.558005e-01, 7.928532e-01, 4.443750e-06, 3.520833e-09 )); //HITRAN
258 iso(it_isotope, "37" , Qcoeff(3.990599e+00, 4.641927e+00, 2.855732e-05, 1.499385e-08 )); //HITRAN
259 
260  // CH4
261  // Coeff: 1 1 1
262  spec(it_species, it_isotope, "CH4");
263  // Name c0 c1 c2 c3
264  // | | | | |
265 iso(it_isotope, "211" , Qcoeff(-3.640461e+01, 1.202398e+00, 3.005684e-03, 2.911372e-07 )); //HITRAN
266 iso(it_isotope, "311" , Qcoeff(-7.385939e+01, 2.419567e+00, 5.941999e-03, 6.864449e-07 )); //HITRAN
267 iso(it_isotope, "212" , Qcoeff(-3.003903e+02, 9.769371e+00, 2.411804e-02, 2.704667e-06 )); //HITRAN
268 
269 
270 
271  // O2
272  // Coeff: 1 1 1
273  spec(it_species, it_isotope, "O2");
274  // Name c0 c1 c2 c3
275  // | | | | |
276 iso(it_isotope, "66" , Qcoeff(4.016432e-01, 7.315888e-01, -3.313678e-05, 6.642877e-08 )); //HITRAN
277 iso(it_isotope, "68" , Qcoeff(-3.922253e+00, 1.551651e+00, -8.580045e-05, 1.716056e-07 )); //HITRAN
278 iso(it_isotope, "67" , Qcoeff(-2.757545e+01, 9.118689e+00, -7.483006e-04, 1.332269e-06 )); //HITRAN
279  iso(it_isotope, "CIAfunCKDMT100", Qcoeff( 0 ,0 ,0 ,0 ) );
280  iso(it_isotope, "v0v0CKDMT100", Qcoeff( 0 ,0 ,0 ,0 ) );
281  iso(it_isotope, "v1v0CKDMT100", Qcoeff( 0 ,0 ,0 ,0 ) );
282  iso(it_isotope, "SelfContStandardType", Qcoeff( 0 ,0 ,0 ,0 ) );
283  iso(it_isotope, "SelfContMPM93", Qcoeff( 0 ,0 ,0 ,0 ) );
284  iso(it_isotope, "SelfContPWR93", Qcoeff( 0 ,0 ,0 ,0 ) );
285  iso(it_isotope, "PWR98", Qcoeff( 0 ,0 ,0 ,0 ) );
286  iso(it_isotope, "PWR93", Qcoeff( 0 ,0 ,0 ,0 ) );
287  iso(it_isotope, "PWR88", Qcoeff( 0 ,0 ,0 ,0 ) );
288  iso(it_isotope, "MPM93", Qcoeff( 0 ,0 ,0 ,0 ) );
289  iso(it_isotope, "MPM92", Qcoeff( 0 ,0 ,0 ,0 ) );
290  iso(it_isotope, "MPM89", Qcoeff( 0 ,0 ,0 ,0 ) );
291  iso(it_isotope, "MPM87", Qcoeff( 0 ,0 ,0 ,0 ) );
292  iso(it_isotope, "MPM85", Qcoeff( 0 ,0 ,0 ,0 ) );
293 
294  // NO
295  // Coeff: 1 1 1
296  spec(it_species, it_isotope, "NO");
297  // Name c0 c1 c2 c3
298  // | | | | |
299 iso(it_isotope, "46" , Qcoeff(-5.824308e+01, 3.025484e+00, 4.976571e-03, -5.060093e-06 )); //HITRAN
300 iso(it_isotope, "56" , Qcoeff(-4.036081e+01, 2.091668e+00, 3.435242e-03, -3.490987e-06 )); //HITRAN
301 iso(it_isotope, "48" , Qcoeff(-6.255837e+01, 3.205744e+00, 5.176248e-03, -5.223151e-06 )); //HITRAN
302 
303  // SO2
304  // Coeff: 1 1 2 2
305  spec(it_species, it_isotope, "SO2");
306  // Name c0 c1 c2 c3
307  // | | | | |
308 iso(it_isotope, "626" , Qcoeff(-3.406710e+02, 1.214516e+01, 1.995262e-02, 5.157669e-05 )); //HITRAN
309 iso(it_isotope, "646" , Qcoeff(-3.389056e+02, 1.215747e+01, 2.023113e-02, 5.153272e-05 )); //HITRAN
310 iso(it_isotope, "636", Qcoeff( 5.8740E+02 ,1.2472E+01 ,2.9113E-01 ,-1.6236E-04) ); //JPl
311 iso(it_isotope, "628", Qcoeff( 3.1299E+02 ,6.6372E+00 ,1.5485E-01 ,-8.6343E-05) ); //JPl
312 
313 
314 
315  // NO2
316  // Coeff: 1
317  spec(it_species, it_isotope, "NO2");
318  // Name c0 c1 c2 c3
319  // | | | | |
320 iso(it_isotope, "646" , Qcoeff(-8.761726e+02, 2.829842e+01, 5.398242e-02, 5.194329e-05 )); //HITRAN
321 
322 
323 
324  // NH3
325  // Coeff: 1 1 2
326  spec(it_species, it_isotope, "NH3");
327  // Name c0 c1 c2 c3
328  // | | | | |
329 iso(it_isotope, "4111" , Qcoeff(-9.698124e+01, 3.402711e+00, 8.958578e-03, 1.157044e-06 )); //HITRAN
330 iso(it_isotope, "5111" , Qcoeff(-6.520038e+01, 2.279068e+00, 5.958356e-03, 8.170489e-07 )); //HITRAN
331  iso(it_isotope, "4112" , Qcoeff(9.278991e+00, 4.053839e+00, 3.148529e-02, -8.153125e-06 )); //JPL
332 
333 
334  // HNO3
335  // Coeff: 1
336  spec(it_species, it_isotope, "HNO3");
337  // Name c0 c1 c2 c3
338  // | | | | |
339 iso(it_isotope, "146" , Qcoeff(-3.402033e+04, 7.965238e+02, -2.403160e+00, 8.593868e-03 )); //HITRAN
340 
341 
342  // OH
343  // Coeff: 1 1 1
344  spec(it_species, it_isotope, "OH");
345  // Name c0 c1 c2 c3
346  // | | | | |
347 iso(it_isotope, "61" , Qcoeff(6.198722e+00, 1.870893e-01, 3.099551e-04, -3.229806e-07 )); //HITRAN
348 iso(it_isotope, "81" , Qcoeff(6.173190e+00, 1.884492e-01, 3.126020e-04, -3.263942e-07 )); //HITRAN
349 iso(it_isotope, "62" , Qcoeff(4.103720e+00, 5.095633e-01, 8.899807e-04, -9.103002e-07 )); //HITRAN
350 
351 
352  // HF
353  // Coeff: 1 2
354  spec(it_species, it_isotope, "HF");
355  // Name c0 c1 c2 c3
356  // | | | | |
357 iso(it_isotope, "19" , Qcoeff(1.472238e+00, 1.343685e-01, 3.150221e-06, -2.120225e-09 )); //HITRAN
358  iso(it_isotope, "29" , Qcoeff(3.375585e-01, 6.403473e-02, 3.134983e-07, -3.970786e-11 )); //JPL
359 
360 
361  // HCl
362  // Coeff: 1 1 2 2
363  spec(it_species, it_isotope, "HCl");
364  // Name c0 c1 c2 c3
365  // | | | | |
366 iso(it_isotope, "15" , Qcoeff(2.729314e+00, 5.328097e-01, 8.234868e-07, 5.619026e-09 )); //HITRAN
367 iso(it_isotope, "17" , Qcoeff(2.719350e+00, 5.335676e-01, 2.054102e-06, 2.061213e-09 )); //HITRAN
368  iso(it_isotope, "25" , Qcoeff(1.355208e+00, 5.155418e-01, 3.328246e-06, 1.718278e-12 )); //JPL
369  iso(it_isotope, "27" , Qcoeff(1.359929e+00, 5.170804e-01, 3.358101e-06, -1.087936e-11 )); //JPL
370 
371 
372 
373  // HBr
374  // Coeff: 1 1
375  spec(it_species, it_isotope, "HBr");
376  // Name c0 c1 c2 c3
377  // | | | | |
378 iso(it_isotope, "19" , Qcoeff(2.936148e+00, 6.629899e-01, 1.604872e-05, -1.593934e-08 )); //HITRAN
379 iso(it_isotope, "11" , Qcoeff(2.875136e+00, 6.637710e-01, 1.449833e-05, -1.498201e-08 )); //HITRAN
380 
381 
382  // HI
383  // Coeff: 1
384  spec(it_species, it_isotope, "HI");
385  // Name c0 c1 c2 c3
386  // | | | | |
387 iso(it_isotope, "17" , Qcoeff(4.226561e+00, 1.295818e+00, 1.611346e-05, -7.882228e-09 )); //HITRAN
388 
389 
390  // ClO
391  // Coeff: 1 1
392  spec(it_species, it_isotope, "ClO");
393  // Name c0 c1 c2 c3
394  // | | | | |
395 iso(it_isotope, "56" , Qcoeff(1.290486e+02, 6.369550e+00, 1.441861e-02, -1.211120e-07 )); //HITRAN
396 iso(it_isotope, "76" , Qcoeff(1.306461e+02, 6.492672e+00, 1.457301e-02, 1.142879e-07 )); //HITRAN
397 
398 
399  // OCS
400  // Coeff: 1 1 1 1 1
401  spec(it_species, it_isotope, "OCS");
402  // Name c0 c1 c2 c3
403  // | | | | |
404 iso(it_isotope, "622" , Qcoeff(1.199103e+01, 3.484349e+00, -3.172632e-03, 1.757090e-05 )); //HITRAN
405 iso(it_isotope, "624" , Qcoeff(1.055761e+01, 3.598837e+00, -3.406838e-03, 1.836238e-05 )); //HITRAN
406 iso(it_isotope, "632" , Qcoeff(3.246621e+01, 6.852374e+00, -5.819381e-03, 3.599002e-05 )); //HITRAN
407 iso(it_isotope, "623" , Qcoeff(4.848356e+01, 1.411918e+01, -1.292079e-02, 7.151233e-05 )); //HITRAN
408 iso(it_isotope, "822" , Qcoeff(1.444298e+01, 3.686311e+00, -3.307686e-03, 1.920205e-05 )); //HITRAN
409 
410 
411  // H2CO
412  // Coeff: 1 1 1 2 2
413  spec(it_species, it_isotope, "H2CO");
414  // Name c0 c1 c2 c3
415  // | | | | |
416 iso(it_isotope, "1126" , Qcoeff(-1.734031e+02, 5.682345e+00, 1.504875e-02, 7.509330e-07 )); //HITRAN
417 iso(it_isotope, "1136" , Qcoeff(-3.529337e+02, 1.160844e+01, 3.109193e-02, 1.153082e-06 )); //HITRAN
418 iso(it_isotope, "1128" , Qcoeff(-1.781662e+02, 5.905635e+00, 1.604851e-02, 3.936717e-07 )); //HITRAN
419  iso(it_isotope, "1226" , Qcoeff(-5.332528e+01, 2.914098e+00, 1.444437e-02, -6.565213e-06 )); //Jpl
420 iso(it_isotope, "2226" , Qcoeff(-2.847116e+02, 1.672849e+01, 8.661739e-02, -3.736935e-05 )); //Jpl
421 
422 
423 
424  // HOCl
425  // Coeff: 1 1
426  spec(it_species, it_isotope, "HOCl");
427  // Name c0 c1 c2 c3
428  // | | | | |
429 iso(it_isotope, "165" , Qcoeff(-1.219223e+03, 3.989396e+01, 7.529869e-02, 8.046020e-05 )); //HITRAN
430 iso(it_isotope, "167" , Qcoeff(-1.215084e+03, 4.025848e+01, 7.807742e-02, 7.992701e-05 )); //HITRAN
431 
432 
433  // N2
434  // Coeff: 1
435  spec(it_species, it_isotope, "N2");
436  // Name c0 c1 c2 c3
437  // | | | | |
438 iso(it_isotope, "44" , Qcoeff(1.704255e+00, 1.562748e+00, 2.437406e-05, -1.677703e-08 )); //HITRAN
439  iso(it_isotope, "SelfContMPM93", Qcoeff( 0 ,0 ,0 ,0 ) );
440  iso(it_isotope, "SelfContPWR93", Qcoeff( 0 ,0 ,0 ,0 ) );
441  iso(it_isotope, "SelfContStandardType", Qcoeff( 0 ,0 ,0 ,0 ) );
442  iso(it_isotope, "SelfContBorysow", Qcoeff( 0 ,0 ,0 ,0 ) );
443  iso(it_isotope, "CIArotCKDMT100", Qcoeff( 0 ,0 ,0 ,0 ) );
444  iso(it_isotope, "CIAfunCKDMT100", Qcoeff( 0 ,0 ,0 ,0 ) );
445  iso(it_isotope, "DryContATM01", Qcoeff( 0 ,0 ,0 ,0 ) );
446 
447 
448  // HCN
449  // Coeff: 1 1 1 2
450  spec(it_species, it_isotope, "HCN");
451  // Name c0 c1 c2 c3
452  // | | | | |
453 iso(it_isotope, "124" , Qcoeff(-5.935227e+00, 3.077616e+00, -2.476330e-03, 7.991253e-06 )); //HITRAN
454 iso(it_isotope, "134" , Qcoeff(-1.010578e+01, 6.290094e+00, -4.988065e-03, 1.641309e-05 )); //HITRAN
455 iso(it_isotope, "125" , Qcoeff(-3.253498e+00, 2.118761e+00, -1.680616e-03, 5.582555e-06 )); //HITRAN
456  iso(it_isotope, "224" , Qcoeff(6.626957e+01, 8.670873e-01, 3.148000e-03, -2.052228e-06 )); //JPL
457 
458 
459 
460  // CH3Cl
461  // Coeff: 1 1
462  spec(it_species, it_isotope, "CH3Cl");
463  // Name c0 c1 c2 c3
464  // | | | | |
465 iso(it_isotope, "215" , Qcoeff(-1.140936e+04, 3.073757e+02, 4.383730e-02, 1.249421e-03 )); //HITRAN
466 iso(it_isotope, "217" , Qcoeff(-1.159736e+04, 3.123035e+02, 4.438509e-02, 1.269305e-03 )); //HITRAN
467 
468 
469 
470  // H2O2
471  // Coeff: 1
472  spec(it_species, it_isotope, "H2O2");
473  // Name c0 c1 c2 c3
474  // | | | | |
475 iso(it_isotope, "1661" , Qcoeff(-3.865211e+02, 1.286868e+01, 3.910416e-02, 1.145394e-04 )); //HITRAN
476 
477 
478 
479 
480  // C2H2
481  // Coeff: 1 1
482  spec(it_species, it_isotope, "C2H2");
483  // Name c0 c1 c2 c3
484  // | | | | |
485 iso(it_isotope, "1221" , Qcoeff(-8.684002e+00, 1.453883e+00, -2.597724e-03, 8.482153e-06 ));//HITRAN
486 iso(it_isotope, "1231" , Qcoeff(-3.468599e+01, 5.815575e+00, -1.039390e-02, 3.393990e-05 ));//HITRAN
487 
488 
489 
490 
491  // C2H6
492  // Coeff: 1
493  spec(it_species, it_isotope, "C2H6");
494  // Name c0 c1 c2 c3
495  // | | | | |
496 iso(it_isotope, "1221" , Qcoeff(-9.118157e+03, 2.088364e+02, -4.404385e-01, 2.188428e-03 ));//HITRAN
497 
498 
499 
500  // PH3
501  // Coeff: 2
502  spec(it_species, it_isotope, "PH3");
503  // Name c0 c1 c2 c3
504  // | | | | |
505 iso(it_isotope, "1111" , Qcoeff(-2.426718e+02, 7.338849e+00, 1.131445e-02, 1.262244e-05 ));// JPL
506 
507 
508 
509  // COF2
510  // Coeff: 1
511  spec(it_species, it_isotope, "COF2");
512  // Name c0 c1 c2 c3
513  // | | | | |
514 iso(it_isotope, "269" , Qcoeff(-8.322642e+03, 2.144407e+02, -3.498616e-01, 1.755888e-03 ));//HITRAN
515 
516 
517 
518  // SF6
519  // Coeff: 1
520  spec(it_species, it_isotope, "SF6");
521  // Name c0 c1 c2 c3
522  // | | | | |
523 iso(it_isotope, "29" , Qcoeff(-1.668432e+06, 2.850128e+04, -1.561230e+02, 3.288986e-01 ));//HITRAN
524 
525 
526 
527  // H2S
528  // Coeff: 1 1 1 2
529  spec(it_species, it_isotope, "H2S");
530  // Name c0 c1 c2 c3
531  // | | | | |
532 
533 iso(it_isotope, "121" , Qcoeff(-2.308888e+01, 9.052647e-01, 3.237531e-03, -9.823621e-07 )); //HITRAN
534 iso(it_isotope, "141" , Qcoeff(-2.333981e+01, 9.102537e-01, 3.233485e-03, -9.665574e-07 )); //HITRAN
535 iso(it_isotope, "131" , Qcoeff(-9.329309e+01, 3.636877e+00, 1.291822e-02, -3.864368e-06 )); //HITRAN
536  iso(it_isotope, "122" , Qcoeff(-1.512671e+01, 6.851018e-01, 3.158080e-03, -1.563931e-06 )); //JPL
537 
538 
539  // HCOOH
540  // Coeff: 1 2 2 2
541  spec(it_species, it_isotope, "HCOOH");
542  // Name c0 c1 c2 c3
543  // | | | | |
544 iso(it_isotope, "1261" , Qcoeff(-4.370811e+03, 1.141311e+02, -1.217474e-01, 7.859656e-04 ));//HITRAN
545 iso(it_isotope, "1361" , Qcoeff(-4.910213e+03, 5.115094e+01, 3.433096e-02, -1.340898e-04 ));// JPL
546 iso(it_isotope, "2261" , Qcoeff(3.823001e+02, 5.455419e+00, 1.108040e-01, -5.086754e-06 ));// JPL
547 iso(it_isotope, "1262" , Qcoeff(8.193393e+02, 2.222546e+00, 1.070970e-01, 3.255965e-06 ));// JPL
548 
549 
550 
551 
552  // HO2
553  // Coeff: 1
554  spec(it_species, it_isotope, "HO2");
555  // Name c0 c1 c2 c3
556  // | | | | |
557 iso(it_isotope, "166" , Qcoeff(-2.341264e+02, 8.164256e+00, 2.506193e-02, -3.012599e-06 )); //HITRAN
558 
559 
560 
561  // O
562  // Coeff: 1
563  spec(it_species, it_isotope, "O");
564  // Name c0 c1 c2 c3
565  // | | | | |
566  iso(it_isotope, "6", Qcoeff( -1.0000E+00 ,0.0000E+00 ,0.0000E+00 ,0.0000E+00) ); //HITRAN
567 
568 
569 
570  // ClONO2
571  // Coeff: 1 1
572  spec(it_species, it_isotope, "ClONO2");
573  // Name c0 c1 c2 c3
574  // | | | | |
575 iso(it_isotope, "5646" , Qcoeff(-2.052890e+06, 3.638094e+04, -1.995279e+02, 5.224687e-01 ));//HITRAN
576 iso(it_isotope, "7646" , Qcoeff(-2.104484e+06, 3.729925e+04, -2.045781e+02, 5.357327e-01 ));//HITRAN
577 
578 
579  // NO+
580  // Coeff: 1
581  spec(it_species, it_isotope, "NO+");
582  // Name c0 c1 c2 c3
583  // | | | | |
584 iso(it_isotope, "46" , Qcoeff(1.125969e+00, 1.047028e+00, 1.174546e-05, -1.519278e-08 ));//HITRAN
585 
586 
587 
588  // OClO
589  // Coeff: 2 2
590  spec(it_species, it_isotope, "OClO");
591  // Name c0 c1 c2 c3
592  // | | | | |
593 iso(it_isotope, "656" , Qcoeff(-1.617389e+03, 6.991068e+01, 5.003075e-01, -1.442758e-04 ));// JPL
594 iso(it_isotope, "676" , Qcoeff(7.964396e+02, 4.768587e+01, 5.283347e-01, -8.232128e-05 ));// JPL
595 
596 // The partition function for BrO is provided by Agned Perin, Orsay France!!!
597  // BrO
598  // Coeff: 3 3
599  spec(it_species, it_isotope, "BrO");
600  // Name c0 c1 c2 c3
601  // | | | | |
602 iso(it_isotope, "96" , Qcoeff(-4.084622e+01, 1.427999e+01, -1.011647e-02, 2.783630e-05 )); //HITRAN
603 iso(it_isotope, "16" , Qcoeff(-4.118468e+01, 1.434034e+01, -1.016302e-02, 2.795965e-05 )); //HITRAN
604 
605  // H2SO4
606  // Coeff: 2
607  spec(it_species, it_isotope, "H2SO4");
608  // Name c0 c1 c2 c3
609  // | | | | |
610 iso(it_isotope, "126" , Qcoeff(-5.913199e+03, 2.485770e+02, 1.140269e+00, -5.679165e-04 ));// JPL
611 
612 
613 
614  // Cl2O2
615  // Coeff: 2 2
616  spec(it_species, it_isotope, "Cl2O2");
617  // Name c0 c1 c2 c3
618  // | | | | |
619 iso(it_isotope, "565" , Qcoeff(6.215326e+05, -7.121447e+03, 2.784834e+01, 2.147458e-02 ));// JPL
620 iso(it_isotope, "765" , Qcoeff(6.399192e+05, -7.332314e+03, 2.866224e+01, 2.210953e-02 ));// JPL
621 
622 
623  // HOBr
624  // Coeff: 1 1
625  spec(it_species, it_isotope, "HOBr");
626  // Name c0 c1 c2 c3
627  // | | | | |
628 iso(it_isotope, "169" , Qcoeff(-1.665575e+03, 5.687767e+01, 9.982304e-02, 1.705212e-04 )); //HITRAN
629 iso(it_isotope, "161" , Qcoeff(-1.631140e+03, 5.625451e+01, 1.012339e-01, 1.676169e-04 )); //HITRAN
630 
631 
632 
633  // C2H4
634  // Coeff: 1 1
635  spec(it_species, it_isotope, "C2H4");
636  // Name c0 c1 c2 c3
637  // | | | | |
638 iso(it_isotope, "221" , Qcoeff(-1.379496e+03, 3.408740e+01, -2.321387e-02, 1.682474e-04 )); //HITRAN
639 iso(it_isotope, "231" , Qcoeff(-5.653328e+03, 1.396050e+02, -9.531910e-02, 6.891171e-04 )); //HITRAN
640 
641 
642  // CH3CN
643  // Coeff: 2 2 2 2 2
644  spec(it_species, it_isotope, "CH3CN");
645  // Name c0 c1 c2 c3
646  // | | | | |
647 iso(it_isotope, "211124" , Qcoeff(1.706820e+03, 1.093287e+00, 4.255850e-01, 3.367172e-05 ));// JPL
648 iso(it_isotope, "311124" , Qcoeff(-1.172596e+03, 4.973615e+01, 2.285735e-01, -1.135942e-04 ));// JPL
649 iso(it_isotope, "211134" , Qcoeff(-1.139329e+03, 4.832504e+01, 2.220882e-01, -1.103713e-04 ));// JPL
650 iso(it_isotope, "211125" , Qcoeff(-3.861117e+02, 1.654635e+01, 7.638250e-02, -3.776153e-05 ));// JPL
651 iso(it_isotope, "211224" , Qcoeff(-3.483734e+02, 1.464417e+01, 6.717486e-02, -3.345710e-05 ));// JPL
652 
653 
654  // HNC
655  // Coeff: 2 2 2 2
656  spec(it_species, it_isotope, "HNC");
657  // Name c0 c1 c2 c3
658  // | | | | |
659 iso(it_isotope, "142" , Qcoeff(3.333499e-01, 4.595243e-01, 1.502307e-06, 2.413631e-13 ));// JPL
660 iso(it_isotope, "143" , Qcoeff(7.032558e-02, 4.813463e-01, -6.651923e-06, -1.954964e-11 ));// JPL
661 iso(it_isotope, "152" , Qcoeff(1.589700e-01, 4.708129e-01, -3.866420e-06, 4.006830e-11 ));// JPL
662 iso(it_isotope, "242" , Qcoeff(2.865158e-01, 5.465990e-01, 2.142689e-07, 1.733211e-11 ));// JPL
663 
664  // particle
665  // Coeff: 1 1
666  spec(it_species, it_isotope, "liquidcloud");
667  // Name c0 c1 c2 c3
668  // | | | | |
669  iso(it_isotope, "MPM93", Qcoeff( 0 ,0 ,0 ,0 ) );
670 
671  // particle
672  // Coeff: 1 1
673  spec(it_species, it_isotope, "icecloud");
674  // Name c0 c1 c2 c3
675  // | | | | |
676  iso(it_isotope, "MPM93",Qcoeff( 0 ,0 ,0 ,0 ) );
677 
678  // particle
679  // Coeff: 1 1
680  spec(it_species, it_isotope, "rain");
681  // Name c0 c1 c2 c3
682  // | | | | |
683  iso(it_isotope, "MPM93",Qcoeff( 0 ,0 ,0 ,0 ) );
684 
685 }
686 
687 
690  String name)
691 {
692 
693 #ifndef NDEBUG
694  {
695  assert( name == is->Name() );
696  }
697 #endif
698 
699  ii = is->Isotope().begin();
700 
701  is++;
702 
703 }
704 
705 
707  String name,
708  const ArrayOfNumeric& coeff)
709 {
710 #ifndef NDEBUG
711  {
712  assert( name == ii->Name() );
713  }
714 #endif
715 
716  ii->SetPartitionFctCoeff(coeff);
717 
718  ii++;
719 
720 }
absorption.h
Declarations required for the calculation of absorption coefficients.
spec
void spec(Array< SpeciesRecord >::iterator &is, Array< IsotopeRecord >::iterator &ii, String name)
Define partition function coefficients lookup data.
Definition: partition_function_data.cc:688
Qcoeff
#define Qcoeff
Definition: partition_function_data.cc:59
Array
This can be used to make arrays out of anything.
Definition: array.h:48
species_data
Array< SpeciesRecord > species_data
Definition: species_data.cc:36
my_basic_string
The implementation for String, the ARTS string class.
Definition: mystring.h:61
make_array.h
Implements the class MakeArray, which is a derived class of Array, allowing explicit initialization.
iso
void iso(Array< IsotopeRecord >::iterator &ii, String name, const ArrayOfNumeric &coeff)
Definition: partition_function_data.cc:706
define_partition_species_data
void define_partition_species_data()
Definition: partition_function_data.cc:155
arts.h
The global header file for ARTS.