m_los.cc File Reference

This file contains functions associated with 1D line-of-sight (LOS) calculations. More...

#include <cmath>
#include "arts.h"
#include "atm_funcs.h"
#include "complex.h"
#include "matpackI.h"
#include "los.h"
#include "math_funcs.h"
#include "messages.h"
#include "auto_wsv.h"
#include "auto_md.h"

Go to the source code of this file.

Functions

bool any_ground (const ArrayOfIndex &ground)
 Checks if any of the pencil beam spectra corresponds to a ground reflection.
void los_geometric (Vector &z, Vector &psi, Numeric &l_step, const Numeric &z_plat, const Numeric &za, const Numeric &atm_limit, const Numeric &r_geoid)
 Core function for geometric LOS calculations.
void los_refraction (Vector &z, Vector &psi, Numeric &l_step, const Numeric &z_plat, const Numeric &za, const Numeric &atm_limit, const Numeric &r_geoid, const Vector &, const Vector &z_abs, const Index &, const Index &refr_lfac, const Vector &refr_index, const Numeric &c)
 Core function for LOS calculations with refraction.
void los_1za (Vector &z, Vector &psi, Numeric &l_step, Index &ground, Index &start, Index &stop, Numeric &z_tan, const Numeric &z_plat, const Numeric &za, const Numeric &l_step_max, const Numeric &z_ground, const Numeric &r_geoid, const Vector &p_abs, const Vector &z_abs, const Index &refr, const Index &refr_lfac, const Vector &refr_index)
 Performs the LOS calculations for one zenith angle.
void y_rte (Vector &y, const Los &los, ConstVectorView f_mono, ConstVectorView y_space, const ArrayOfMatrix &source, const ArrayOfMatrix &trans, ConstVectorView e_ground, const Numeric &t_ground, const Index &z_start, const Index &z_end)
void y_tau (Vector &y, const Los &los, const ArrayOfMatrix &trans, ConstVectorView e_ground, const Index &z_start, const Index &z_end)
void r_geoidStd (Numeric &r_geoid)
 See the the online help (arts -d FUNCTION_NAME).
void r_geoidWGS84 (Numeric &r_geoid, const Numeric &latitude, const Numeric &obsdirection)
 See the the online help (arts -d FUNCTION_NAME).
void groundOff (Numeric &z_ground, Numeric &t_ground, Vector &e_ground, const Vector &z_abs)
 See the the online help (arts -d FUNCTION_NAME).
void groundSet (Numeric &z_ground, Numeric &t_ground, Vector &e_ground, const Vector &p_abs, const Vector &t_abs, const Vector &z_abs, const Vector &f_mono, const Numeric &z, const Numeric &e)
 See the the online help (arts -d FUNCTION_NAME).
void groundAtBottom (Numeric &z_ground, Numeric &t_ground, Vector &e_ground, const Vector &t_abs, const Vector &z_abs, const Vector &f_mono, const Numeric &e)
 See the the online help (arts -d FUNCTION_NAME).
void groundFlatSea (Numeric &z_ground, Numeric &t_ground, Vector &e_ground, const Vector &p_abs, const Vector &t_abs, const Vector &z_abs, const Vector &f_mono, const Vector &za_pencil, const Numeric &z_plat, const Numeric &r_geoid, const Index &refr, const Vector &refr_index, const String &pol, const Numeric &t_skin)
 See the the online help (arts -d FUNCTION_NAME).
void emissionOn (Index &emission)
 See the the online help (arts -d FUNCTION_NAME).
void emissionOff (Index &emission)
 See the the online help (arts -d FUNCTION_NAME).
void losCalc (Los &los, Vector &z_tan, const Numeric &z_plat, const Vector &za, const Numeric &l_step, const Vector &p_abs, const Vector &z_abs, const Index &refr, const Index &refr_lfac, const Vector &refr_index, const Numeric &z_ground, const Numeric &r_geoid)
 See the the online help (arts -d FUNCTION_NAME).
void zaFromZtan (Vector &za, const String &, const Vector &z_tan, const Numeric &z_plat, const Vector &p_abs, const Vector &z_abs, const Index &refr, const Vector &refr_index, const Numeric &r_geoid, const Numeric &z_ground)
 See the the online help (arts -d FUNCTION_NAME).
void zaFromDeltat (Vector &za, const String &, const Numeric &z_plat, const Vector &p_abs, const Vector &z_abs, const Numeric &l_step, const Index &refr, const Index &refr_lfac, const Vector &refr_index, const Numeric &r_geoid, const Numeric &z_ground, const Numeric &delta_t, const Vector &z_tan_lim)
 See the the online help (arts -d FUNCTION_NAME).
