ARTS  2.4.0(git:4fb77825)
species_data.cc
Go to the documentation of this file.
1 /* Copyright (C) 2000-2012
2  Stefan Buehler <sbuehler@ltu.se>,
3  Axel von Engeln <engeln@uni-bremen.de>
4 
5  This program is free software; you can redistribute it and/or modify it
6  under the terms of the GNU General Public License as published by the
7  Free Software Foundation; either version 2, or (at your option) any
8  later version.
9 
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License
16  along with this program; if not, write to the Free Software
17  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
18  USA. */
19 
38 #include "absorption.h"
39 #include "arts.h"
40 
42 namespace global_data {
44 std::map<String, Index> SpeciesMap;
45 } // namespace global_data
46 
48 
51 #define NAME(x) x
52 #define DEGFR(x) x
53 #define ISOTOPOLOGUES(...) \
54  { __VA_ARGS__ }
55 #define REC IsotopologueRecord
56 #define TAGS(...) \
57  { __VA_ARGS__ }
58 
59 
154 // prototyping
156 extern void define_partition_species_data();
157 
161 }
162 
164  // Initialize to zero, just in case:
165  species_data.resize(0);
166 
167  /* Here's an empty template record entry:
168 
169  species_data.push_back
170  ( SpeciesRecord
171  ( NAME("H2O"),
172  DEGFR(3),
173  ISOTOPOLOGUES
174  (// Name, Isotopologue Ratio, Mass, MY-tag, HI-tag, JPL-tag
175  // | | | | |
176  REC( "" , , , , ,TAGS() ),
177  REC( "" , , , , ,TAGS() )
178  ) ) );
179 
180  For good looks, keep the commas on the marks!
181 
182  */
183 
184  // H2O
185  // Isotopologue Ratio: 1 1 1 1 1 1 3
186  //
187  // Some tags relate to empirical continuum correction terms.
188  // This would be the place to add additional continuum tags, should
189  // this be necessary. Continuum tags must come after the other tags
190  // and have NAN for all data entries, like in my example below. Not
191  // even the isotopic ratio is used for continuum tags.
192  //
193  // The isotopologue ratio of NAN is used to identify continuum tags in
194  // the absorption routines!
195  //
196  // You also have to change the entry in the file
197  // partition_function_data.cc consistently!
198  //
199  // 2001-05-30 Stefan Buehler:
200  // - Added isotopologue 172 (HITRAN 2000 tag 16)
201  // - Gave HITRAN tag 15 to isotopologue 182, which was already in ARTS,
202  // but previously not in HITRAN. Changed isotopologue ratio of this
203  // one to the HITRAN value, which is 6.23e-7, instead of the
204  // previous value of 6.11e-7.
205  species_data.push_back(SpeciesRecord(
206  NAME("H2O"),
207  DEGFR(3),
208  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
209  // | | | | |
210  REC("161", .997317E+00, 18.010565, 11, 11, TAGS(18003, 18005)),
211  REC("181", 1.99983E-03, 20.014811, 12, 12, TAGS(20003)),
212  REC("171", 3.71884E-04, 19.014780, 13, 13, TAGS(19003)),
213  REC("162", 3.10693E-04, 19.016740, 14, 14, TAGS(19002)),
214  REC("182", 6.23003E-07, 21.020985, -1, 15, TAGS(21001)),
215  REC("172", 1.15853E-07, 20.020956, -1, 16, TAGS()),
216  REC("262", 2.41970E-08, 20.000000, -1, 17, TAGS(20001)),
217  REC("SelfContStandardType", NAN, NAN, -1, -1, TAGS()),
218  REC("ForeignContStandardType", NAN, NAN, -1, -1, TAGS()),
219  REC("ForeignContMaTippingType", NAN, NAN, -1, -1, TAGS()),
220  REC("ContMPM93", NAN, NAN, -1, -1, TAGS()),
221  REC("SelfContCKDMT100", NAN, NAN, -1, -1, TAGS()),
222  REC("ForeignContCKDMT100", NAN, NAN, -1, -1, TAGS()),
223  REC("SelfContCKDMT252", NAN, NAN, -1, -1, TAGS()),
224  REC("ForeignContCKDMT252", NAN, NAN, -1, -1, TAGS()),
225  REC("SelfContCKDMT320", NAN, NAN, -1, -1, TAGS()),
226  REC("ForeignContCKDMT320", NAN, NAN, -1, -1, TAGS()),
227  REC("SelfContCKD222", NAN, NAN, -1, -1, TAGS()),
228  REC("ForeignContCKD222", NAN, NAN, -1, -1, TAGS()),
229  REC("SelfContCKD242", NAN, NAN, -1, -1, TAGS()),
230  REC("ForeignContCKD242", NAN, NAN, -1, -1, TAGS()),
231  REC("SelfContCKD24", NAN, NAN, -1, -1, TAGS()),
232  REC("ForeignContCKD24", NAN, NAN, -1, -1, TAGS()),
233  REC("ForeignContATM01", NAN, NAN, -1, -1, TAGS()),
234  REC("CP98", NAN, NAN, -1, -1, TAGS()),
235  REC("MPM87", NAN, NAN, -1, -1, TAGS()),
236  REC("MPM89", NAN, NAN, -1, -1, TAGS()),
237  REC("MPM93", NAN, NAN, -1, -1, TAGS()),
238  REC("PWR98", NAN, NAN, -1, -1, TAGS()))));
239 
240  // CO2
241  // (missing mainly in JPL, latest version (7/00) includes some isotopologues)
242  // Degrees of freedom from Schanda:`Physical Fundamentals of Remote Sensing'
243  // Isotopologue Ratios: 1 1 1 1 1 1 1 1 1 1 1
244  // Note (JM): CO2-727 is new in Hitran 2012, and it is not the at least
245  // abundant isotopologue. So hitran changed the isotopologue assignments of
246  // the less abundant isotopologues: 838, which was 29 before now has hitran
247  // tag 20!
248  // Again (as for OCS from 2000 edition), this messes up the whole concept of
249  // reading a catalogue, because the species depends now on the edition of the
250  // catalogue.
251  // ATTENTION: This version of species_data.cc works with HITRAN 2008 (and
252  // earlier) editions. For use with 2012 (and later), outcomment the 2 lines
253  // below "version for 2008 and earlier" and uncomment the corresponding 2
254  // lines below "version for 2012 and later".
255  // Also, isotopologue 837 is already in molparams.txt, too, as isotopologue
256  // #11. It's unclear what will be done when this will get some transitions
257  // assigned.
258  species_data.push_back(SpeciesRecord(
259  NAME("CO2"),
260  DEGFR(2),
261  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
262  // | | | | |
263  REC("626", .984204E+00, 43.989830, 21, 21, TAGS()),
264  REC("636", 1.10574E-02, 44.993185, 22, 22, TAGS()),
265  REC("628", 3.94707E-03, 45.994076, 23, 23, TAGS(46013)),
266  REC("627", 7.33989E-04, 44.994045, 24, 24, TAGS(45012)),
267  REC("638", 4.43446E-05, 46.997431, 25, 25, TAGS()),
268  REC("637", 8.24623E-06, 45.997400, 26, 26, TAGS()),
269  REC("828", 3.95734E-06, 47.998322, 27, 27, TAGS()),
270  REC("728", 1.47180E-06, 46.998291, 28, 28, TAGS()),
271 #ifdef USE_HITRAN2008
272  // version for 2008 and earlier
273  REC("727", 1.36847E-07, 45.998262, -1, -1, TAGS()),
274  REC("838", 4.44600E-08, 49.001675, -1, 29, TAGS()),
275 #else
276  // version for 2012 and later
277  REC("727", 1.36847E-07, 45.998262, -1, 29, TAGS()),
278  REC("838", 4.44600E-08, 49.001675, -1, 20, TAGS()),
279 #endif
280  REC("837", 1.65354E-08, 48.001646, -1, -1, TAGS()),
281  REC("CKD241", NAN, NAN, -1, -1, TAGS()),
282  REC("CKDMT100", NAN, NAN, -1, -1, TAGS()),
283  REC("CKDMT252", NAN, NAN, -1, -1, TAGS()),
284  REC("SelfContPWR93", NAN, NAN, -1, -1, TAGS()),
285  REC("ForeignContPWR93", NAN, NAN, -1, -1, TAGS()),
286  REC("SelfContHo66", NAN, NAN, -1, -1, TAGS()),
287  REC("ForeignContHo66", NAN, NAN, -1, -1, TAGS()))));
288 
289  // O3
290  // Isotopologue Ratios: 1 1 1 1 1
291  species_data.push_back(SpeciesRecord(
292  NAME("O3"),
293  DEGFR(3),
294  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
295  // | | | | |
296  REC("666",
297  .992901E+00,
298  47.984745,
299  31,
300  31,
301  TAGS(48004, 48005, 48006, 48007, 48008)),
302  REC("668", 3.98194E-03, 49.988991, 32, 32, TAGS(50004, 50006)),
303  REC("686", 1.99097E-03, 49.988991, 33, 33, TAGS(50003, 50005)),
304  REC("667", 7.40475E-04, 48.988960, 34, 34, TAGS(49002)),
305  REC("676", 3.70237E-04, 48.988960, 35, 35, TAGS(49001)))));
306 
307  // N2O
308  // Isotopologue Ratios: 1 1 1 1 1
309  species_data.push_back(SpeciesRecord(
310  NAME("N2O"),
311  DEGFR(2),
312  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
313  // | | | | |
314  REC("446", .990333E+00, 44.001062, 41, 41, TAGS(44004, 44009, 44012)),
315  REC("456", 3.64093E-03, 44.998096, 42, 42, TAGS(45007)),
316  REC("546", 3.64093E-03, 44.998096, 43, 43, TAGS(45008)),
317  REC("448", 1.98582E-03, 46.005308, 44, 44, TAGS(46007)),
318  REC("447", 3.69280E-04, 45.005278, -1, 45, TAGS()))));
319 
320  // CO
321  // Isotopologue Ratios: 1 1 1 1 1 1
322  species_data.push_back(SpeciesRecord(
323  NAME("CO"),
324  DEGFR(2),
325  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
326  // | | | | |
327  REC("26", .986544E+00, 27.994915, 51, 51, TAGS(28001)),
328  REC("36", 1.10836E-02, 28.998270, 52, 52, TAGS(29001)),
329  REC("28", 1.97822E-03, 29.999161, 53, 53, TAGS(30001)),
330  REC("27", 3.67867E-04, 28.999130, -1, 54, TAGS(29006)),
331  REC("38", 2.22250E-05, 31.002516, -1, 55, TAGS()),
332  REC("37", 4.13292E-06, 30.002485, -1, 56, TAGS()))));
333 
334  // CH4
335  // Degrees of freedom: jpl catalogue
336  // Isotopologue Ratios: 1 1 1 1
337  // Note: - jpl isotopologue ratio for tag 17003: 0.00014996848
338  // - CH4 is in official mytran list (6), but does not
339  // seem to be included for calculation, as given
340  // by table tag_table in file glob_def.c
341  species_data.push_back(SpeciesRecord(
342  NAME("CH4"),
343  DEGFR(3),
344  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
345  // | | | | |
346  REC("211", .988274E+00, 16.031300, -1, 61, TAGS()),
347  // JM: the following version with MADE-UP JPL-TAG(!) is for SWI intercomparison ONLY!
348  // REC("211" ,.988274E+00 ,16.031300 ,-1 ,61 ,TAGS(16002)),
349  REC("311", 1.11031E-02, 17.034655, -1, 62, TAGS()),
350  REC("212", 6.15751E-04, 17.037475, -1, 63, TAGS(17003)),
351  REC("312", 6.91785E-06, 18.040830, -1, 64, TAGS()))));
352 
353  // O2
354  // Isotopologue Ratios: 1 1 1
355  species_data.push_back(SpeciesRecord(
356  NAME("O2"),
357  DEGFR(2),
358  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
359  // | | | | |
360  REC("66", .995262E+00, 31.989830, 71, 71, TAGS(32001, 32002)),
361  REC("68", 3.99141E-03, 33.994076, 72, 72, TAGS(34001)),
362  REC("67", 7.42235E-04, 32.994045, 73, 73, TAGS(33002)),
363  REC("CIAfunCKDMT100", NAN, NAN, -1, -1, TAGS()),
364  REC("v0v0CKDMT100", NAN, NAN, -1, -1, TAGS()),
365  REC("v1v0CKDMT100", NAN, NAN, -1, -1, TAGS()),
366  REC("visCKDMT252", NAN, NAN, -1, -1, TAGS()),
367  REC("SelfContStandardType", NAN, NAN, -1, -1, TAGS()),
368  REC("SelfContMPM93", NAN, NAN, -1, -1, TAGS()),
369  REC("SelfContPWR93", NAN, NAN, -1, -1, TAGS()),
370  REC("PWR98", NAN, NAN, -1, -1, TAGS()),
371  REC("PWR93", NAN, NAN, -1, -1, TAGS()),
372  REC("PWR88", NAN, NAN, -1, -1, TAGS()),
373  REC("MPM93", NAN, NAN, -1, -1, TAGS()),
374  REC("TRE05", NAN, NAN, -1, -1, TAGS()),
375  REC("MPM92", NAN, NAN, -1, -1, TAGS()),
376  REC("MPM89", NAN, NAN, -1, -1, TAGS()),
377  REC("MPM87", NAN, NAN, -1, -1, TAGS()),
378  REC("MPM85", NAN, NAN, -1, -1, TAGS()),
379  REC("MPM2020", NAN, NAN, -1, -1, TAGS()))));
380 
381  // NO
382  // Isotopologue Ratios: 1 1 1
383  species_data.push_back(SpeciesRecord(
384  NAME("NO"),
385  DEGFR(2),
386  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
387  // | | | | |
388  REC("46", .993974E+00, 29.997989, 81, 81, TAGS(30008)),
389  REC("56", 3.65431E-03, 30.995023, -1, 82, TAGS()),
390  REC("48", 1.99312E-03, 32.002234, -1, 83, TAGS()))));
391 
392  // SO2
393  // Isotopologue Ratios: 1 1 2 2
394  species_data.push_back(SpeciesRecord(
395  NAME("SO2"),
396  DEGFR(3),
397  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
398  // | | | | |
399  REC("626", .945678E+00, 63.961901, 91, 91, TAGS(64002, 64005)),
400  REC("646", 4.19503E-02, 65.957695, 92, 92, TAGS(66002)),
401  REC("636", 0.0074989421, 65.00, 93, -1, TAGS(65001)),
402  REC("628", 0.0020417379, 66.00, 94, -1, TAGS(66004)))));
403 
404  // NO2
405  // Isotopologue Ratios: 1
406  species_data.push_back(SpeciesRecord(
407  NAME("NO2"),
408  DEGFR(3),
409  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
410  // | | | | |
411  REC("646", .991616E+00, 45.992904, 101, 101, TAGS(46006)))));
412 
413  // NH3
414  // Isotopologue Ratios: 1 1 3
415  species_data.push_back(SpeciesRecord(
416  NAME("NH3"),
417  DEGFR(3),
418  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
419  // | | | | |
420  REC("4111", .995872E+00, 17.026549, 111, 111, TAGS(17002, 17004)),
421  REC("5111", 3.66129E-03, 18.023583, 112, 112, TAGS(18002)),
422  REC("4112", 0.00044792294, 18.00, -1, -1, TAGS(18004)))));
423 
424  // HNO3
425  // Isotopologue Ratios: 1 1
426  species_data.push_back(SpeciesRecord(
427  NAME("HNO3"),
428  DEGFR(3),
429  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
430  // | | | | |
431  REC("146",
432  .989110E+00,
433  62.995644,
434  121,
435  121,
436  TAGS(63001, 63002, 63003, 63004, 63005, 63006)),
437  REC("156", 3.63600E-03, 63.992680, -1, 122, TAGS()))));
438 
439  // OH
440  // Isotopologue Ratios: 1 1 1
441  species_data.push_back(SpeciesRecord(
442  NAME("OH"),
443  DEGFR(2),
444  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
445  // | | | | |
446  REC("61", .997473E+00, 17.002740, 131, 131, TAGS(17001)),
447  REC("81", 2.00014E-03, 19.006986, 132, 132, TAGS(19001)),
448  REC("62", 1.55371E-04, 18.008915, 133, 133, TAGS(18001)))));
449 
450  // HF
451  // Isotopologue Ratios: 1 1
452  species_data.push_back(SpeciesRecord(
453  NAME("HF"),
454  DEGFR(2),
455  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
456  // | | | | |
457  REC("19", .999844E+00, 20.006229, 141, 141, TAGS(20002)),
458  REC("29", 1.55741E-04, 21.012404, -1, 142, TAGS(21002)))));
459 
460  // HCl
461  // Isotopologue Ratios: 1 1 1 1
462  species_data.push_back(SpeciesRecord(
463  NAME("HCl"),
464  DEGFR(2),
465  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
466  // | | | | |
467  REC("15", .757587E+00, 35.976678, 151, 151, TAGS(36001)),
468  REC("17", .242257E+00, 37.973729, 152, 152, TAGS(38001)),
469  REC("25", 1.18005E-04, 36.982853, -1, 153, TAGS(37001)),
470  REC("27", 3.77350E-05, 38.979904, -1, 154, TAGS(39004)))));
471 
472  // HBr
473  // Isotopologue Ratios: 1 1 1 1
474  species_data.push_back(SpeciesRecord(
475  NAME("HBr"),
476  DEGFR(2),
477  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
478  // | | | | |
479  REC("19", .506781E+00, 79.926160, 161, 161, TAGS(80001)),
480  REC("11", .493063E+00, 81.924115, 162, 162, TAGS(82001)),
481  REC("29", 7.89384E-05, 80.932336, -1, 163, TAGS()),
482  REC("21", 7.68016E-05, 82.930289, -1, 164, TAGS()))));
483 
484  // HI
485  // Degrees of freedom: guessed, since it seems to be linear
486  // Isotopologue Ratios: 1 1
487  // Note: HI is in official mytran list (17), but does not
488  // seem to be included for calculation, as given
489  // by table tag_table in file glob_def.c
490 
491  species_data.push_back(SpeciesRecord(
492  NAME("HI"),
493  DEGFR(2),
494  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
495  // | | | | |
496  REC("17", .999844E+00, 127.912297, -1, 171, TAGS()),
497  REC("27", 1.55741E-04, 128.918472, -1, 172, TAGS()))));
498 
499  // ClO
500  // Isotopologue Ratios: 1 1
501  species_data.push_back(SpeciesRecord(
502  NAME("ClO"),
503  DEGFR(2),
504  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
505  // | | | | |
506  REC("56", .755908E+00, 50.963768, 181, 181, TAGS(51002, 51003)),
507  REC("76", .241720E+00, 52.960819, 182, 182, TAGS(53002, 53006)))));
508 
509  // OCS
510  // Isotopologue Ratios: 1 1 1 1 1
511  // Note (AvE): OCS-623 is new in Hitran 2000, and it is not the at least
512  // abundant isotopologue. So what actually happend with the following
513  // one, is that numbers changed in the hitran edition? I had a
514  // look at the two editions, and they actually changed them, stupid
515  // idiots. So what used to be 194 (hitran 96) is now 195 (hitran
516  // 2000). This messes up the whole concept of reading a catalogue,
517  // because the species depends now on the edition of the
518  // catalogue.
519  species_data.push_back(SpeciesRecord(
520  NAME("OCS"),
521  DEGFR(2),
522  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
523  // | | | | |
524  REC("622", .937395E+00, 59.966986, 191, 191, TAGS(60001)),
525  REC("624", 4.15828E-02, 61.962780, 192, 192, TAGS(62001)),
526  REC("632", 1.05315E-02, 60.970341, 193, 193, TAGS(61001)),
527  REC("623", 7.39908E-03, 60.966371, 194, 194, TAGS()),
528  REC("822", 1.87967E-03, 61.971231, 195, 195, TAGS(62002)))));
529 
530  // H2CO
531  // Isotopologue Ratios: 1 1 1 3 3
532  // Note: the isotopologue names differ from hitran convention, since the jpl catalogue has
533  // isotopologues HHCO, HDCO, DDCO.
534  // hitran convention -- new convention -- jpl species
535  // 126 1126 H2CO
536  // 136 1136 H2C-13-O
537  // 128 1128 H2CO-18
538  // - 1226 HDCO
539  // - 2226 D2CO
540  species_data.push_back(SpeciesRecord(
541  NAME("H2CO"),
542  DEGFR(3),
543  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
544  // | | | | |
545  REC("1126", .986237E+00, 30.010565, 201, 201, TAGS(30004)),
546  REC("1136", 1.10802E-02, 31.013920, 202, 202, TAGS(31002)),
547  REC("1128", 1.97761E-03, 32.014811, 203, 203, TAGS(32004)),
548  REC("1226", 0.00029578940, 31.00, -1, -1, TAGS(31003)),
549  REC("2226", 2.2181076E-08, 32.00, -1, -1, TAGS(32006)))));
550 
551  // HOCl
552  // Isotopologue Ratios: 1 1
553  species_data.push_back(SpeciesRecord(
554  NAME("HOCl"),
555  DEGFR(3),
556  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
557  // | | | | |
558  REC("165", .755790E+00, 51.971593, 211, 211, TAGS(52006)),
559  REC("167", .241683E+00, 53.968644, 212, 212, TAGS(54005)))));
560 
561  // N2
562  // Degrees of freedom: guessed, since it seems to be linear
563  // Isotopologue Ratios: 1 1
564  // Note: N2 is in official mytran list (22), but does not
565  // seem to be included for calculation, as given
566  // by table tag_table in file glob_def.c
567  species_data.push_back(SpeciesRecord(
568  NAME("N2"),
569  DEGFR(2),
570  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
571  // | | | | |
572  REC("44", .992687E+00, 28.006148, -1, 221, TAGS()),
573  REC("45", 7.47809E-03, 29.003182, -1, 222, TAGS()),
574  REC("SelfContMPM93", NAN, NAN, -1, -1, TAGS()),
575  REC("SelfContPWR93", NAN, NAN, -1, -1, TAGS()),
576  REC("SelfContStandardType", NAN, NAN, -1, -1, TAGS()),
577  REC("SelfContBorysow", NAN, NAN, -1, -1, TAGS()),
578  REC("CIArotCKDMT100", NAN, NAN, -1, -1, TAGS()),
579  REC("CIAfunCKDMT100", NAN, NAN, -1, -1, TAGS()),
580  REC("CIArotCKDMT252", NAN, NAN, -1, -1, TAGS()),
581  REC("CIAfunCKDMT252", NAN, NAN, -1, -1, TAGS()),
582  REC("DryContATM01", NAN, NAN, -1, -1, TAGS()))));
583 
584  // HCN
585  // Isotopologue Ratios: 1 1 1 3
586  species_data.push_back(SpeciesRecord(
587  NAME("HCN"),
588  DEGFR(3),
589  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
590  // | | | | |
591  REC("124", .985114E+00, 27.010899, 231, 231, TAGS(27001, 27003)),
592  REC("134", 1.10676E-02, 28.014254, 232, 232, TAGS(28002)),
593  REC("125", 3.62174E-03, 28.007933, 233, 233, TAGS(28003)),
594  REC("224", 0.00014773545, 28.00, -1, -1, TAGS(28004)))));
595 
596  // CH3Cl
597  // Isotopologue Ratios: 1 1
598  species_data.push_back(SpeciesRecord(
599  NAME("CH3Cl"),
600  DEGFR(3),
601  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
602  // | | | | |
603  REC("215", .748937E+00, 49.992328, 241, 241, TAGS(50007)),
604  REC("217", .239491E+00, 51.989379, 242, 242, TAGS(52009)))));
605 
606  // H2O2
607  // Isotopologue Ratios: 1
608  species_data.push_back(SpeciesRecord(
609  NAME("H2O2"),
610  DEGFR(3),
611  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
612  // | | | | |
613  REC("1661", .994952E+00, 34.005480, 251, 251, TAGS(34004)))));
614 
615  // C2H2
616  // Degrees of freedom: guessed, since it seems to be non linear
617  // Isotopologue Ratios: 1 1 1
618  // Note: C2H2 is in official mytran list (26), but does not
619  // seem to be included for calculation, as given
620  // by table tag_table in file glob_def.c
621  species_data.push_back(SpeciesRecord(
622  NAME("C2H2"),
623  DEGFR(3),
624  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
625  // | | | | |
626  REC("1221", .977599E+00, 26.015650, -1, 261, TAGS()),
627  REC("1231", 2.19663E-02, 27.019005, -1, 262, TAGS()),
628  REC("1222", 3.04550E-04, 27.021825, -1, 263, TAGS()))));
629 
630  // C2H6
631  // Degrees of freedom: guessed, since it seems to be non linear
632  // Isotopologue Ratios: 1 1
633  // Note: C2H6 is in official mytran list (27), but does not
634  // seem to be included for calculation, as given
635  // by table tag_table in file glob_def.c
636  species_data.push_back(SpeciesRecord(
637  NAME("C2H6"),
638  DEGFR(3),
639  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
640  // | | | | |
641  REC("1221", .976990E+00, 30.046950, -1, 271, TAGS()),
642  REC("1231", 2.19526E-02, 31.050305, -1, 272, TAGS()))));
643 
644  // PH3
645  // Isotopologue Ratios: 1
646  species_data.push_back(SpeciesRecord(
647  NAME("PH3"),
648  DEGFR(3),
649  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
650  // | | | | |
651  REC("1111", .999533E+00, 33.997238, 281, 281, TAGS(34003)))));
652 
653  // COF2
654  // Isotopologue Ratios: 1 1
655  species_data.push_back(SpeciesRecord(
656  NAME("COF2"),
657  DEGFR(3),
658  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
659  // | | | | |
660  REC("269", .986544E+00, 65.991722, 291, 291, TAGS(66001)),
661  REC("369", 1.10834E-02, 66.995083, -1, 292, TAGS()))));
662 
663  // SF6
664  // Degrees of freedom: guessed, since it seems to be non linear
665  // Isotopologue Ratios: 1
666  // Note: SF6 is in official mytran list (30), but does not
667  // seem to be included for calculation, as given
668  // by table tag_table in file glob_def.c
669  species_data.push_back(SpeciesRecord(
670  NAME("SF6"),
671  DEGFR(3),
672  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
673  // | | | | |
674  REC("29", .950180E+00, 145.962492, -1, 301, TAGS()))));
675 
676  // H2S
677  // Isotopologue Ratios: 1 1 1 2
678  species_data.push_back(SpeciesRecord(
679  NAME("H2S"),
680  DEGFR(3),
681  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
682  // | | | | |
683  REC("121", .949884E+00, 33.987721, 311, 311, TAGS(34002)),
684  // A. Perrin found, HITRAN isotopologue assignments are wrong (inconsistent
685  // between molparams.txt and the line parameter files *.par. This dates back to
686  // at least HITRAN1996, so it seems safe to just swap around the HITRAN tags
687  // here.
688  // REC("141" ,4.21369E-02 ,35.983515 ,-1 ,312 ,TAGS( )),
689  // REC("131" ,7.49766E-03 ,34.987105 ,-1 ,313 ,TAGS( )),
690  REC("141", 4.21369E-02, 35.983515, -1, 313, TAGS()),
691  REC("131", 7.49766E-03, 34.987105, -1, 312, TAGS()),
692  REC("122", 0.00029991625, 35.00, -1, -1, TAGS(35001)))));
693 
694  // HCOOH
695  // Isotopologue Ratios: 1 3 3 3
696  // Note: the isotopologue names differ from hitran convention, since the jpl catalogue has
697  // isotopologues HCOOH, HC-13-OOH, DCOOH, HCOOD
698  // hitran convention -- new convention -- jpl species
699  // 126 1261 HCOOH
700  // - 1361 HC-13-OOH
701  // - 2261 DCOOH
702  // - 1262 HCOOD
703  species_data.push_back(SpeciesRecord(
704  NAME("HCOOH"),
705  DEGFR(3),
706  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
707  // | | | | |
708  REC("1261", .983898E+00, 46.005480, 321, 321, TAGS(46005)),
709  REC("1361", 0.010913149, 47.00, -1, -1, TAGS(47002)),
710  REC("2261", 0.00014755369, 47.00, -1, -1, TAGS(47003)),
711  REC("1262", 0.00014755369, 47.00, -1, -1, TAGS(47004)))));
712 
713  // HO2
714  // Isotopologue Ratios: 1
715  species_data.push_back(SpeciesRecord(
716  NAME("HO2"),
717  DEGFR(3),
718  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
719  // | | | | |
720  REC("166", .995107E+00, 32.997655, 331, 331, TAGS(33001)))));
721 
722  // O
723  // Isotopologue Ratios: 1
724  species_data.push_back(SpeciesRecord(
725  NAME("O"),
726  DEGFR(0),
727  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
728  // | | | | |
729  REC("6", .997628E+00, 15.994915, 341, 341, TAGS(16001)))));
730 
731  // ClONO2
732  // Isotopologue Ratios: 1 1
733  // Note: ClONO2 in hitran is identical to ClNO3 in jpl (according to Johannes Orphal)
734  species_data.push_back(SpeciesRecord(
735  NAME("ClONO2"),
736  DEGFR(3),
737  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
738  // | | | | |
739  REC("5646", .749570E+00, 96.956672, 351, 351, TAGS(97002)),
740  REC("7646", .239694E+00, 98.953723, 352, 352, TAGS(99001)))));
741 
742  // NO+
743  // Degrees of freedom: guessed, since it seems to be linear
744  // Isotopologue Ratios: 1
745  // Note: NO+ is in official mytran list (36), but does not
746  // seem to be included for calculation, as given
747  // by table tag_table in file glob_def.c
748  species_data.push_back(SpeciesRecord(
749  NAME("NO+"),
750  DEGFR(2),
751  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
752  // | | | | |
753  REC("46", .993974E+00, 29.997989, -1, 361, TAGS(30011)))));
754 
755  // OClO
756  // Isotopologue Ratios: 2 2
757  species_data.push_back(SpeciesRecord(
758  NAME("OClO"),
759  DEGFR(3),
760  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
761  // | | | | |
762  REC("656", 0.75509223, 67.00, 431, -1, TAGS(67001)),
763  REC("676", 0.24490632, 69.00, 432, -1, TAGS(69001)))));
764 
765  // BrO
766  // Isotopologue Ratios: 2 2
767  species_data.push_back(SpeciesRecord(
768  NAME("BrO"),
769  DEGFR(2),
770  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
771  // | | | | |
772  REC("96", 0.50582466, 95.00, 401, -1, TAGS(95001)),
773  REC("16", 0.49431069, 97.00, 402, -1, TAGS(97001)))));
774 
775  // H2SO4
776  // Isotopologue Ratios: 2
777  species_data.push_back(SpeciesRecord(
778  NAME("H2SO4"),
779  DEGFR(3),
780  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
781  // | | | | |
782  REC("126", 0.95060479, 98.00, 481, -1, TAGS(98001)))));
783 
784  // Cl2O2
785  // Isotopologue Ratios: 2 2
786  // Note: refered to as Cl2O2 in mytran catalogue, in jpl cat: ClOOCl
787  species_data.push_back(SpeciesRecord(
788  NAME("Cl2O2"),
789  DEGFR(3),
790  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
791  // | | | | |
792  REC("565", 0.57016427, 102.00, 491, -1, TAGS(102001)),
793  REC("765", 0.36982818, 104.00, 492, -1, TAGS(104001)))));
794 
795  // HOBr
796  // Isotopologue Ratios: 1 1
797  // Note: latest addition to Hitran 2000, DEGFR guessed
798  species_data.push_back(SpeciesRecord(
799  NAME("HOBr"),
800  DEGFR(3),
801  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
802  // | | | | |
803  REC("169", .505579E+00, 95.921076, 371, 371, TAGS(96001)),
804  REC("161", .491894E+00, 97.919027, 372, 372, TAGS(98002)))));
805 
806  // C2H4
807  // Isotopologue Ratios: 1 1
808  // Note: latest addition to Hitran 2000, DEGFR guessed
809  species_data.push_back(SpeciesRecord(
810  NAME("C2H4"),
811  DEGFR(3),
812  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
813  // | | | | |
814  REC("221", .977294E+00, 28.031300, -1, 381, TAGS()),
815  REC("231", .219595E-01, 29.034655, -1, 382, TAGS()))));
816 
817  // CH3OH
818  // Isotopologue Ratios: 1
819  // Note: added with Hitran 2008, DEGFR from JPL.
820  species_data.push_back(SpeciesRecord(
821  NAME("CH3OH"),
822  DEGFR(3),
823  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
824  // | | | | |
825  REC("2161", .985930E+00, 32.026215, -1, 391, TAGS(32003))
826  // REC("2261" ,1.0? ,33.00 ,-1 ,-1 ,TAGS(33004)) //in JPL this is seems to be taken as separate species (IsoCorr=0)
827  )));
828 
829  // CH3Br
830  // Isotopologue Ratios: 1 1
831  // Note: added with Hitran 2008, DEGFR guessed.
832  species_data.push_back(SpeciesRecord(
833  NAME("CH3Br"),
834  DEGFR(3),
835  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
836  // | | | | |
837  REC("219", .500995E+00, 93.941811, -1, 401, TAGS()),
838  REC("211", .487433E+00, 95.939764, -1, 402, TAGS()))));
839 
840  // CH3CN
841  // Isotopologue Ratios: 1 3 3 3 3
842  // Note: the isotopologue names have been set before CH3CH appeared in hitran,
843  // hence naming is different from there
844  // hitran convention -- our convention -- jpl species
845  // 2124 212124 CH3CN
846  // 3124 311124 C-13-H3CN (?)
847  // 2134 211134 CH3C-13-N (?)
848  // - 211125 CH3CN-15
849  // - 211224 CH2DCN
850  // 3134 311134 - (?)
851  species_data.push_back(SpeciesRecord(
852  NAME("CH3CN"),
853  DEGFR(3),
854  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
855  // | | | | |
856  REC("211124", .973866E+00, 41.026549, -1, 411, TAGS(41001, 41010)),
857  REC("311124", .102683e-01, 42.00, -1, -1, TAGS(42006)),
858  REC("211134", .102683e-01, 42.00, -1, -1, TAGS(42007)),
859  REC("211125", .347136e-02, 42.00, -1, -1, TAGS(42001)),
860  REC("211224", .441185e-03, 42.00, -1, -1, TAGS(42008)))));
861 
862  // CF4
863  // Isotopologue Ratios: 1
864  // Note: added with Hitran 2008, DEGFR guessed.
865  species_data.push_back(SpeciesRecord(
866  NAME("CF4"),
867  DEGFR(3),
868  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
869  // | | | | |
870  REC("29", .988890E+00, 87.993616, -1, 421, TAGS()))));
871 
872  // HC3N
873  // Isotopologue Ratios: 1 3 3 3 3 3
874  // Note: added with Hitran 2008, where lines are available, but no entry on
875  // species parameters in molparams.txt yet. Name and Mass are temporary
876  // guesses. DEGFR from JPL.
877  // We took HCCCN from JPL, which has also HCCNC and HNCCC, but we assume those
878  // to be different species.
879  // (temporary) name convention:
880  // hitran convention -- our convention -- jpl species
881  // 1224 12224 HCCCN
882  // - 12234 HCCC-13-N
883  // - 12324 HCC-13-CN
884  // - 13224 HC-13-CCN
885  // - 12225 HCCCN-15
886  // - 22224 DCCCN
887  species_data.push_back(SpeciesRecord(
888  NAME("HC3N"),
889  DEGFR(2),
890  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
891  // | | | | |
892  REC("12224", .963346E+00, 51.010899, -1, 441, TAGS(51001)),
893  REC("12234", .106852e-01, 52.00, -1, -1, TAGS(52001)),
894  REC("12324", .106852e-01, 52.00, -1, -1, TAGS(52002)),
895  REC("13224", .106852e-01, 52.00, -1, -1, TAGS(52003)),
896  REC("12225", .356272e-02, 52.00, -1, -1, TAGS(52004)),
897  REC("22224", .144472e-03, 52.00, -1, -1, TAGS(52005)))));
898 
899  // CS
900  // Isotopologue Ratios: 1 1 1 1
901  // Note: added with Hitran 2008, DEGFR from JPL.
902  species_data.push_back(SpeciesRecord(
903  NAME("CS"),
904  DEGFR(2),
905  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
906  // | | | | |
907  REC("22", .939624E+00, 43.971036, -1, 461, TAGS(44001)),
908  REC("24", .416817E-01, 45.966787, -1, 462, TAGS(46001)),
909  REC("32", .105565E-01, 44.974368, -1, 463, TAGS(45001)),
910  REC("23", .741668E-02, 44.970399, -1, 464, TAGS()))));
911 
912  // HNC
913  // Isotopologue Ratios: 3 3 3 3
914  species_data.push_back(SpeciesRecord(
915  NAME("HNC"),
916  DEGFR(2),
917  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
918  // | | | | |
919  REC("142", .985280e+00, 27.00, -1, -1, TAGS(27002, 27003)),
920  REC("143", .109285e-01, 28.00, -1, -1, TAGS(28005)),
921  REC("152", .364384e-02, 28.00, -1, -1, TAGS(28006)),
922  REC("242", .147761e-03, 28.00, -1, -1, TAGS(28007)))));
923 
924  // SO
925  // Isotopologue Ratios: 2 2 2
926  // Note: Name and Mass guessed. DEGFR from JPL.
927  species_data.push_back(SpeciesRecord(
928  NAME("SO"),
929  DEGFR(2),
930  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
931  // | | | | |
932  REC("26", .950605e+00, 48.00, -1, -1, TAGS(48001, 48002)),
933  REC("46", .420727e-01, 50.00, -1, -1, TAGS(50001)),
934  REC("28", .194089e-02, 50.00, -1, -1, TAGS(50002)))));
935 
936  // C3H8
937  // Isotopologue Ratios: 4
938  // Note: Name and Mass guessed. DEGFR and atomic isotopic ratios from JPL.
939  species_data.push_back(SpeciesRecord(
940  NAME("C3H8"),
941  DEGFR(3),
942  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
943  // | | | | |
944  REC("21", 9.66290e-01, 44.00, -1, -1, TAGS(44013)))));
945 
946  // H2
947  // Isotopologue Ratios: 1 1 4
948  // Note: H2 is spectroscopically inert, but now needed as broadening/continuum
949  // species for planetary atmospheres. Hence we need it to be defined as
950  // absorption species.
951  // Name and Mass guessed. DEGFR and atomic isotopic ratios from JPL.
952  species_data.push_back(SpeciesRecord(
953  NAME("H2"),
954  DEGFR(2),
955  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
956  // | | | | |
957  REC("11", .999688E+00, 2.0156500, -1, 451, TAGS()),
958  REC("12", 3.11432E-04, 3.0218250, -1, 452, TAGS(3001))
959  // REC("22" ,.224838e-07 ,4.00 ,-1 ,-1 ,TAGS())
960  )));
961 
962  // H
963  // Isotopologue Ratios: 0
964  // Note: H is spectroscopically inert, but now needed as broadening/continuum
965  // species for planetary atmospheres. Hence we need it to be defined as
966  // absorption species.
967  // All parameters guessed.
968  species_data.push_back(SpeciesRecord(
969  NAME("H"),
970  DEGFR(2),
971  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
972  // | | | | |
973  REC("1", 1.00, 1.00, -1, -1, TAGS()))));
974 
975  // He
976  // Isotopologue Ratios: 0
977  // Note: He is spectroscopically inert, but now needed as broadening/continuum
978  // species for planetary atmospheres. Hence we need it to be defined as
979  // absorption species.
980  // All parameters guessed.
981  species_data.push_back(SpeciesRecord(
982  NAME("He"),
983  DEGFR(2),
984  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
985  // | | | | |
986  REC("4", 1.00, 4.00, -1, -1, TAGS()))));
987 
988  // Ar
989  // Isotopologue Ratios: 0
990  // Note: Ar is spectroscopically inert, but now needed as broadening/continuum
991  // species for planetary atmospheres. Hence it needs to be defined as
992  // absorption species.
993  // All parameters guessed.
994  species_data.push_back(SpeciesRecord(
995  NAME("Ar"),
996  DEGFR(2),
997  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
998  // | | | | |
999  REC("8", 1.00, 18.00, -1, -1, TAGS()))));
1000 
1001  // C4H2
1002  // Isotopologue Ratios: 1
1003  // Note: added with HITRAN2012, Mass and DEGFR guessed.
1004  species_data.push_back(SpeciesRecord(
1005  NAME("C4H2"),
1006  DEGFR(2),
1007  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
1008  // | | | | |
1009  REC("2211", .955998E+00, 50.015650, -1, 431, TAGS()))));
1010 
1011  // SO3
1012  // Isotopologue Ratios: 1
1013  // Note: added with HITRAN2012, Mass and DEGFR guessed.
1014  species_data.push_back(SpeciesRecord(
1015  NAME("SO3"),
1016  DEGFR(3),
1017  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
1018  // | | | | |
1019  REC("26", .943400E+00, 79.956820, -1, 471, TAGS()))));
1020 
1021  species_data.push_back(SpeciesRecord(
1022  NAME("liquidcloud"),
1023  DEGFR(0),
1024  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
1025  // | | | | |
1026  REC("MPM93", NAN, NAN, -1, -1, TAGS()),
1027  REC("ELL07", NAN, NAN, -1, -1, TAGS()))));
1028 
1029  species_data.push_back(SpeciesRecord(
1030  NAME("icecloud"),
1031  DEGFR(0),
1032  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
1033  // | | | | |
1034  REC("MPM93", NAN, NAN, -1, -1, TAGS()))));
1035 
1036  species_data.push_back(SpeciesRecord(
1037  NAME("rain"),
1038  DEGFR(0),
1039  ISOTOPOLOGUES( // Name, Isotop. Ratio, Mass, MY-tag, HI-tag, JPL-tag
1040  // | | | | |
1041  REC("MPM93", NAN, NAN, -1, -1, TAGS()))));
1042 
1043  species_data.push_back(
1044  SpeciesRecord(NAME("free_electrons"), DEGFR(0), ISOTOPOLOGUES()));
1045 
1046  species_data.push_back(
1047  SpeciesRecord(NAME("particles"), DEGFR(0), ISOTOPOLOGUES()));
1048 
1049  // hitran cross section species
1050  for (const auto& s : {
1051  "C2F6", "C3F8", "C4F10", "C5F12", "C6F14",
1052  "C8F18", "cC4F8", "CCl4", "CFC11", "CFC113",
1053  "CFC114", "CFC115", "CFC12", "CH2Cl2", "CH3CCl3",
1054  "CHCl3", "Halon1211", "Halon1301", "Halon2402", "HCFC141b",
1055  "HCFC142b", "HCFC22", "HFC125", "HFC134a", "HFC143a",
1056  "HFC152a", "HFC227ea", "HFC23", "HFC245fa", "HFC32",
1057  "NF3", "SO2F2", "HFC4310mee"
1058  }) {
1059  species_data.push_back(SpeciesRecord(NAME(s), DEGFR(0), ISOTOPOLOGUES()));
1060  }
1061 
1062  // You also have to change the entry in the file
1063  // partition_function_data.cc consistently!
1064 }
1065 
1072 
1073  for (Index i = 0; i < species_data.nelem(); ++i) {
1074  SpeciesMap[species_data[i].Name()] = i;
1075  }
1076 }
DEGFR
#define DEGFR(x)
Definition: species_data.cc:52
absorption.h
Declarations required for the calculation of absorption coefficients.
TAGS
#define TAGS(...)
Definition: species_data.cc:56
global_data::SpeciesMap
const map< String, Index > SpeciesMap
The map associated with species_data.
Definition: species_data.cc:44
NAME
#define NAME(x)
Definition: species_data.cc:51
global_data::species_data
const Array< SpeciesRecord > species_data
Species Data.
Definition: partition_function_data.cc:42
Array
This can be used to make arrays out of anything.
Definition: array.h:108
define_basic_species_data
void define_basic_species_data()
Define species lookup data.
Definition: species_data.cc:163
define_partition_species_data
void define_partition_species_data()
Definition: partition_function_data.cc:188
ISOTOPOLOGUES
#define ISOTOPOLOGUES(...)
Definition: species_data.cc:53
define_species_data
void define_species_data()
Definition: species_data.cc:158
SpeciesRecord
Contains the lookup data for one species.
Definition: absorption.h:144
define_species_map
void define_species_map()
Definition: species_data.cc:1069
REC
#define REC
Definition: species_data.cc:55
global_data
Definition: agenda_record.cc:33
Index
INDEX Index
The type to use for all integer numbers and indices.
Definition: matpack.h:39
arts.h
The global header file for ARTS.