ARTS  1.0.222
atm_funcs.h
Go to the documentation of this file.
1 /* Copyright (C) 2000, 2001 Patrick Eriksson <patrick@rss.chalmers.se>
2  Stefan Buehler <sbuehler@uni-bremen.de>
3 
4  This program is free software; you can redistribute it and/or modify it
5  under the terms of the GNU General Public License as published by the
6  Free Software Foundation; either version 2, or (at your option) any
7  later version.
8 
9  This program is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  GNU General Public License for more details.
13 
14  You should have received a copy of the GNU General Public License
15  along with this program; if not, write to the Free Software
16  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
17  USA. */
18 
19 
20 
22 // File description
24 
35 #ifndef atmfuncs_h
36 #define atmfuncs_h
37 
38 
39 #include "matpackI.h"
40 
41 
42 
44 // Physical functions
46 
47 void planck (
48  MatrixView B,
50  ConstVectorView t );
51 
52 void planck (
53  VectorView B,
55  const Numeric t );
56 
57 void invplanck (
58  VectorView y,
60  ConstVectorView za );
61 
62 void invrayjean (
63  VectorView y,
65  ConstVectorView za );
66 
68  const Numeric p,
69  const Numeric t );
70 
73  ConstVectorView t );
74 
76  const Numeric r_geoid,
77  const Numeric g0,
78  const Numeric z );
79 
80 Numeric g_of_lat (const Numeric latitude);
81 
82 
84 // Core functions for RTE and BL
86 
87 void rte_iterate (
88  VectorView y,
89  const Index start_index,
90  const Index stop_index,
91  ConstMatrixView Tr,
93  const Index n_f );
94 
95 void rte (
96  VectorView y,
97  const Index start_index,
98  const Index stop_index,
99  ConstMatrixView Tr,
100  ConstMatrixView S,
101  ConstVectorView y_space,
102  const Index ground,
103  ConstVectorView e_ground,
104  ConstVectorView y_ground );
105 
106 void bl_iterate (
107  VectorView y,
108  const Index start_index,
109  const Index stop_index,
110  ConstMatrixView Tr,
111  const Index n_f );
112 
113 void bl (
114  Vector& y,
115  const Index start_index,
116  const Index stop_index,
117  ConstMatrixView Tr,
118  const Index ground,
119  ConstVectorView e_ground );
120 
121 
122 
124 // Conversion and interpolation of pressure and altitude grids.
126 
127 void z2p(
128  VectorView p,
129  ConstVectorView z0,
130  ConstVectorView p0,
131  ConstVectorView z );
132 
133 void interpp(
134  VectorView x,
135  ConstVectorView p0,
136  ConstVectorView x0,
137  ConstVectorView p );
138 
139 void interpp_cloud(
140  VectorView x,
141  ConstVectorView p0,
142  ConstVectorView x0,
143  ConstVectorView p );
144 
145 void interpp(
146  MatrixView A,
147  ConstVectorView p0,
148  ConstMatrixView A0,
149  ConstVectorView p );
150 
152  ConstVectorView p0,
153  ConstVectorView x0,
154  const Numeric p );
155 
156 void interpz(
157  VectorView x,
158  ConstVectorView p0,
159  ConstVectorView z0,
160  ConstVectorView x0,
161  ConstVectorView z );
162 
164  ConstVectorView p0,
165  ConstVectorView z0,
166  ConstVectorView x0,
167  const Numeric z );
168 
169 
170 
172 // Tangent altitudes
174 
176  const Numeric za,
177  const Numeric z_plat,
178  const Numeric r_geoid );
179 
181  const Numeric z,
182  ConstVectorView p_abs,
183  ConstVectorView z_abs,
184  ConstVectorView refr_index,
185  const Numeric atm_limit );
186 
188  const Numeric r_geoid,
189  const Numeric za,
190  const Numeric z_plat,
191  ConstVectorView p_abs,
192  ConstVectorView z_abs,
193  const Numeric atm_limit,
194  ConstVectorView refr_index );
195 
197  const Numeric c,
198  const Numeric za,
199  const Numeric z_plat,
200  const Numeric z_ground,
201  ConstVectorView p_abs,
202  ConstVectorView z_abs,
203  ConstVectorView refr_index,
204  const Numeric r_geoid );
205 
206 void e_eq_water( VectorView e_eq,
207  ConstVectorView t );
208 
209 void e_eq_ice( VectorView e_eq,
210  ConstVectorView t );
211 
212 #endif // atmfuncs_h
MatrixView
The MatrixView class.
Definition: matpackI.h:476
g_of_lat
Numeric g_of_lat(const Numeric latitude)
Calculates the gravitational accelaration for a geocentric latitude.
Definition: atm_funcs.cc:340
interpz
void interpz(VectorView x, ConstVectorView p0, ConstVectorView z0, ConstVectorView x0, ConstVectorView z)
Interpolates a vertical profile at a new set of vertical altitudes.
Definition: atm_funcs.cc:774
n_for_z
Numeric n_for_z(const Numeric z, ConstVectorView p_abs, ConstVectorView z_abs, ConstVectorView refr_index, const Numeric atm_limit)
Returns the refractive index for a vertical altitude.
Definition: atm_funcs.cc:871
matpackI.h
invrayjean
void invrayjean(VectorView y, ConstVectorView f, ConstVectorView za)
Converts a vector with radiances to Rayleigh-Jean brightness temperatures.
Definition: atm_funcs.cc:202
interpp
void interpp(VectorView x, ConstVectorView p0, ConstVectorView x0, ConstVectorView p)
Interpolates a vertical profile at a new set of pressures.
Definition: atm_funcs.cc:658
refr_constant
Numeric refr_constant(const Numeric r_geoid, const Numeric za, const Numeric z_plat, ConstVectorView p_abs, ConstVectorView z_abs, const Numeric atm_limit, ConstVectorView refr_index)
Determines the constant for a refractive LOS.
Definition: atm_funcs.cc:908
e_eq_water
void e_eq_water(VectorView e_eq, ConstVectorView t)
Calculates the equilibrium water vapor pressure over liquid water.
Definition: atm_funcs.cc:998
Numeric
NUMERIC Numeric
The type to use for all floating point numbers.
Definition: arts.h:147
VectorView
The VectorView class.
Definition: matpackI.h:281
interpp_cloud
void interpp_cloud(VectorView x, ConstVectorView p0, ConstVectorView x0, ConstVectorView p)
Definition: atm_funcs.cc:675
rte_iterate
void rte_iterate(VectorView y, const Index start_index, const Index stop_index, ConstMatrixView Tr, ConstMatrixView S, const Index n_f)
Performs a single iteration for RTE calculations (one zenith angle).
Definition: atm_funcs.cc:386
ConstMatrixView
A constant view of a Matrix.
Definition: matpackI.h:426
z2p
void z2p(VectorView p, ConstVectorView z0, ConstVectorView p0, ConstVectorView z)
Converts an altitude vector to pressures.
Definition: atm_funcs.cc:621
bl
void bl(Vector &y, const Index start_index, const Index stop_index, ConstMatrixView Tr, const Index ground, ConstVectorView e_ground)
Performs the BL (transmission) calculations for one zenith angle.
Definition: atm_funcs.cc:560
Index
INDEX Index
The type to use for all integer numbers and indices.
Definition: arts.h:153
ztan_geom
Numeric ztan_geom(const Numeric za, const Numeric z_plat, const Numeric r_geoid)
Calculates the geometrical tangent altitude (no refraction).
Definition: atm_funcs.cc:839
bl_iterate
void bl_iterate(VectorView y, const Index start_index, const Index stop_index, ConstMatrixView Tr, const Index n_f)
Performs a single iteration for BL calculations (one zenith angle).
Definition: atm_funcs.cc:518
number_density
Numeric number_density(const Numeric p, const Numeric t)
Calculates the number density (scalar version).
Definition: atm_funcs.cc:270
planck
void planck(MatrixView B, ConstVectorView f, ConstVectorView t)
Calculates a blackbody radiation (the Planck function) matrix.
Definition: atm_funcs.cc:75
e_eq_ice
void e_eq_ice(VectorView e_eq, ConstVectorView t)
Calculates the equilibrium water vapor pressure over ice.
Definition: atm_funcs.cc:1038
Vector
The Vector class.
Definition: matpackI.h:389
rte
void rte(VectorView y, const Index start_index, const Index stop_index, ConstMatrixView Tr, ConstMatrixView S, ConstVectorView y_space, const Index ground, ConstVectorView e_ground, ConstVectorView y_ground)
Performs the RTE calculations for one zenith angle.
Definition: atm_funcs.cc:433
ConstVectorView
A constant view of a Vector.
Definition: matpackI.h:232
ztan_refr
Numeric ztan_refr(const Numeric c, const Numeric za, const Numeric z_plat, const Numeric z_ground, ConstVectorView p_abs, ConstVectorView z_abs, ConstVectorView refr_index, const Numeric r_geoid)
Calculates the tangent altitude with refraction.
Definition: atm_funcs.cc:940
invplanck
void invplanck(VectorView y, ConstVectorView f, ConstVectorView za)
Converts a vector with radiances to Plack brightness temperatures.
Definition: atm_funcs.cc:145
g_of_z
Numeric g_of_z(const Numeric r_geoid, const Numeric g0, const Numeric z)
Calculates the gravitational accelaration for a geometrical altitude.
Definition: atm_funcs.cc:322