ARTS  2.4.0(git:4fb77825)
m_physics.cc File Reference

Workspace methods of physical character. More...

#include "arts.h"
#include "auto_md.h"
#include "check_input.h"
#include "logic.h"
#include "math_funcs.h"
#include "messages.h"
#include "physics_funcs.h"

Go to the source code of this file.

Functions

void MatrixCBR (Matrix &m, const Index &stokes_dim, const Vector &f, const Verbosity &)
 WORKSPACE METHOD: MatrixCBR. More...
 
void MatrixPlanck (Matrix &m, const Index &stokes_dim, const Vector &f, const Numeric &t, const Verbosity &verbosity)
 WORKSPACE METHOD: MatrixPlanck. More...
 
void MatrixUnitIntensity (Matrix &m, const Index &stokes_dim, const Vector &f, const Verbosity &verbosity)
 WORKSPACE METHOD: MatrixUnitIntensity. More...
 
void water_p_eq_fieldMK05 (Tensor3 &water_p_eq_field, const Tensor3 &t_field, const Verbosity &)
 WORKSPACE METHOD: water_p_eq_fieldMK05. More...
 

Variables

const Numeric TEMP_0_C
 
const Numeric COSMIC_BG_TEMP
 

Detailed Description

Workspace methods of physical character.

Author
Patrick Eriksson Patri.nosp@m.ck.E.nosp@m.rikss.nosp@m.on@c.nosp@m.halme.nosp@m.rs.s.nosp@m.e
Date
2002-08-20

This file includes workspace methods for operations that have some connection to basic physics. Example of methods are:

  1. Setting WSV to hold blackbody radiation.
  2. Conversion to brightness temperature.

These functions are listed in the doxygen documentation as entries of the file auto_md.h.

Definition in file m_physics.cc.

Function Documentation

◆ MatrixCBR()

void MatrixCBR ( Matrix out,
const Index stokes_dim,
const Vector f,
const Verbosity verbosity 
)

WORKSPACE METHOD: MatrixCBR.

Sets a matrix to hold cosmic background radiation (CBR).

The CBR is assumed to be un-polarized and Stokes components 2-4 are zero. Number of Stokes components, that equals the number of columns in the created matrix, is determined by stokes_dim. The number of rows in the created matrix equals the length of the given frequency vector.

The cosmic radiation is modelled as blackbody radiation for the temperature given by the global constant COSMIC_BG_TEMP, set in the file constants.cc. The frequencies are taken from the generic input vector.

The standard definition, in ARTS, of the Planck function is followed and the unit of the returned data is W/(m3 * Hz * sr).

Author
Patrick Eriksson
Parameters
[out]outGeneric output
[in]stokes_dimWS Input
[in]fGeneric Input

Definition at line 56 of file m_physics.cc.

References COSMIC_BG_TEMP, joker, ConstVectorView::nelem(), planck(), Matrix::resize(), and ARTS::Var::stokes_dim().

Referenced by ARTS::Agenda::iy_space_agenda_cosmic_background(), and MatrixCBR_g().

◆ MatrixPlanck()

void MatrixPlanck ( Matrix out,
const Index stokes_dim,
const Vector f,
const Numeric t,
const Verbosity verbosity 
)

WORKSPACE METHOD: MatrixPlanck.

Sets a matrix to hold blackbody radiation.

The radiation is assumed to be un-polarized and Stokes components 2-4 are zero. Number of Stokes components, that equals the number of columns in the created matrix, is determined by stokes_dim. The number of rows in the created matrix equals the length of the given frequency vector.

The standard definition, in ARTS, of the Planck function is followed and the unit of the returned data is W/(m3 * Hz * sr).

Author
Patrick Eriksson
Parameters
[out]outGeneric output
[in]stokes_dimWS Input
[in]fGeneric Input
[in]tGeneric Input

Definition at line 74 of file m_physics.cc.

References CREATE_OUT2, joker, ConstVectorView::nelem(), planck(), Matrix::resize(), and ARTS::Var::stokes_dim().

Referenced by MatrixPlanck_g().

◆ MatrixUnitIntensity()

void MatrixUnitIntensity ( Matrix out,
const Index stokes_dim,
const Vector f,
const Verbosity verbosity 
)

WORKSPACE METHOD: MatrixUnitIntensity.

Sets a matrix to hold unpolarised radiation with unit intensity.

Works as MatrixPlanck where the radiation is set to 1.

Author
Patrick Eriksson
Parameters
[out]outGeneric output
[in]stokes_dimWS Input
[in]fGeneric Input

Definition at line 97 of file m_physics.cc.

References CREATE_OUT2, ConstVectorView::nelem(), Matrix::resize(), and ARTS::Var::stokes_dim().

Referenced by MatrixUnitIntensity_g().

◆ water_p_eq_fieldMK05()

void water_p_eq_fieldMK05 ( Tensor3 water_p_eq_field,
const Tensor3 t_field,
const Verbosity verbosity 
)

WORKSPACE METHOD: water_p_eq_fieldMK05.

Calculates water_p_eq_field according to Murphy and Koop, 2005.

The saturation pressure is set to the one with respect to water at temperatures >= 0C, and to the one with respect to ice for <0C.

The saturation pressure with respect to liquid and ice water is calculated according to Eq. 10 and 7, respectively, of: Murphy, D. M., & Koop, T. (2005). Review of the vapour pressures of ice and supercooled water for atmospheric applications. Quarterly Journal of the Royal Meteorological Society, 131(608), 1539-1565.

Author
Patrick Eriksson
Parameters
[out]water_p_eq_fieldWS Output
[in]t_fieldWS Input

Definition at line 121 of file m_physics.cc.

References ARTS::Var::t_field(), and ARTS::Var::water_p_eq_field().

Referenced by ARTS::Agenda::water_p_eq_agenda_default(), and water_p_eq_fieldMK05_g().

Variable Documentation

◆ COSMIC_BG_TEMP

const Numeric COSMIC_BG_TEMP
extern

Referenced by MatrixCBR().

◆ TEMP_0_C

const Numeric TEMP_0_C
extern