ARTS 2.5.11 (git: 6827797f)
physics_funcs.h File Reference

This file contains declerations of functions of physical character. More...

#include "arts_conversions.h"
#include "arts.h"
#include "matpack_data.h"
#include "matpack_complex.h"

Go to the source code of this file.

Functions

Numeric barometric_heightformula (const Numeric &p, const Numeric &dh)
 barometric_heightformula
 
Numeric dinvplanckdI (const Numeric &i, const Numeric &f)
 dinvplanckdI
 
void fresnel (Complex &Rv, Complex &Rh, const Complex &n1, const Complex &n2, const Numeric &theta)
 fresnel
 
Numeric invplanck (const Numeric &i, const Numeric &f)
 invplanck
 
Numeric invrayjean (const Numeric &i, const Numeric &f)
 invrayjean
 
constexpr Numeric number_density (Numeric p, Numeric t) noexcept
 number_density
 
constexpr Numeric dnumber_density_dt (Numeric p, Numeric t) noexcept
 dnumber_density_dT
 
Numeric planck (const Numeric &f, const Numeric &t)
 planck
 
void planck (VectorView b, const ConstVectorView &f, const Numeric &t)
 planck
 
Vector planck (const ConstVectorView &f, const Numeric &t)
 planck
 
Numeric dplanck_dt (const Numeric &f, const Numeric &t)
 dplanck_dt
 
void dplanck_dt (VectorView b, const ConstVectorView &f, const Numeric &t)
 dplanck_dt
 
Vector dplanck_dt (const ConstVectorView &f, const Numeric &t)
 dplanck_dt
 
Numeric dplanck_df (const Numeric &f, const Numeric &t)
 dplanck_df
 
Vector dplanck_df (const ConstVectorView &f, const Numeric &t)
 dplanck_df
 
Numeric rayjean (const Numeric &f, const Numeric &t)
 rayjean
 

Detailed Description

This file contains declerations of functions 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-05-08

Definition in file physics_funcs.h.

Function Documentation

◆ barometric_heightformula()

Numeric barometric_heightformula ( const Numeric &  p,
const Numeric &  dh 
)

barometric_heightformula

Barometric heightformula for isothermal earth atmosphere.

Parameters
[in]pAtmospheric pressure at starting level [Pa].
[in]dhVertical displacement to starting pressure level [m].
Returns
p1 Pressure in displacement level [Pa].
Author
Daniel Kreyling
Date
2011-01-20

Definition at line 45 of file physics_funcs.cc.

Referenced by cloudboxSetAutomatically().

◆ dinvplanckdI()

Numeric dinvplanckdI ( const Numeric &  i,
const Numeric &  f 
)

dinvplanckdI

Calculates the derivative of inverse-Planck with respect to intensity.

Parameters
[in]iRadiance.
[in]fFrequency.
Returns
The derivative.
Author
Patrick Eriksson
Date
2010-10-26

Definition at line 81 of file physics_funcs.cc.

References a, ARTS_USER_ERROR_IF, b, BOLTZMAN_CONST, d, PLANCK_CONST, and SPEED_OF_LIGHT.

Referenced by apply_iy_unit2().

◆ dnumber_density_dt()

constexpr Numeric dnumber_density_dt ( Numeric  p,
Numeric  t 
)
constexprnoexcept

dnumber_density_dT

Calculates the atmospheric number density derivative with temperature.

Parameters
[in]pPressure.
[in]tTemperature.
Returns
Number density.
Author
Richard Larsson
Date
2015-09-22

Definition at line 65 of file physics_funcs.h.

References Constant::k, and Math::pow2().

Referenced by abs_xsec_per_speciesAddCIA(), LineShape::compute(), propmat_clearskyAddCIA(), and propmat_clearskyAddXsecFit().

◆ dplanck_df() [1/2]

Vector dplanck_df ( const ConstVectorView &  f,
const Numeric &  t 
)

dplanck_df

Calculates the frequency derivative of the Planck function for a single temperature and frequency.

Parameters
[in]fFrequency.
[in]tTemperature.
Returns
Blackbody radiation frequency derivative.
Author
Richard Larsson
Date
2015-09-15

