casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ATMRefractiveIndex.h
Go to the documentation of this file.
1 #ifndef _ATM_REFRACTIVEINDEX_H
2 #define _ATM_REFRACTIVEINDEX_H
3 /*******************************************************************************
4  * ALMA - Atacama Large Millimiter Array
5  * (c) Instituto de Estructura de la Materia, 2009
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2.1 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this library; if not, write to the Free Software
19  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20  *
21  * "@(#) $Id: ATMRefractiveIndex.h Exp $"
22  *
23  * who when what
24  * -------- -------- ----------------------------------------------
25  * pardo 24/03/09 created
26  */
27 
28 #ifndef __cplusplus
29 #error This is a C++ include file and cannot be used from plain C
30 #endif
31 
32 #include "ATMCommon.h"
33 #include <complex>
34 
35 
36 
38 
91 {
92 public:
93 
95 
98 
99  virtual ~RefractiveIndex();
100 
102 
104 
105 
106 
110  std::complex<double> getRefractivity_o2(double temperature,double pressure, double wvpressure,double frequency);
111 
116  std::complex<double> getRefractivity_o2(double temperature,double pressure,double wvpressure,
117  double frequency,double width,unsigned int n);
118 
119 
120 
124  std::complex<double> getRefractivity_h2o(double temperature, double pressure, double wvpressure, double frequency);
125 
130  std::complex<double> getRefractivity_h2o(double temperature,double pressure,double wvpressure,
131  double frequency,double width,unsigned int n);
132 
133 
134 
135 
136 
137 
138 
141  std::complex<double> getSpecificRefractivity_o3(double temperature,double pressure,double frequency);
142 
146  std::complex<double> getSpecificRefractivity_o3(double temperature,double pressure,double frequency,
147  double width,unsigned int n);
148 
149 
153  inline std::complex<double> getRefractivity_o3(double temperature, double pressure, double frequency, double numberdensity)
154  {return getSpecificRefractivity_o3(temperature, pressure, frequency) * numberdensity;}
155 
156 
161  std::complex<double> getRefractivity_o3(double temperature,double pressure,double frequency,
162  double width,unsigned int n,double numberdensity)
163  {return getSpecificRefractivity_o3(temperature, pressure, frequency, width, n) * numberdensity;}
164 
165 
166 
167  /************************** 16o16o (species 1) **************************************************************/
168 
169 
172  inline std::complex<double> getSpecificRefractivity_16o16o(double temperature,double pressure,double wvpressure,double frequency)
173  {unsigned int species=1; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency);}
174 
178  inline std::complex<double> getSpecificRefractivity_16o16o(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n)
179  {unsigned int species=1; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency, width, n);}
180 
181 
182 
186  inline std::complex<double> getRefractivity_16o16o(double temperature,double pressure,double wvpressure,double frequency,double numberdensity)
187  {return getSpecificRefractivity_16o16o(temperature, pressure, wvpressure, frequency)* numberdensity;}
188 
193  std::complex<double> getRefractivity_16o16o(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n,double numberdensity)
194  {return getSpecificRefractivity_16o16o(temperature, pressure, wvpressure, frequency, width, n)* numberdensity;}
195 
196  /*************************************************************************************************************/
197 
198 
199  /************************** 16o16o_vib (species 2) ***********************************************************/
200 
201 
205  inline std::complex<double> getSpecificRefractivity_16o16o_vib(double temperature,double pressure,double wvpressure,double frequency)
206  {unsigned int species=2; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency);}
207 
212  inline std::complex<double> getSpecificRefractivity_16o16o_vib(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n)
213  {unsigned int species=2; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency, width, n);}
214 
215 
216 
221  inline std::complex<double> getRefractivity_16o16o_vib(double temperature,double pressure,double wvpressure,double frequency,double numberdensity)
222  {return getSpecificRefractivity_16o16o_vib(temperature, pressure, wvpressure, frequency)* numberdensity;}
223 
229  std::complex<double> getRefractivity_16o16o_vib(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n,double numberdensity)
230  {return getSpecificRefractivity_16o16o_vib(temperature, pressure, wvpressure, frequency, width, n)* numberdensity;}
231 
232  /*************************************************************************************************************/
233 
234 
235  /************************** 16o18o (species 3) ***************************************************************/
236 
237 
240  inline std::complex<double> getSpecificRefractivity_16o18o(double temperature,double pressure,double wvpressure,double frequency)
241  {unsigned int species=3; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency);}
242 
246  inline std::complex<double> getSpecificRefractivity_16o18o(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n)
247  {unsigned int species=3; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency, width, n);}
248 
249 
250 
254  inline std::complex<double> getRefractivity_16o18o(double temperature,double pressure,double wvpressure,double frequency,double numberdensity)
255  {return getSpecificRefractivity_16o18o(temperature, pressure, wvpressure, frequency)* numberdensity;}
256 
261  std::complex<double> getRefractivity_16o18o(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n,double numberdensity)
262  {return getSpecificRefractivity_16o18o(temperature, pressure, wvpressure, frequency, width, n)* numberdensity;}
263 
264  /*************************************************************************************************************/
265 
266 
267  /************************** 16o17o (species 4) ***************************************************************/
268 
269 
272  inline std::complex<double> getSpecificRefractivity_16o17o(double temperature,double pressure,double wvpressure,double frequency)
273  {unsigned int species=4; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency);}
274 
278  inline std::complex<double> getSpecificRefractivity_16o17o(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n)
279  {unsigned int species=4; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency, width, n);}
280 
281 
282 
286  inline std::complex<double> getRefractivity_16o17o(double temperature,double pressure,double wvpressure,double frequency,double numberdensity)
287  {return getSpecificRefractivity_16o17o(temperature, pressure, wvpressure, frequency)* numberdensity;}
288 
293  std::complex<double> getRefractivity_16o17o(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n,double numberdensity)
294  {return getSpecificRefractivity_16o17o(temperature, pressure, wvpressure, frequency, width, n)* numberdensity;}
295 
296  /*************************************************************************************************************/
297 
298 
299 
300  /************************** co (species 5) *******************************************************************/
301 
302 
305  inline std::complex<double> getSpecificRefractivity_co(double temperature,double pressure,double frequency)
306  {unsigned int species=5; return mkSpecificRefractivity(species, temperature, pressure, frequency);}
307 
311  std::complex<double> getSpecificRefractivity_co(double temperature,double pressure,double frequency,double width,unsigned int n)
312  {unsigned int species=5; return mkSpecificRefractivity(species, temperature, pressure, frequency, width, n);}
313 
314 
315 
319  inline std::complex<double> getRefractivity_co(double temperature,double pressure,double frequency,double numberdensity)
320  {return getSpecificRefractivity_co(temperature, pressure, frequency)* numberdensity;}
321 
326  std::complex<double> getRefractivity_co(double temperature,double pressure,double frequency,double width,unsigned int n,double numberdensity)
327  {return getSpecificRefractivity_co(temperature, pressure, frequency, width, n)* numberdensity;}
328 
329  /*************************************************************************************************************/
330 
331 
332 
333  /************************** n2o (species 6) *******************************************************************/
334 
335 
338  inline std::complex<double> getSpecificRefractivity_n2o(double temperature,double pressure,double frequency)
339  {unsigned int species=6; return mkSpecificRefractivity(species, temperature, pressure, frequency);}
340 
344  std::complex<double> getSpecificRefractivity_n2o(double temperature,double pressure,double frequency,double width,unsigned int n)
345  {unsigned int species=6; return mkSpecificRefractivity(species, temperature, pressure, frequency, width, n);}
346 
347 
351  inline std::complex<double> getRefractivity_n2o(double temperature,double pressure,double frequency,double numberdensity)
352  {return getSpecificRefractivity_no2(temperature, pressure, frequency)* numberdensity;}
353 
358  std::complex<double> getRefractivity_n2o(double temperature,double pressure,double frequency,double width,unsigned int n,double numberdensity)
359  {return getSpecificRefractivity_no2(temperature, pressure, frequency, width, n)* numberdensity;}
360 
361  /*************************************************************************************************************/
362 
363 
364 
365  /************************** no2 (species 7) ******************************************************************/
366 
367 
370  inline std::complex<double> getSpecificRefractivity_no2(double temperature,double pressure,double frequency)
371  {unsigned int species=7; return mkSpecificRefractivity(species, temperature, pressure, frequency);}
372 
376  std::complex<double> getSpecificRefractivity_no2(double temperature,double pressure,double frequency,double width,unsigned int n)
377  {unsigned int species=7; return mkSpecificRefractivity(species, temperature, pressure, frequency, width, n);}
378 
379 
380 
384  inline std::complex<double> getRefractivity_no2(double temperature,double pressure,double frequency,double numberdensity)
385  {return getSpecificRefractivity_no2(temperature, pressure, frequency)* numberdensity;}
386 
391  std::complex<double> getRefractivity_no2(double temperature,double pressure,double frequency,double width,unsigned int n,double numberdensity)
392  {return getSpecificRefractivity_no2(temperature, pressure, frequency, width, n)* numberdensity;}
393 
394  /*************************************************************************************************************/
395 
396 
397  /************************** so2 (species 8) ******************************************************************/
398 
399 
402  inline std::complex<double> getSpecificRefractivity_so2(double temperature,double pressure,double frequency)
403  {unsigned int species=8; return mkSpecificRefractivity(species, temperature, pressure, frequency);}
404 
408  std::complex<double> getSpecificRefractivity_so2(double temperature,double pressure,double frequency,double width,unsigned int n)
409  {unsigned int species=8; return mkSpecificRefractivity(species, temperature, pressure, frequency, width, n);}
410 
411 
415  inline std::complex<double> getRefractivity_so2(double temperature,double pressure,double frequency,double numberdensity)
416  {return getSpecificRefractivity_so2(temperature, pressure, frequency)* numberdensity;}
417 
422  std::complex<double> getRefractivity_so2(double temperature,double pressure,double frequency,double width,unsigned int n,double numberdensity)
423  {return getSpecificRefractivity_so2(temperature, pressure, frequency, width, n)* numberdensity;}
424 
425  /*************************************************************************************************************/
426 
427 
428 
429  /************************** cnth2o (species 9) ***************************************************************/
430 
434  inline std::complex<double> getSpecificRefractivity_cnth2o(double temperature,double pressure,double wvpressure,double frequency)
435  {unsigned int species=9; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency);}
436 
441  std::complex<double> getSpecificRefractivity_cnth2o(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n)
442  {unsigned int species=9; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency, width, n);}
443 
444  /*************************************************************************************************************/
445 
446 
447 
448  /************************** cntdry (species 10) **************************************************************/
449 
450 
454  inline std::complex<double> getSpecificRefractivity_cntdry(double temperature,double pressure,double wvpressure,double frequency)
455  {unsigned int species=10; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency);}
456 
461  std::complex<double> getSpecificRefractivity_cntdry(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n)
462  {unsigned int species=10; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency, width, n);}
463 
464  /*************************************************************************************************************/
465 
466 
467 
468  /************************** hh16o (species 11) ***************************************************************/
469 
470 
473  inline std::complex<double> getSpecificRefractivity_hh16o(double temperature,double pressure,double wvpressure,double frequency)
474  {unsigned int species=11; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency);}
475 
479  std::complex<double> getSpecificRefractivity_hh16o(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n)
480  {unsigned int species=11; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency, width, n);}
481 
482  /*************************************************************************************************************/
483 
484 
485  /************************** hh16o_v2 (species 12) *************************************************************/
486 
489  inline std::complex<double> getSpecificRefractivity_hh16o_v2(double temperature,double pressure,double wvpressure,double frequency)
490  {unsigned int species=12; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency);}
491 
495  std::complex<double> getSpecificRefractivity_hh16o_v2(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n)
496  {unsigned int species=12; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency, width, n);}
497 
498  /*************************************************************************************************************/
499 
500 
501  /************************** hh18o (species 13) ***************************************************************/
502 
505  inline std::complex<double> getSpecificRefractivity_hh18o(double temperature,double pressure,double wvpressure,double frequency)
506  {unsigned int species=13; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency);}
507 
511  std::complex<double> getSpecificRefractivity_hh18o(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n)
512  {unsigned int species=13; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency, width, n);}
513 
514 
515  /*************************************************************************************************************/
516 
517 
518  /************************** hh17o (species 14) ***************************************************************/
519 
522  inline std::complex<double> getSpecificRefractivity_hh17o(double temperature,double pressure,double wvpressure,double frequency)
523  {unsigned int species=14; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency);}
524 
528  std::complex<double> getSpecificRefractivity_hh17o(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n)
529  {unsigned int species=14; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency, width, n);}
530 
531 
532  /*************************************************************************************************************/
533 
534 
535  /************************** hdo (species 15) *****************************************************************/
536 
539  inline std::complex<double> getSpecificRefractivity_hdo(double temperature,double pressure,double wvpressure,double frequency)
540  {unsigned int species=15; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency);}
541 
545  std::complex<double> getSpecificRefractivity_hdo(double temperature,double pressure,double wvpressure,double frequency,double width,unsigned int n)
546  {unsigned int species=15; return mkSpecificRefractivity(species, temperature, pressure, wvpressure, frequency, width, n);}
547 
548 
549  /*************************************************************************************************************/
550 
551 
552 
553  /************************** 16o16o16o (species 16) ************************************************************/
554 
555 
558  inline std::complex<double> getSpecificRefractivity_16o16o16o(double temperature,double pressure,double frequency)
559  {unsigned int species=16; return mkSpecificRefractivity(species, temperature, pressure, frequency);}
560 
564  std::complex<double> getSpecificRefractivity_16o16o16o(double temperature,double pressure,double frequency,double width,unsigned int n)
565  {unsigned int species=16; return mkSpecificRefractivity(species, temperature, pressure, frequency, width, n);}
566 
567 
568 
572  inline std::complex<double> getRefractivity_16o16o16o(double temperature,double pressure,double frequency,double numberdensity)
573  {return getSpecificRefractivity_16o16o16o(temperature, pressure, frequency)* numberdensity;}
574 
575 
580  std::complex<double> getRefractivity_16o16o16o(double temperature,double pressure,double frequency,double width,unsigned int n,double numberdensity)
581  {return getSpecificRefractivity_16o16o16o(temperature, pressure, frequency, width, n)* numberdensity;}
582 
583  /*************************************************************************************************************/
584 
585 
586 
587  /************************** 16o16o16o v2 (species 17) *********************************************************/
588 
589 
593  inline std::complex<double> getSpecificRefractivity_16o16o16o_v2(double temperature,double pressure,double frequency)
594  {unsigned int species=17; return mkSpecificRefractivity(species, temperature, pressure, frequency);}
595 
600  std::complex<double> getSpecificRefractivity_16o16o16o_v2(double temperature,double pressure,double frequency,double width,unsigned int n)
601  {unsigned int species=17; return mkSpecificRefractivity(species, temperature, pressure, frequency, width, n);}
602 
603 
608  inline std::complex<double> getRefractivity_16o16o16o_v2(double temperature,double pressure,double frequency,double numberdensity)
609  {return getSpecificRefractivity_16o16o16o_v2(temperature, pressure, frequency)* numberdensity;}
610 
616  std::complex<double> getRefractivity_16o16o16o_v2(double temperature,double pressure,double frequency,double width,unsigned int n,double numberdensity)
617  {return getSpecificRefractivity_16o16o16o_v2(temperature, pressure, frequency, width, n)* numberdensity;}
618 
619  /*************************************************************************************************************/
620 
621 
622 
623  /************************** 16o16o16o v1 (species 18) *********************************************************/
624 
625 
629  inline std::complex<double> getSpecificRefractivity_16o16o16o_v1(double temperature,double pressure,double frequency)
630  {unsigned int species=18; return mkSpecificRefractivity(species, temperature, pressure, frequency);}
631 
636  std::complex<double> getSpecificRefractivity_16o16o16o_v1(double temperature,double pressure,double frequency,double width,unsigned int n)
637  {unsigned int species=18; return mkSpecificRefractivity(species, temperature, pressure, frequency, width, n);}
638 
639 
644  inline std::complex<double> getRefractivity_16o16o16o_v1(double temperature,double pressure,double frequency,double numberdensity)
645  {return getSpecificRefractivity_16o16o16o_v1(temperature, pressure, frequency)* numberdensity;}
646 
652  std::complex<double> getRefractivity_16o16o16o_v1(double temperature,double pressure,double frequency,double width,unsigned int n,double numberdensity)
653  {return getSpecificRefractivity_16o16o16o_v1(temperature, pressure, frequency, width, n)* numberdensity;}
654 
655  /*************************************************************************************************************/
656 
657 
658 
659  /************************** 16o16o16o v3 (species 19) *********************************************************/
660 
661 
665  inline std::complex<double> getSpecificRefractivity_16o16o16o_v3(double temperature,double pressure,double frequency)
666  {unsigned int species=19; return mkSpecificRefractivity(species, temperature, pressure, frequency);}
667 
672  std::complex<double> getSpecificRefractivity_16o16o16o_v3(double temperature,double pressure,double frequency,double width,unsigned int n)
673  {unsigned int species=19; return mkSpecificRefractivity(species, temperature, pressure, frequency, width, n);}
674 
679  inline std::complex<double> getRefractivity_16o16o16o_v3(double temperature,double pressure,double frequency,double numberdensity)
680  {return getSpecificRefractivity_16o16o16o_v3(temperature, pressure, frequency)* numberdensity;}
681 
687  std::complex<double> getRefractivity_16o16o16o_v3(double temperature,double pressure,double frequency,double width,unsigned int n,double numberdensity)
688  {return getSpecificRefractivity_16o16o16o_v3(temperature, pressure, frequency, width, n)* numberdensity;}
689 
690  /*************************************************************************************************************/
691 
692 
693 
694  /************************** 16o16o18o (species 20) *********************************************************/
695 
696 
700  inline std::complex<double> getSpecificRefractivity_16o16o18o(double temperature,double pressure,double frequency)
701  {unsigned int species=20; return mkSpecificRefractivity(species, temperature, pressure, frequency);}
702 
707  std::complex<double> getSpecificRefractivity_16o16o18o(double temperature,double pressure,double frequency,double width,unsigned int n)
708  {unsigned int species=20; return mkSpecificRefractivity(species, temperature, pressure, frequency, width, n);}
709 
710 
715  inline std::complex<double> getRefractivity_16o16o18o(double temperature,double pressure,double frequency,double numberdensity)
716  {return getSpecificRefractivity_16o16o18o(temperature, pressure, frequency)* numberdensity;}
717 
723  std::complex<double> getRefractivity_16o16o18o(double temperature,double pressure,double frequency,double width,unsigned int n,double numberdensity)
724  {return getSpecificRefractivity_16o16o18o(temperature, pressure, frequency, width, n)* numberdensity;}
725 
726  /*************************************************************************************************************/
727 
728 
729 
730  /************************** 16o16o17o (species 21) *********************************************************/
731 
735  inline std::complex<double> getSpecificRefractivity_16o16o17o(double temperature,double pressure,double frequency)
736  {unsigned int species=21; return mkSpecificRefractivity(species, temperature, pressure, frequency);}
737 
742  std::complex<double> getSpecificRefractivity_16o16o17o(double temperature,double pressure,double frequency,double width,unsigned int n)
743  {unsigned int species=21; return mkSpecificRefractivity(species, temperature, pressure, frequency, width, n);}
744 
745 
750  inline std::complex<double> getRefractivity_16o16o17o(double temperature,double pressure,double frequency,double numberdensity)
751  {return getSpecificRefractivity_16o16o17o(temperature, pressure, frequency)* numberdensity;}
752 
758  std::complex<double> getRefractivity_16o16o17o(double temperature,double pressure,double frequency,double width,unsigned int n,double numberdensity)
759  {return getSpecificRefractivity_16o16o17o(temperature, pressure, frequency, width, n)* numberdensity;}
760 
761  /*************************************************************************************************************/
762 
763 
764 
765  /************************** 16o18o16o (species 22) *********************************************************/
766 
770  inline std::complex<double> getSpecificRefractivity_16o18o16o(double temperature,double pressure,double frequency)
771  {unsigned int species=22; return mkSpecificRefractivity(species, temperature, pressure, frequency);}
772 
777  std::complex<double> getSpecificRefractivity_16o18o16o(double temperature,double pressure,double frequency,double width,unsigned int n)
778  {unsigned int species=22; return mkSpecificRefractivity(species, temperature, pressure, frequency, width, n);}
779 
784  inline std::complex<double> getRefractivity_16o18o16o(double temperature,double pressure,double frequency,double numberdensity)
785  {return getSpecificRefractivity_16o18o16o(temperature, pressure, frequency)* numberdensity;}
786 
792  std::complex<double> getRefractivity_16o18o16o(double temperature,double pressure,double frequency,double width,unsigned int n,double numberdensity)
793  {return getSpecificRefractivity_16o18o16o(temperature, pressure, frequency, width, n)* numberdensity;}
794 
795  /*************************************************************************************************************/
796 
797 
798 
799  /************************** 16o17o16o (species 23) *********************************************************/
800 
804  inline std::complex<double> getSpecificRefractivity_16o17o16o(double temperature,double pressure,double frequency)
805  {unsigned int species=22; return mkSpecificRefractivity(species, temperature, pressure, frequency);}
806 
811  std::complex<double> getSpecificRefractivity_16o17o16o(double temperature,double pressure,double frequency,double width,unsigned int n)
812  {unsigned int species=22; return mkSpecificRefractivity(species, temperature, pressure, frequency, width, n);}
813 
818  inline std::complex<double> getRefractivity_16o17o16o(double temperature,double pressure,double frequency,double numberdensity)
819  {return getSpecificRefractivity_16o17o16o(temperature, pressure, frequency)* numberdensity;}
820 
826  std::complex<double> getRefractivity_16o17o16o(double temperature,double pressure,double frequency,double width,unsigned int n,double numberdensity)
827  {return getSpecificRefractivity_16o17o16o(temperature, pressure, frequency, width, n)* numberdensity;}
828 
829  /*************************************************************************************************************/
830 
835  std::complex<double> getRefractivity(unsigned int species,double temperature,double pressure,double frequency,double numberdensity)
836  {return getSpecificRefractivity(species, temperature, pressure, frequency)* numberdensity;}
837 
841  std::complex<double> getSpecificRefractivity(unsigned int species,double temperature,double pressure,double frequency)
842  {return mkSpecificRefractivity(species, temperature, pressure, frequency);}
843 
844 
845 
847 
848 private:
849 
850  std::complex<double> mkSpecificRefractivity(unsigned int species, // species --> 1 to 23
851  double temperature,
852  double pressure,
853  double wvpressure,
854  double frequency);
855 
856  std::complex<double> mkSpecificRefractivity(unsigned int species, double temperature, double pressure, double frequency){return mkSpecificRefractivity(species, temperature, pressure, double(0.0), frequency);}
857 
858  std::complex<double> mkSpecificRefractivity(unsigned int species, // species --> 1 to 23
859  double temperature,
860  double pressure,
861  double wvpressure,
862  double frequency,
863  double width,
864  unsigned int n);
865 
866  std::complex<double> mkSpecificRefractivity(unsigned int species, double temperature, double pressure, double frequency, double width, unsigned int n){return mkSpecificRefractivity(species, temperature, pressure, double(0.0), frequency, width, n);}
867 
868  std::complex<double> mkSpecificRefractivity_16o16o(double temperature,
869  double pressure,
870  double wvpressure,
871  double frequency);
872  std::complex<double> mkSpecificRefractivity_16o16o_vib(double temperature,
873  double pressure,
874  double wvpressure,
875  double frequency);
876  std::complex<double> mkSpecificRefractivity_16o18o(double temperature,
877  double pressure,
878  double wvpressure,
879  double frequency);
880  std::complex<double> mkSpecificRefractivity_16o17o(double temperature,
881  double pressure,
882  double wvpressure,
883  double frequency);
884  std::complex<double> mkSpecificRefractivity_co(double temperature,
885  double pressure,
886  double frequency);
887  std::complex<double> mkSpecificRefractivity_n2o(double temperature,
888  double pressure,
889  double frequency);
890  std::complex<double> mkSpecificRefractivity_no2(double temperature,
891  double pressure,
892  double frequency);
893  std::complex<double> mkSpecificRefractivity_so2(double temperature,
894  double pressure,
895  double frequency);
896  std::complex<double> mkSpecificRefractivity_cnth2o(double temperature,
897  double pressure,
898  double wvpressure,
899  double frequency);
900  std::complex<double> mkSpecificRefractivity_cntdry(double temperature,
901  double pressure,
902  double wvpressure,
903  double frequency);
904  std::complex<double> mkSpecificRefractivity_hh16o(double temperature,
905  double pressure,
906  double wvpressure,
907  double frequency);
908  std::complex<double> mkSpecificRefractivity_hh16o_v2(double temperature,
909  double pressure,
910  double wvpressure,
911  double frequency);
912  std::complex<double> mkSpecificRefractivity_hh18o(double temperature,
913  double pressure,
914  double wvpressure,
915  double frequency);
916  std::complex<double> mkSpecificRefractivity_hh17o(double temperature,
917  double pressure,
918  double wvpressure,
919  double frequency);
920  std::complex<double> mkSpecificRefractivity_hdo(double temperature,
921  double pressure,
922  //double wvpressure, // unused parameter
923  double frequency);
924  std::complex<double> mkSpecificRefractivity_16o16o16o(double temperature,
925  double pressure,
926  double frequency);
927  std::complex<double> mkSpecificRefractivity_16o16o16o_v2(double temperature,
928  double pressure,
929  double frequency);
930  std::complex<double> mkSpecificRefractivity_16o16o16o_v1(double temperature,
931  double pressure,
932  double frequency);
933  std::complex<double> mkSpecificRefractivity_16o16o16o_v3(double temperature,
934  double pressure,
935  double frequency);
936  std::complex<double> mkSpecificRefractivity_16o16o18o(double temperature,
937  double pressure,
938  double frequency);
939  std::complex<double> mkSpecificRefractivity_16o16o17o(double temperature,
940  double pressure,
941  double frequency);
942  std::complex<double> mkSpecificRefractivity_16o18o16o(double temperature,
943  double pressure,
944  double frequency);
945  std::complex<double> mkSpecificRefractivity_16o17o16o(double temperature,
946  double pressure,
947  double frequency);
948 
949  unsigned int vpIndex(double nu);
950  double linebroadening(double frequency,
951  double temperature,
952  double pressure,
953  double mmol,
954  double dv0_lines,
955  double texp_lines);
956  double linebroadening_water(double frequency,
957  double temperature,
958  double pressure,
959  double wvpressure,
960  double ensanche1,
961  double ensanche2,
962  double ensanche3,
963  double ensanche4);
964  double linebroadening_hh18o_hh17o(double temperature,
965  double pressure,
966  double ph2o,
967  double dv0,
968  double dvlm,
969  double temp_exp);
970  double linebroadening_o2(double frequency,
971  double temperature,
972  double pressure,
973  double ph2o,
974  double mmol,
975  double ensanche1,
976  double ensanche2);
977  double interf_o2(double temperature,
978  double pressure,
979  double ensanche3,
980  double ensanche4);
981  std::complex<double> lineshape(double frequency,
982  double linefreq,
983  double linebroad,
984  double interf);
985 
986 }; // class RefractiveIndex
987 
989 
990 #endif
std::complex< double > getSpecificRefractivity_n2o(double temperature, double pressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
#define ATM_NAMESPACE_END
Definition: ATMCommon.h:38
std::complex< double > getSpecificRefractivity_16o16o16o_v1(double temperature, double pressure, double frequency, double width, unsigned int n)
It returns with units for vibrationally excited (v1 state) (see definitions) The parameters are ...
std::complex< double > getSpecificRefractivity_16o18o16o(double temperature, double pressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o18o(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_no2(double temperature, double pressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o16o(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o16o(double temperature, double pressure, double wvpressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o16o16o_v3(double temperature, double pressure, double frequency, double width, unsigned int n)
It returns with units for vibrationally excited (v3 state) (see definitions) The parameters are ...
std::complex< double > mkSpecificRefractivity_hh16o(double temperature, double pressure, double wvpressure, double frequency)
std::complex< double > getRefractivity_16o16o16o_v3(double temperature, double pressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for vibrationally excited (v3 state) (see definitions) The parameters are ...
std::complex< double > mkSpecificRefractivity(unsigned int species, double temperature, double pressure, double frequency, double width, unsigned int n)
std::complex< double > getRefractivity(unsigned int species, double temperature, double pressure, double frequency, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
double interf_o2(double temperature, double pressure, double ensanche3, double ensanche4)
std::complex< double > getRefractivity_so2(double temperature, double pressure, double frequency, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_hdo(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_cntdry(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n)
It returns with units corresponding to the contribution of the &quot;dry&quot; collision induced ( ...
std::complex< double > getRefractivity_n2o(double temperature, double pressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_hh18o(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_16o16o(double temperature, double pressure, double wvpressure, double frequency, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_o3(double temperature, double pressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_co(double temperature, double pressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o16o18o(double temperature, double pressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > mkSpecificRefractivity_hh17o(double temperature, double pressure, double wvpressure, double frequency)
std::complex< double > getRefractivity_16o16o_vib(double temperature, double pressure, double wvpressure, double frequency, double numberdensity)
It returns with units for the first vibrationally excited state of (see definitions) The paramet...
std::complex< double > getRefractivity_16o16o16o(double temperature, double pressure, double frequency, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_no2(double temperature, double pressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
double linebroadening_water(double frequency, double temperature, double pressure, double wvpressure, double ensanche1, double ensanche2, double ensanche3, double ensanche4)
std::complex< double > getRefractivity_16o16o16o_v1(double temperature, double pressure, double frequency, double numberdensity)
It returns with units for vibrationally excited (v1 state) (see definitions) The parameters are ...
std::complex< double > getSpecificRefractivity_16o16o16o(double temperature, double pressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_so2(double temperature, double pressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o17o(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
RefractiveIndex()
The constructor has no arguments.
std::complex< double > mkSpecificRefractivity_cnth2o(double temperature, double pressure, double wvpressure, double frequency)
std::complex< double > getRefractivity_16o16o16o(double temperature, double pressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > mkSpecificRefractivity_16o16o16o_v1(double temperature, double pressure, double frequency)
std::complex< double > getSpecificRefractivity_cnth2o(double temperature, double pressure, double wvpressure, double frequency)
It returns with units corresponding to the contribution of the &quot;wet&quot; collision induced ( and ) pro...
std::complex< double > mkSpecificRefractivity_co(double temperature, double pressure, double frequency)
std::complex< double > getSpecificRefractivity(unsigned int species, double temperature, double pressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_no2(double temperature, double pressure, double frequency, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o16o17o(double temperature, double pressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o16o18o(double temperature, double pressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_no2(double temperature, double pressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o17o(double temperature, double pressure, double wvpressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o16o_vib(double temperature, double pressure, double wvpressure, double frequency)
It returns with units for the first vibrationally excited state of (see definitions) The paramet...
double linebroadening_hh18o_hh17o(double temperature, double pressure, double ph2o, double dv0, double dvlm, double temp_exp)
std::complex< double > getRefractivity_16o16o16o_v3(double temperature, double pressure, double frequency, double numberdensity)
It returns with units for vibrationally excited (v3 state) (see definitions) The parameters are ...
std::complex< double > mkSpecificRefractivity(unsigned int species, double temperature, double pressure, double wvpressure, double frequency)
std::complex< double > mkSpecificRefractivity_16o18o(double temperature, double pressure, double wvpressure, double frequency)
std::complex< double > getSpecificRefractivity_16o16o16o_v3(double temperature, double pressure, double frequency)
It returns with units for vibrationally excited (v3 state) (see definitions) The parameters are ...
std::complex< double > getRefractivity_h2o(double temperature, double pressure, double wvpressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_16o16o17o(double temperature, double pressure, double frequency, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_co(double temperature, double pressure, double frequency, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_16o18o16o(double temperature, double pressure, double frequency, double width, unsigned int n, double numberdensity)
It returns \form#101 with units \form#102 for (see definitions) The parameters are temperature i...
std::complex< double > mkSpecificRefractivity_no2(double temperature, double pressure, double frequency)
std::complex< double > getSpecificRefractivity_hh16o(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_hh16o_v2(double temperature, double pressure, double wvpressure, double frequency)
It returns with units for the v2 vibrational state of (see definitions) The parameters are tempe...
#define ATM_NAMESPACE_BEGIN
Definition: ATMCommon.h:37
std::complex< double > getRefractivity_16o18o(double temperature, double pressure, double wvpressure, double frequency, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_hh16o_v2(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n)
It returns with units for the v2 vibrational state of (see definitions) The parameters are tempe...
double linebroadening_o2(double frequency, double temperature, double pressure, double ph2o, double mmol, double ensanche1, double ensanche2)
std::complex< double > mkSpecificRefractivity_16o18o16o(double temperature, double pressure, double frequency)
std::complex< double > getRefractivity_16o16o16o_v1(double temperature, double pressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for vibrationally excited (v1 state) (see definitions) The parameters are ...
std::complex< double > mkSpecificRefractivity_hh16o_v2(double temperature, double pressure, double wvpressure, double frequency)
std::complex< double > mkSpecificRefractivity_16o16o17o(double temperature, double pressure, double frequency)
std::complex< double > mkSpecificRefractivity_cntdry(double temperature, double pressure, double wvpressure, double frequency)
std::complex< double > getRefractivity_16o16o16o_v2(double temperature, double pressure, double frequency, double numberdensity)
It returns with units for vibrationally excited (v2 state) (see definitions) The parameters are ...
std::complex< double > getSpecificRefractivity_cntdry(double temperature, double pressure, double wvpressure, double frequency)
It returns with units corresponding to the contribution of the &quot;dry&quot; collision induced ( ...
std::complex< double > getRefractivity_16o18o(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > mkSpecificRefractivity_16o16o_vib(double temperature, double pressure, double wvpressure, double frequency)
std::complex< double > getSpecificRefractivity_16o16o16o(double temperature, double pressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_co(double temperature, double pressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_o2(double temperature, double pressure, double wvpressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o18o(double temperature, double pressure, double wvpressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
unsigned int vpIndex(double nu)
std::complex< double > getSpecificRefractivity_hdo(double temperature, double pressure, double wvpressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o17o16o(double temperature, double pressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o16o16o_v1(double temperature, double pressure, double frequency)
It returns with units for vibrationally excited (v1 state) (see definitions) The parameters are ...
std::complex< double > getSpecificRefractivity_hh17o(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_co(double temperature, double pressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > mkSpecificRefractivity_16o16o18o(double temperature, double pressure, double frequency)
static const double mmol
Definition: ATMConstants.h:61
std::complex< double > getSpecificRefractivity_16o18o16o(double temperature, double pressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o16o17o(double temperature, double pressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > mkSpecificRefractivity_hh18o(double temperature, double pressure, double wvpressure, double frequency)
std::complex< double > getRefractivity_16o16o16o_v2(double temperature, double pressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for vibrationally excited (v2 state) (see definitions) The parameters are ...
std::complex< double > getSpecificRefractivity_hh17o(double temperature, double pressure, double wvpressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > mkSpecificRefractivity_16o16o16o(double temperature, double pressure, double frequency)
RefractiveIndex allows to extract absorption and Phase coefficient(s) at a given frequency and P/T/ga...
std::complex< double > getRefractivity_16o17o16o(double temperature, double pressure, double frequency, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_16o17o16o(double temperature, double pressure, double frequency, double width, unsigned int n, double numberdensity)
It returns \form#101 with units \form#102 for (see definitions) The parameters are temperature i...
std::complex< double > mkSpecificRefractivity_16o16o(double temperature, double pressure, double wvpressure, double frequency)
std::complex< double > getRefractivity_16o17o(double temperature, double pressure, double wvpressure, double frequency, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_16o16o18o(double temperature, double pressure, double frequency, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_16o16o18o(double temperature, double pressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > mkSpecificRefractivity_16o17o16o(double temperature, double pressure, double frequency)
std::complex< double > getRefractivity_16o17o(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > mkSpecificRefractivity_hdo(double temperature, double pressure, double frequency)
std::complex< double > getSpecificRefractivity_cnth2o(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n)
It returns with units corresponding to the contribution of the &quot;wet&quot; collision induced ( and ) pro...
double linebroadening(double frequency, double temperature, double pressure, double mmol, double dv0_lines, double texp_lines)
std::complex< double > getSpecificRefractivity_16o16o16o_v2(double temperature, double pressure, double frequency)
It returns with units for vibrationally excited (v2 state) (see definitions) The parameters are ...
std::complex< double > mkSpecificRefractivity_n2o(double temperature, double pressure, double frequency)
std::complex< double > mkSpecificRefractivity_so2(double temperature, double pressure, double frequency)
std::complex< double > mkSpecificRefractivity_16o16o16o_v3(double temperature, double pressure, double frequency)
std::complex< double > getRefractivity_so2(double temperature, double pressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_16o18o16o(double temperature, double pressure, double frequency, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_16o16o(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_o3(double temperature, double pressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_n2o(double temperature, double pressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_hh16o(double temperature, double pressure, double wvpressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getRefractivity_16o16o_vib(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for the first vibrationally excited state of (see definitions) The paramet...
std::complex< double > getRefractivity_o3(double temperature, double pressure, double frequency, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o17o16o(double temperature, double pressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > mkSpecificRefractivity_16o17o(double temperature, double pressure, double wvpressure, double frequency)
std::complex< double > mkSpecificRefractivity_16o16o16o_v2(double temperature, double pressure, double frequency)
std::complex< double > getSpecificRefractivity_16o16o16o_v2(double temperature, double pressure, double frequency, double width, unsigned int n)
It returns with units for vibrationally excited (v2 state) (see definitions) The parameters are ...
std::complex< double > getRefractivity_n2o(double temperature, double pressure, double frequency, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > mkSpecificRefractivity(unsigned int species, double temperature, double pressure, double frequency)
virtual ~RefractiveIndex()
std::complex< double > getRefractivity_16o16o17o(double temperature, double pressure, double frequency, double width, unsigned int n, double numberdensity)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_16o16o_vib(double temperature, double pressure, double wvpressure, double frequency, double width, unsigned int n)
It returns with units for the first vibrationally excited state of (see definitions) The paramet...
std::complex< double > lineshape(double frequency, double linefreq, double linebroad, double interf)
std::complex< double > getSpecificRefractivity_so2(double temperature, double pressure, double frequency, double width, unsigned int n)
It returns with units for (see definitions) The parameters are temperature in K...
std::complex< double > getSpecificRefractivity_hh18o(double temperature, double pressure, double wvpressure, double frequency)
It returns with units for (see definitions) The parameters are temperature in K...