void sourceCalc (ArrayOfMatrix &source, const Index &emission, const Los &los, const Vector &p_abs, const Vector &t_abs, const Vector &f_mono)
 See the the online help (arts -d FUNCTION_NAME).
void transCalc (ArrayOfMatrix &trans, const Los &los, const Vector &p_abs, const Matrix &abs)
 See the the online help (arts -d FUNCTION_NAME).
void y_spaceStd (Vector &y_space, const Vector &f, const String &choice)
 See the the online help (arts -d FUNCTION_NAME).
void yCalc (Vector &y, const Index &emission, const Los &los, const Vector &f_mono, const Vector &y_space, const ArrayOfMatrix &source, const ArrayOfMatrix &trans, const Vector &e_ground, const Numeric &t_ground)
 See the the online help (arts -d FUNCTION_NAME).
void sourcetransyCalcSaveMemory (Vector &y, const Index &emission, const Los &los, const Vector &p_abs, const Vector &t_abs, const Vector &f_mono, const Matrix &abs, const Vector &y_space, const Vector &e_ground, const Numeric &t_ground, const Index &f_chunksize)
 See the the online help (arts -d FUNCTION_NAME).
void yTB (Vector &y, const Vector &f_mono, const Vector &za_pencil)
 See the the online help (arts -d FUNCTION_NAME).
void yTRJ (Vector &y, const Vector &f_mono, const Vector &za_pencil)
 See the the online help (arts -d FUNCTION_NAME).
void MatrixTRJ (Matrix &kout, const String &kout_name, const Vector &f_mono, const Vector &za_pencil, const Matrix &kin, const String &kin_name)
 Convert a matrix containing radiances to Rayleigh-Jeans BTs.
void MatrixTB (Matrix &kout, const String &kout_name, const Vector &f_mono, const Vector &za_pencil, const Matrix &kin, const String &kin_name)
 Convert a matrix containing radiances to Planck BTs.
void CoolingRates (Matrix &coolrate, const Numeric &lstep0, const Vector &p_abs, const Vector &z_abs, const Vector &t_abs, const Vector &f_mono, const Matrix &absorption, const Vector &za_pencil, const Index &refr, const Index &refr_lfac, const Vector &refr_index, const Numeric &r_geoid, const Numeric &z_ground, const Vector &e_ground, const Numeric &t_ground, const Vector &p_coolrate, const Numeric &lstep_limit)
 See the the online help (arts -d FUNCTION_NAME).

Variables

const Numeric PI
const Numeric DEG2RAD
const Numeric RAD2DEG
const Numeric COSMIC_BG_TEMP
const Numeric SUN_TEMP
const Numeric PLANCK_CONST
const Numeric BOLTZMAN_CONST
const Numeric SPEED_OF_LIGHT
const Numeric EARTH_GRAV_CONST
const Numeric AVOGADROS_NUMB


Detailed Description

This file contains functions associated with 1D line-of-sight (LOS) calculations.

Types of functions are:

1. determination of LOS 2. calculation of transmissions and source function along the LOS 3. solving the radiative transfer equation

Functions in this file assumes LTE and no scattering. The LOS is defined by a structure of type LOS, defined in los.h.

Author:
Patrick Eriksson
Date:
2000-09-14

Definition in file m_los.cc.


Function Documentation

bool any_ground ( const ArrayOfIndex ground  ) 

Checks if any of the pencil beam spectra corresponds to a ground reflection.

This function is most likely called as any_ground( los.ground )

Returns:
1 if any ground intersection, 0 otherwise
Parameters:
ground array of ground index/flag values
Author:
Patrick Eriksson
Date:
2000-12-12

Definition at line 86 of file m_los.cc.