Definition at line 343 of file physics_funcs.cc.

References dplanck_df().

◆ dplanck_df() [2/2]

Numeric dplanck_df ( const Numeric &  f,
const Numeric &  t 
)

dplanck_df

Calculates the frequency derivative of the Planck function for a single temperature and frequency.

Parameters
[in]fFrequency.
[in]tTemperature.
Returns
Blackbody radiation frequency derivative.
Author
Richard Larsson
Date
2015-09-15

Definition at line 318 of file physics_funcs.cc.

References a, ARTS_USER_ERROR_IF, b, Constant::c, Constant::h, Constant::k, and Math::pow2().

Referenced by dplanck_df(), and nlte_sourceFromTemperatureAndSrcCoefPerSpecies().

◆ dplanck_dt() [1/3]

Vector dplanck_dt ( const ConstVectorView &  f,
const Numeric &  t 
)

dplanck_dt

Calculates the Planck function temperature derivative for a single temperature and a vector of frequencies.

Parameters
[in]fFrequency.
[in]tTemperature.
Returns
Blackbody radiation temperature derivative.
Author
Richard Larsson
Date
2019-10-11

Definition at line 299 of file physics_funcs.cc.

References dplanck_dt().

◆ dplanck_dt() [2/3]

Numeric dplanck_dt ( const Numeric &  f,
const Numeric &  t 
)

dplanck_dt

Calculates the temperature derivative of the Planck function for a single temperature and frequency.

Parameters
[in]fFrequency.
[in]tTemperature.
Returns
Blackbody radiation temperature derivative.
Author
Richard Larsson
Date
2015-09-15

Definition at line 254 of file physics_funcs.cc.

References a, ARTS_USER_ERROR_IF, b, Constant::c, Constant::h, Constant::k, Math::pow2(), and Math::pow4().

Referenced by dplanck_dt(), get_stepwise_blackbody_radiation(), iySurfaceLambertian(), nlte_sourceFromTemperatureAndSrcCoefPerSpecies(), and SurfaceBlackbody().

◆ dplanck_dt() [3/3]

void dplanck_dt ( VectorView  dbdt,
const ConstVectorView &  f,
const Numeric &  t 
)

dplanck_dt

Calculates the Planck function temperature derivative for a single temperature and a vector of frequencies.

Parameters
[in]fFrequency.
[in]tTemperature.
Returns
Blackbody radiation temperature derivative.
Author
Richard Larsson
Date
2019-10-11

Definition at line 280 of file physics_funcs.cc.

References ARTS_USER_ERROR_IF, and dplanck_dt().

◆ fresnel()

void fresnel ( Complex &  Rv,
Complex &  Rh,
const Complex &  n1,
const Complex &  n2,
const Numeric &  theta 
)

fresnel

Calculates complex AMPLITUDE reflection coeffcients for a specular reflection.

The properties of the two involved media are given as the complex refractive index, n. A dielectric constant, eps, is converted as n = sqrt( eps ). The power reflection coefficient, r, for one polarisation is r = abs(R)^2.

Parameters
[out]RvReflection coefficient for vertical polarisation.
[out]RhReflection coefficient for vertical polarisation.
[in]n1Refractive index of medium where radiation propagates.
[in]n2Refractive index of reflecting medium.
[in]thetaPropagation angle from normal of radiation to be. reflected
Author
Patrick Eriksson
Date
2004-09-21

Definition at line 113 of file physics_funcs.cc.

References a, b, and DEG2RAD.

Referenced by surfaceFlatRefractiveIndex().

◆ invplanck()

Numeric invplanck ( const Numeric &  i,
const Numeric &  f 
)

invplanck

Converts a radiance to Planck brightness temperature.

Parameters
[in]iRadiance.
[in]fFrequency.
Returns
Planck brightness temperature.
Author
Patrick Eriksson
Date
2002-08-11

Definition at line 143 of file physics_funcs.cc.

References a, ARTS_USER_ERROR_IF, b, BOLTZMAN_CONST, PLANCK_CONST, and SPEED_OF_LIGHT.

Referenced by apply_iy_unit().

◆ invrayjean()

Numeric invrayjean ( const Numeric &  i,
const Numeric &  f 
)

