ARTS  2.3.1285(git:92a29ea9-dirty)
sensor.h
Go to the documentation of this file.
1 /* Copyright (C) 2003-2012 Mattias Ekström <ekstrom@rss.chalmers.se>
2 
3  This program is free software; you can redistribute it and/or modify it
4  under the terms of the GNU General Public License as published by the
5  Free Software Foundation; either version 2, or (at your option) any
6  later version.
7 
8  This program is distributed in the hope that it will be useful,
9  but WITHOUT ANY WARRANTY; without even the implied warranty of
10  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  GNU General Public License for more details.
12 
13  You should have received a copy of the GNU General Public License
14  along with this program; if not, write to the Free Software
15  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
16  USA. */
17 
18 /*===========================================================================
19  === File description
20  ===========================================================================*/
21 
33 #ifndef sensor_h
34 #define sensor_h
35 
36 #include "arts.h"
37 #include "gridded_fields.h"
38 #include "interpolation.h"
39 #include "math_funcs.h"
40 #include "matpackI.h"
41 #include "matpackII.h"
42 #include "messages.h"
43 
44 /*===========================================================================
45  === Functions from sensor.cc
46  ===========================================================================*/
47 
49 
68 void antenna1d_matrix(Sparse& H,
69  const Index& antenna_dim,
70  ConstVectorView antenna_dza,
71  const GriddedField4& antenna_response,
72  ConstVectorView za_grid,
73  ConstVectorView f_grid,
74  const Index n_pol,
75  const Index do_norm);
76 
77 
78 
80 
98  const Index& antenna_dim,
99  ConstMatrixView antenna_dlos,
100  const GriddedField4& antenna_response,
101  ConstMatrixView mblock_dlos,
102  ConstVectorView f_grid,
103  const Index n_pol);
104 
105 
106 
108 
127  const Index& antenna_dim,
128  ConstMatrixView antenna_dlos,
129  const GriddedField4& antenna_response,
130  ConstMatrixView mblock_dlos,
131  ConstVectorView f_grid,
132  const Index n_pol);
133 
134 
136 
161  Vector& y,
162  const Numeric& x0,
163  const Numeric& fwhm,
164  const Numeric& xwidth_si,
165  const Numeric& dx_si);
166 
167 
169 
183 void gaussian_response(Vector& y,
184  const Vector& x,
185  const Numeric& x0,
186  const Numeric& fwhm);
187 
188 
190 
215 void mixer_matrix(Sparse& H,
216  Vector& f_mixer,
217  const Numeric& lo,
218  const GriddedField1& filter,
219  ConstVectorView f_grid,
220  const Index& n_pol,
221  const Index& n_sp,
222  const Index& do_norm);
223 
224 
225 
227 
248 void mueller_rotation(Sparse& H,
249  const Index& stokes_dim,
250  const Numeric& rotangle);
251 
252 
253 
265  const ArrayOfString& pol,
266  const Numeric dza,
267  const Index stokes_dim,
268  const String& iy_unit);
269 
270 
271 
273 
290 void sensor_aux_vectors(Vector& sensor_response_f,
291  ArrayOfIndex& sensor_response_pol,
292  Matrix& sensor_response_dlos,
293  ConstVectorView sensor_response_f_grid,
294  const ArrayOfIndex& sensor_response_pol_grid,
295  ConstMatrixView sensor_response_dlos_grid);
296 
297 
298 
300 
319  ConstVectorView ch_f,
320  const ArrayOfGriddedField1& ch_response,
321  ConstVectorView sensor_f,
322  const Index& n_pol,
323  const Index& n_sp,
324  const Index& do_norm);
325 
326 
327 
329 
348 void stokes2pol(VectorView w,
349  const Index& stokes_dim,
350  const Index& ipol_1based,
351  const Numeric nv = 1);
352 
353 
354 
356 
380 void find_effective_channel_boundaries( // Output:
381  Vector& fmin,
382  Vector& fmax,
383  // Input:
384  const Vector& f_backend,
385  const ArrayOfGriddedField1& backend_channel_response,
386  const Numeric& delta,
387  const Verbosity& verbosity);
388 
389 
390 
392 
416  ConstVectorView f,
417  ConstVectorView x_f_in,
418  ConstVectorView x_g_in);
419 
420 
421 
423 
445  ConstVectorView x_g_in,
446  const Numeric& limit1,
447  const Numeric& limit2);
448 
449 
451 
478  ConstVectorView f,
479  ConstVectorView x_f,
480  ConstVectorView x_g,
481  const Numeric x1,
482  const Numeric x2);
483 
484 #endif // sensor_h
INDEX Index
The type to use for all integer numbers and indices.
Definition: matpack.h:39
The VectorView class.
Definition: matpackI.h:610
#define x2
void stokes2pol(VectorView w, const Index &stokes_dim, const Index &ipol_1based, const Numeric nv=1)
stokes2pol
Definition: sensor.cc:1041
#define x0
Declarations having to do with the four output streams.
The Vector class.
Definition: matpackI.h:860
The Sparse class.
Definition: matpackII.h:60
cmplx FADDEEVA() w(cmplx z, double relerr)
Definition: Faddeeva.cc:680
void antenna1d_matrix(Sparse &H, const Index &antenna_dim, ConstVectorView antenna_dza, const GriddedField4 &antenna_response, ConstVectorView za_grid, ConstVectorView f_grid, const Index n_pol, const Index do_norm)
antenna1d_matrix
Definition: sensor.cc:58
Header file for interpolation.cc.
void gaussian_response_autogrid(Vector &x, Vector &y, const Numeric &x0, const Numeric &fwhm, const Numeric &xwidth_si, const Numeric &dx_si)
gaussian_response_autogrid
Definition: sensor.cc:606
void integration_bin_by_vecmult(VectorView h, ConstVectorView x_g_in, const Numeric &limit1, const Numeric &limit2)
integration_bin_by_vecmult
Definition: sensor.cc:1503
#define x1
void met_mm_polarisation_hmatrix(Sparse &H, const ArrayOfString &pol, const Numeric dza, const Index stokes_dim, const String &iy_unit)
Calculate polarisation H-matrix.
Definition: sensor.cc:775
The global header file for ARTS.
Header file for sparse matrices.
void spectrometer_matrix(Sparse &H, ConstVectorView ch_f, const ArrayOfGriddedField1 &ch_response, ConstVectorView sensor_f, const Index &n_pol, const Index &n_sp, const Index &do_norm)
spectrometer_matrix
Definition: sensor.cc:975
void integration_func_by_vecmult(VectorView h, ConstVectorView f, ConstVectorView x_f_in, ConstVectorView x_g_in)
integration_func_by_vecmult
Definition: sensor.cc:1361
NUMERIC Numeric
The type to use for all floating point numbers.
Definition: matpack.h:33
The Matrix class.
Definition: matpackI.h:1193
Implementation of Matrix, Vector, and such stuff.
void sensor_aux_vectors(Vector &sensor_response_f, ArrayOfIndex &sensor_response_pol, Matrix &sensor_response_dlos, ConstVectorView sensor_response_f_grid, const ArrayOfIndex &sensor_response_pol_grid, ConstMatrixView sensor_response_dlos_grid)
sensor_aux_vectors
Definition: sensor.cc:938
This can be used to make arrays out of anything.
Definition: array.h:40
void antenna2d_interp_response(Sparse &H, const Index &antenna_dim, ConstMatrixView antenna_dlos, const GriddedField4 &antenna_response, ConstMatrixView mblock_dlos, ConstVectorView f_grid, const Index n_pol)
antenna2d_interp_response
Definition: sensor.cc:442
void mixer_matrix(Sparse &H, Vector &f_mixer, const Numeric &lo, const GriddedField1 &filter, ConstVectorView f_grid, const Index &n_pol, const Index &n_sp, const Index &do_norm)
mixer_matrix
Definition: sensor.cc:645
void gaussian_response(Vector &y, const Vector &x, const Numeric &x0, const Numeric &fwhm)
gaussian_response
Definition: sensor.cc:629
void mueller_rotation(Sparse &H, const Index &stokes_dim, const Numeric &rotangle)
mueller_rotation
Definition: sensor.cc:745
A constant view of a Vector.
Definition: matpackI.h:476
void summation_by_vecmult(VectorView h, ConstVectorView f, ConstVectorView x_f, ConstVectorView x_g, const Numeric x1, const Numeric x2)
summation_by_vecmult
Definition: sensor.cc:1607
A constant view of a Matrix.
Definition: matpackI.h:982
void find_effective_channel_boundaries(Vector &fmin, Vector &fmax, const Vector &f_backend, const ArrayOfGriddedField1 &backend_channel_response, const Numeric &delta, const Verbosity &verbosity)
Calculate channel boundaries from instrument response functions.
Definition: sensor.cc:1152
Implementation of gridded fields.
void antenna2d_gridded_dlos(Sparse &H, const Index &antenna_dim, ConstMatrixView antenna_dlos, const GriddedField4 &antenna_response, ConstMatrixView mblock_dlos, ConstVectorView f_grid, const Index n_pol)
antenna2d_interp_gridded_dlos
Definition: sensor.cc:199