void CoolingRates ( Matrix coolrate,
const Numeric lstep0,
const Vector p_abs,
const Vector z_abs,
const Vector t_abs,
const Vector f_mono,
const Matrix absorption,
const Vector za_pencil,
const Index refr,
const Index refr_lfac,
const Vector refr_index,
const Numeric r_geoid,
const Numeric z_ground,
const Vector e_ground,
const Numeric t_ground,
const Vector p_coolrate,
const Numeric lstep_limit 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2003-12-02

Definition at line 1732 of file m_los.cc.

void emissionOff ( Index emission  ) 

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2001-04-19

Definition at line 1045 of file m_los.cc.

void emissionOn ( Index emission  ) 

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2001-04-19

Definition at line 1033 of file m_los.cc.

void groundAtBottom ( Numeric z_ground,
Numeric t_ground,
Vector e_ground,
const Vector t_abs,
const Vector z_abs,
const Vector f_mono,
const Numeric e 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2001-04-19

Definition at line 905 of file m_los.cc.

void groundFlatSea ( Numeric z_ground,
Numeric t_ground,
Vector e_ground,
const Vector p_abs,
const Vector t_abs,
const Vector z_abs,
const Vector f_mono,
const Vector za_pencil,
const Numeric z_plat,
const Numeric r_geoid,
const Index refr,
const Vector refr_index,
const String pol,
const Numeric t_skin 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2004-04-23

Definition at line 929 of file m_los.cc.

void groundOff ( Numeric z_ground,
Numeric t_ground,
Vector e_ground,
const Vector z_abs 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2001-01-22

Definition at line 860 of file m_los.cc.

void groundSet ( Numeric z_ground,
Numeric t_ground,
Vector e_ground,
const Vector p_abs,
const Vector t_abs,
const Vector z_abs,
const Vector f_mono,
const Numeric z,
const Numeric e 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2001-04-19

Definition at line 879 of file m_los.cc.

void los_1za ( Vector z,
Vector psi,
Numeric l_step,
Index ground,
Index start,
Index stop,
Numeric z_tan,
const Numeric z_plat,
const Numeric za,
const Numeric l_step_max,
const Numeric z_ground,
const Numeric r_geoid,
const Vector p_abs,
const Vector z_abs,
const Index refr,
const Index refr_lfac,
const Vector refr_index 
)

Performs the LOS calculations for one zenith angle.

All observations geometries are handled.

Return values:
z vertical altitudes of the LOS points
psi the angle in the observation plane between the vectors going from the sensor and the LOS point, respectively, to the centre of the earth geoid.angle from the sensor of the LOS points
l_step distance along the LOS between the points
ground ground flag (0 = no ground intersection)
start start index when solving the RTE
stop stop index when solving the RTE
Parameters:
z_plat platform altitude
za zentith angles
l_step_max the user defined maximum step length along the LOS
atm_limit maximum altitude of the absorption grid
z_ground altitude of the ground (above the geoid)
r_geoid the local geoid radius
p_abs absorption pressure grid
z_abs absorption altitude grid
refr refraction flag
refr_lfac ray tracing length factor
refr_index refrective index corresponding to p_refr
Author:
Patrick Eriksson
Date:
2001-02-18

Definition at line 372 of file m_los.cc.

void los_geometric ( Vector z,
Vector psi,
Numeric l_step,
const Numeric z_plat,
const Numeric za,
const Numeric atm_limit,
const Numeric r_geoid 
)

Core function for geometric LOS calculations.

All observations geometries are handled. The variables za and z_plat shall be treated as the "zenith angle" and the vertical altitude of the lowest point of the LOS.

The variable l_step should be set to before calling this function. The value of this variable is normally untouched, but when the distance between the starting point and the atmsopheric limit is smaller than the given value, l_step is adjusted.

Return values:
z vertical altitudes of the LOS points
psi the angle in the observation plane between the vectors going from the sensor and the LOS point, respectively, to the centre of the earth geoid.angle from the sensor of the LOS points
l_step distance along the LOS between the points
Parameters:
z_plat platform altitude
za zentith angles
atm_limit maximum altitude of the absorption grid
r_geoid the local geoid radius
Author:
Patrick Eriksson
Date:
2001-02-15

Definition at line 126 of file m_los.cc.

void los_refraction ( Vector z,
Vector psi,
Numeric l_step,
const Numeric z_plat,
const Numeric za,
const Numeric atm_limit,
const Numeric r_geoid,
const Vector ,
const Vector z_abs,
const Index ,
const Index refr_lfac,
const Vector refr_index,
const Numeric c 
)

Core function for LOS calculations with refraction.

See further los_geometric.

Return values:
z vertical altitudes of the LOS points
psi the angle in the observation plane between the LOS points and the lowest point of the LOS
l_step distance along the LOS between the points
Parameters:
z_plat platform altitude
za zentith angles
atm_limit maximum altitude of the absorption grid
r_geoid the local geoid radius
p_abs absorption pressure grid
z_abs absorption altitude grid
refr refraction flag
refr_lfac ray tracing length factor
refr_index refrective index corresponding to p_refr
c constant for the LOS
Author:
Patrick Eriksson
Date:
2001-02-18

Definition at line 205 of file m_los.cc.

void losCalc ( Los los,
Vector z_tan,
const Numeric z_plat,
const Vector za,
const Numeric l_step,
const Vector p_abs,
const Vector z_abs,
const Index refr,
const Index refr_lfac,
const Vector refr_index,
const Numeric z_ground,
const Numeric r_geoid 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2001-02-15

Definition at line 1058 of file m_los.cc.

void MatrixTB ( Matrix kout,
const String kout_name,
const Vector f_mono,
const Vector za_pencil,
const Matrix kin,
const String kin_name 
)

Convert a matrix containing radiances to Planck BTs.

Author:
Stefan, Viju, Sreerekha
Date:
2001-05-02

Definition at line 1693 of file m_los.cc.

void MatrixTRJ ( Matrix kout,
const String kout_name,
const Vector f_mono,
const Vector za_pencil,
const Matrix kin,
const String kin_name 
)

Convert a matrix containing radiances to Rayleigh-Jeans BTs.

Author:
Stefan, Viju, Sreerekha
Date:
2001-05-02

Definition at line 1658 of file m_los.cc.

void r_geoidStd ( Numeric r_geoid  ) 

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2000-?-?

Definition at line 816 of file m_los.cc.

void r_geoidWGS84 ( Numeric r_geoid,
const Numeric latitude,
const Numeric obsdirection 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2000-?-?

Definition at line 829 of file m_los.cc.

void sourceCalc ( ArrayOfMatrix source,
const Index emission,
const Los los,
const Vector p_abs,
const Vector t_abs,
const Vector f_mono 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2000-?-?

Definition at line 1321 of file m_los.cc.

void sourcetransyCalcSaveMemory ( Vector y,
const Index emission,
const Los los,
const Vector p_abs,
const Vector t_abs,
const Vector f_mono,
const Matrix abs,
const Vector y_space,
const Vector e_ground,
const Numeric t_ground,
const Index f_chunksize 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Axel von Engeln and Oliver Lemke
Date:
2003-07-30

Definition at line 1522 of file m_los.cc.

void transCalc ( ArrayOfMatrix trans,
const Los los,
const Vector p_abs,
const Matrix abs 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2000-?-?

Definition at line 1390 of file m_los.cc.

void y_rte ( Vector y,
const Los los,
ConstVectorView  f_mono,
ConstVectorView  y_space,
const ArrayOfMatrix source,
const ArrayOfMatrix trans,
ConstVectorView  e_ground,
const Numeric t_ground,
const Index z_start,
const Index z_end 
)

Author:
Patrick Eriksson
Date:
2000-??-??

Definition at line 678 of file m_los.cc.

void y_spaceStd ( Vector y_space,
const Vector f,
const String choice 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2000-?-?

Definition at line 1446 of file m_los.cc.

void y_tau ( Vector y,
const Los los,
const ArrayOfMatrix trans,
ConstVectorView  e_ground,
const Index z_start,
const Index z_end 
)

Author:
Patrick Eriksson
Date:
2000-??-??

Definition at line 748 of file m_los.cc.

void yCalc ( Vector y,
const Index emission,
const Los los,
const Vector f_mono,
const Vector y_space,
const ArrayOfMatrix source,
const ArrayOfMatrix trans,
const Vector e_ground,
const Numeric t_ground 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2001-03-30

Definition at line 1483 of file m_los.cc.

void yTB ( Vector y,
const Vector f_mono,
const Vector za_pencil 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2000-08-31

Definition at line 1624 of file m_los.cc.

void yTRJ ( Vector y,
const Vector f_mono,
const Vector za_pencil 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Patrick Eriksson
Date:
2001-08-28

Definition at line 1641 of file m_los.cc.

void zaFromDeltat ( Vector za,
const String ,
const Numeric z_plat,
const Vector p_abs,
const Vector z_abs,
const Numeric l_step,
const Index refr,
const Index refr_lfac,
const Vector refr_index,
const Numeric r_geoid,
const Numeric z_ground,
const Numeric delta_t,
const Vector z_tan_lim 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Carlos Jimenez
Date:
2000-04-09

Definition at line 1199 of file m_los.cc.

void zaFromZtan ( Vector za,
const String ,
const Vector z_tan,
const Numeric z_plat,
const Vector p_abs,
const Vector z_abs,
const Index refr,
const Vector refr_index,
const Numeric r_geoid,
const Numeric z_ground 
)

See the the online help (arts -d FUNCTION_NAME).

Author:
Carlos Jimenez
Date:
2000-03-27

Definition at line 1134 of file m_los.cc.


Variable Documentation

const Numeric PI


Generated on Wed Feb 4 08:17:24 2009 for ARTS by  doxygen 1.5.6