invrayjean

Converts a radiance to Rayleigh-Jean brightness temperature.

Parameters
[in]iRadiance.
[in]fFrequency.
Returns
RJ brightness temperature.
Author
Patrick Eriksson
Date
2000-09-28

Definition at line 165 of file physics_funcs.cc.

References a, ARTS_USER_ERROR_IF, BOLTZMAN_CONST, and SPEED_OF_LIGHT.

Referenced by apply_iy_unit(), apply_iy_unit2(), cloudbox_fieldUpdateSeq1D(), doit_conv_flagAbsBT(), doit_conv_flagLsq(), and MCGeneral().

◆ number_density()

constexpr Numeric number_density ( Numeric  p,
Numeric  t 
)
constexprnoexcept

number_density

Calculates the atmospheric number density.

Parameters
[in]pPressure.
[in]tTemperature.
Returns
Number density.
Author
Patrick Eriksson
Date
2000-04-08

Definition at line 51 of file physics_funcs.h.

References Constant::k.

Referenced by abs_xsec_per_speciesAddCIA(), lm_hitran_2017::compabs(), LineShape::compute(), dxdvmrscf(), Absorption::LineMixing::ecs_absorption_impl(), GasAbsLookup::Extract(), gas_scattering_coefAirSimple(), gas_scattering_coefXsecConst(), propmat_clearskyAddCIA(), propmat_clearskyAddXsecFit(), rtmethods_jacobian_finalisation(), vmrunitscf(), and x2artsAtmAndSurf().

◆ planck() [1/3]

Vector planck ( const ConstVectorView &  f,
const Numeric &  t 
)

planck

Calculates the Planck function for a single temperature and a vector of frequencies.

Note that this expression gives the intensity for both polarisations.

Parameters
[in]fFrequency.
[in]tTemperature.
Returns
Blackbody radiation.
Author
Patrick Eriksson
Date
2015-12-15

Definition at line 235 of file physics_funcs.cc.

References b, and planck().

◆ planck() [2/3]

Numeric planck ( const Numeric &  f,
const Numeric &  t 
)

planck

Calculates the Planck function for a single temperature.

Note that this expression gives the intensity for both polarisations.

Parameters
[in]fFrequency.
[in]tTemperature.
Returns
Blackbody radiation.
Author
Patrick Eriksson
Date
2000-04-08

Definition at line 189 of file physics_funcs.cc.

References a, ARTS_USER_ERROR_IF, b, Constant::c, Constant::h, Constant::k, Math::pow2(), and Math::pow3().

Referenced by cloud_ppath_update1D_planeparallel(), cloud_RT_no_background(), get_stepwise_blackbody_radiation(), iySurfaceLambertian(), MatrixCBR(), MatrixPlanck(), MCGeneral(), nlte_sourceFromTemperatureAndSrcCoefPerSpecies(), planck(), regrid_sun_spectrum(), sunsAddSingleBlackbody(), surface_specular_R_and_b(), surfaceBlackbody(), surfaceFastem(), surfaceFlatReflectivity(), surfaceFlatRvRh(), surfaceFlatScalarReflectivity(), and surfaceLambertianSimple().

◆ planck() [3/3]

void planck ( VectorView  b,
const ConstVectorView &  f,
const Numeric &  t 
)

planck

Calculates the Planck function for a single temperature and a vector of frequencies.

Note that this expression gives the intensity for both polarisations.

Parameters
[in]fFrequency.
[in]tTemperature.
Returns
Blackbody radiation.
Author
Patrick Eriksson
Date
2015-12-15

Definition at line 214 of file physics_funcs.cc.

References ARTS_USER_ERROR_IF, b, and planck().

◆ rayjean()

Numeric rayjean ( const Numeric &  f,
const Numeric &  tb 
)

rayjean

Converts a Rayleigh-Jean brightness temperature to radiance

Parameters
[in]tbRJ brightness temperature.
[in]fFrequency.
Returns
Radiance.
Author
Patrick Eriksson
Date
2011-07-13

Definition at line 361 of file physics_funcs.cc.

References a, ARTS_USER_ERROR_IF, BOLTZMAN_CONST, and SPEED_OF_LIGHT.