ARTS  2.3.1285(git:92a29ea9-dirty)
physics_funcs.h
Go to the documentation of this file.
1 /* Copyright (C) 2002-2012
2  Patrick Eriksson <Patrick.Eriksson@chalmers.se>
3  Stefan Buehler <sbuehler@ltu.se>
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 
28 #ifndef physics_h
29 #define physics_h
30 
31 /*===========================================================================
32  === External declarations
33  ===========================================================================*/
34 
35 #include "arts.h"
36 #include "complex.h"
37 #include "matpackI.h"
38 
39 /*===========================================================================
40  === Functions in physics_funcs.h
41  ===========================================================================*/
42 
43 Numeric barometric_heightformula(const Numeric& p, const Numeric& dh);
44 
45 Numeric dinvplanckdI(const Numeric& i, const Numeric& f);
46 
47 void fresnel(Complex& Rv,
48  Complex& Rh,
49  const Complex& n1,
50  const Complex& n2,
51  const Numeric& theta);
52 
53 Numeric invplanck(const Numeric& i, const Numeric& f);
54 
55 Numeric invrayjean(const Numeric& i, const Numeric& f);
56 
57 Numeric number_density(const Numeric& p, const Numeric& t);
58 
59 Numeric dnumber_density_dt(const Numeric& p, const Numeric& t);
60 
61 Numeric planck(const Numeric& f, const Numeric& t);
62 
63 void planck(VectorView b, ConstVectorView f, const Numeric& t);
64 
65 Numeric dplanck_dt(const Numeric& f, const Numeric& t);
66 
67 void dplanck_dt(VectorView b, ConstVectorView f, const Numeric& t);
68 
69 Numeric dplanck_df(const Numeric& f, const Numeric& t);
70 
71 Numeric rayjean(const Numeric& f, const Numeric& t);
72 
73 #ifdef ENABLE_REFICE
74 extern "C" {
75 #endif
76 
107 Complex refice_(const Numeric& wavlen, const Numeric& temp);
108 #ifdef ENABLE_REFICE
109 }
110 #endif
111 
112 #endif // physics_h
The VectorView class.
Definition: matpackI.h:610
Complex refice_(const Numeric &wavlen, const Numeric &temp)
Calculates complex refractive index of Ice 1H.
A class implementing complex numbers for ARTS.
Numeric dinvplanckdI(const Numeric &i, const Numeric &f)
dinvplanckdI
Numeric planck(const Numeric &f, const Numeric &t)
planck
The global header file for ARTS.
std::complex< Numeric > Complex
Definition: complex.h:33
#define temp
NUMERIC Numeric
The type to use for all floating point numbers.
Definition: matpack.h:33
Implementation of Matrix, Vector, and such stuff.
Numeric invplanck(const Numeric &i, const Numeric &f)
invplanck
Numeric dplanck_df(const Numeric &f, const Numeric &t)
dplanck_df
Numeric dnumber_density_dt(const Numeric &p, const Numeric &t)
dnumber_density_dT
Numeric invrayjean(const Numeric &i, const Numeric &f)
invrayjean
A constant view of a Vector.
Definition: matpackI.h:476
Numeric dplanck_dt(const Numeric &f, const Numeric &t)
dplanck_dt
Numeric barometric_heightformula(const Numeric &p, const Numeric &dh)
barometric_heightformula
void fresnel(Complex &Rv, Complex &Rh, const Complex &n1, const Complex &n2, const Numeric &theta)
fresnel
Numeric number_density(const Numeric &p, const Numeric &t)
number_density
Numeric rayjean(const Numeric &f, const Numeric &t)
rayjean