ARTS  1.0.222
Functions | Variables
m_wfs.cc File Reference

This file contains functions to calculate WFs for a number of variables. More...

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

Go to the source code of this file.

Functions

void k_append (Matrix &kx, ArrayOfString &kx_names, ArrayOfIndex &kx_lengths, Matrix &kx_aux, const Matrix &k, const ArrayOfString &k_names, const Matrix &k_aux)
 Appends the K matrix to either Kx or Kb. More...
 
void p2grid (Vector &grid, const Vector &pgrid)
 Converts a pressure grid to a grid fitting the grid functions below. More...
 
void grid2grid_index (Matrix &is, const Vector &x0, const Vector &xp)
 Gives indecies for conversion between vertical grids. More...
 
void grid2grid_weights (Vector &w, const Vector &x0, const Index &i1, const Index &i2, const Vector &xp, const Index &ip)
 Gives weights for conversion between vertical grids. More...
 
void grid2grid_weights_total (ArrayOfMatrix &W, const Los &los, const Vector &k_grid)
 Gives weights for conversion between vertical grids. More...
 
void absloswfs_rte_1pass (Matrix &k, Vector y, const Index &start_index, const Index &stop_index, const Numeric &lstep, const Matrix &tr, const Matrix &s, const Index &ground, const Vector &e_ground, const Vector &y_ground)
 Calculates absorption LOS WFs f single pass cases. More...
 
void absloswfs_rte_limb (Matrix &k, Vector y, const Vector &y_space, const Index &start_index, const Numeric &lstep, const Matrix &tr, const Matrix &s, const Index &ground, const Vector &e_ground)
 Calculates absorption LOS WFs for 1D limb sounding. More...
 
void absloswfs_rte_down (Matrix &k, const Vector &y, const Vector &y_space, const Index &start_index, const Index &stop_index, const Numeric &lstep, const Matrix &tr, const Matrix &s, const Index &ground, const Vector &e_ground, const Vector &y_ground)
 Calculates absorption LOS WFs for 1D downward looking observations. More...
 
void absloswfs_rte (ArrayOfMatrix &absloswfs, const Los &los, const ArrayOfMatrix &source, const ArrayOfMatrix &trans, const Vector &y, const Vector &y_space, const Vector &f_mono, const Vector &e_ground, const Numeric &t_ground)
 
void absloswfs_tau (ArrayOfMatrix &absloswfs, const Los &los, const Vector &f_mono)
 
void sourceloswfs_1pass (Matrix &k, const Index &start_index, const Index &stop_index, const Matrix &tr, const Index &ground, const Vector &e_ground)
 Calculates source function LOS WFs for single pass cases. More...
 
void sourceloswfs_limb (Matrix &k, const Index &start_index, const Matrix &tr, const Index &ground, const Vector &e_ground)
 Calculates source function LOS WFs for 1D limb sounding. More...
 
void sourceloswfs_down (Matrix &k, const Index &start_index, const Index &stop_index, const Matrix &tr, const Index &ground, const Vector &e_ground)
 Calculates source function LOS WFs for 1D downward looking observations. More...
 
void sourceloswfs (ArrayOfMatrix &sourceloswfs, const Los &los, const ArrayOfMatrix &trans, const Vector &, const Vector &e_ground)
 Calculates source function LOS WFs,. More...
 
void k_species (Matrix &k, ArrayOfString &k_names, Matrix &k_aux, const Los &los, const ArrayOfMatrix &absloswfs, const Vector &p_abs, const Vector &t_abs, const TagGroups &tags, const ArrayOfMatrix &abs_per_tg, const Matrix &vmrs, const Vector &k_grid, const ArrayOfIndex &tg_nr, const String &unit)
 Species WFs for one or several species. More...
 
void k_contabs (Matrix &k, ArrayOfString &k_names, Matrix &k_aux, const Los &los, const ArrayOfMatrix &absloswfs, const Vector &f_mono, const Vector &k_grid, const Index &order, const Numeric &flow, const Numeric &fhigh, const String &lunit)
 WFs for fit of continuum absorption. More...
 
void k_temp_nohydro (Matrix &k, ArrayOfString &k_names, Matrix &k_aux, const TagGroups &tag_groups, const Los &los, const ArrayOfMatrix &absloswfs, const Vector &f_mono, const Vector &p_abs, const Vector &t_abs, const Vector &n2_abs, const Vector &h2o_abs, const Matrix &vmrs, const ArrayOfArrayOfLineRecord &lines_per_tg, const ArrayOfLineshapeSpec &lineshape, const Matrix &abs, const ArrayOfMatrix &trans, const Vector &e_ground, const Vector &k_grid, const ArrayOfString &cont_description_names, const ArrayOfVector &cont_description_parameters, const ArrayOfString &cont_description_models)
 Temparature WFs without hydrostatic eq. More...
 
void kb_spectro (Matrix &kb, ArrayOfString &kb_names, Matrix &, Matrix &S_S, const TagGroups &wfss_tgs, const TagGroups &tgs, const Vector &f_mono, const Vector &p_abs, const Vector &t_abs, const Vector &h2o_abs, const Matrix &vmrs, const ArrayOfArrayOfLineRecord &lines_per_tg, const ArrayOfLineshapeSpec &lineshape, const Los &los, const ArrayOfMatrix &absweight, const Index &IndexPar, const String &StrPar)
 Spectroscopic parameters weighting function. More...
 
void kSpectro (Matrix &k, ArrayOfString &k_names, Matrix &, Matrix &S_S, const TagGroups &wfss_tgs, const TagGroups &tgs, const Vector &f_mono, const Vector &p_abs, const Vector &t_abs, const Vector &z_abs, const Vector &h2o_abs, const Matrix &vmrs, const ArrayOfArrayOfLineRecord &lines_per_tg, const ArrayOfLineshapeSpec &lineshape, const Los &los, const ArrayOfMatrix &absloswfs, const Index &kw_intens, const Index &kw_position, const Index &kw_agam, const Index &kw_sgam, const Index &kw_nair, const Index &kw_nself, const Index &kw_pSift)
 Spectroscopic parameters weighting function. More...
 
void wfs_tgsDefine (TagGroups &wfs_tag_groups, const ArrayOfString &tags)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void wfss_tgsDefine (TagGroups &wfss_tgs, const ArrayOfString &tags)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void absloswfsCalc (ArrayOfMatrix &absloswfs, const Index &emission, const Los &los, const ArrayOfMatrix &source, const ArrayOfMatrix &trans, const Vector &y, const Vector &y_space, const Vector &f_mono, const Vector &e_ground, const Numeric &t_ground)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kSpecies (Matrix &k, ArrayOfString &k_names, Matrix &k_aux, const Los &los, const ArrayOfMatrix &absloswfs, const Vector &p_abs, const Vector &t_abs, const TagGroups &wfs_tgs, const ArrayOfMatrix &abs_per_tg, const Matrix &vmrs, const Vector &k_grid, const String &unit)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kSpeciesSingle (Matrix &k, ArrayOfString &k_names, Matrix &k_aux, const Los &los, const ArrayOfMatrix &absloswfs, const Vector &p_abs, const Vector &t_abs, const TagGroups &wfs_tgs, const ArrayOfMatrix &abs_per_tg, const Matrix &vmrs, const Vector &k_grid, const String &tg, const String &unit)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kContAbs (Matrix &k, ArrayOfString &k_names, Matrix &k_aux, const Los &los, const ArrayOfMatrix &absloswfs, const Vector &f_mono, const Vector &k_grid, const Index &order, const Numeric &f_low, const Numeric &f_high, const String &l_unit)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kTemp (Matrix &k, ArrayOfString &k_names, Matrix &k_aux, const TagGroups &tgs, const Vector &f_mono, const Vector &p_abs, const Vector &t_abs, const Vector &n2_abs, const Vector &h2o_abs, const Matrix &vmrs, const Matrix &abs0, const ArrayOfArrayOfLineRecord &lines_per_tg, const ArrayOfLineshapeSpec &lineshape, const Vector &e_ground, const Index &emission, const Vector &k_grid, const ArrayOfString &cont_description_names, const ArrayOfVector &cont_description_parameters, const ArrayOfString &cont_description_models, const Los &los, const ArrayOfMatrix &absloswfs, const ArrayOfMatrix &trans, const Numeric &z_plat, const Vector &za, const Numeric &l_step, const Vector &z_abs, const Index &refr, const Index &refr_lfac, const Vector &refr_index, const String &refr_model, const Numeric &z_ground, const Numeric &t_ground, const Vector &y_space, const Numeric &r_geoid, const Vector &hse, const Index &kw_hse, const Index &kw_fast)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kFrequencyOffSet (Matrix &k, ArrayOfString &k_names, Matrix &k_aux, const TagGroups &tgs, const Vector &f_mono, const Vector &p_abs, const Vector &t_abs, const Vector &n2_abs, const Vector &h2o_abs, const Matrix &vmrs, const ArrayOfArrayOfLineRecord &lines_per_tg, const ArrayOfLineshapeSpec &lineshape, const Vector &e_ground, const Index &emission, const ArrayOfString &cont_description_names, const ArrayOfVector &cont_description_parameters, const ArrayOfString &cont_description_models, const Los &los, const Numeric &t_ground, const Vector &y_space, const Vector &y, const Numeric &delta, const String &f_unit)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kPointingOffSet (Matrix &k, ArrayOfString &k_names, Matrix &k_aux, const Numeric &z_plat, const Vector &za_pencil, const Numeric &l_step, const Vector &p_abs, const Vector &z_abs, const Vector &t_abs, const Vector &f_mono, const Index &refr, const Index &refr_lfac, const Vector &refr_index, const Numeric &z_ground, const Numeric &r_geoid, const Matrix &abs, const Index &emission, const Vector &y_space, const Vector &e_ground, const Numeric &t_ground, const Vector &y, const Numeric &delta)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kEground (Matrix &k, ArrayOfString &k_names, Matrix &k_aux, const Vector &za_pencil, const Vector &f_mono, const Index &emission, const Vector &y_space, const Vector &e_ground, const Numeric &t_ground, const Los &los, const ArrayOfMatrix &source, const ArrayOfMatrix &trans, const Index &single_e)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kCalibration (Matrix &k, ArrayOfString &k_names, Matrix &k_aux, const Vector &y, const Vector &f_mono, const Vector &y0, const String &)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kManual (Matrix &k, ArrayOfString &k_names, Matrix &k_aux, const Vector &y0, const Vector &y, const String &name, const Numeric &delta, const Numeric &grid, const Numeric &apriori)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kxInit (Matrix &kx, ArrayOfString &kx_names, ArrayOfIndex &kx_lengths, Matrix &kx_aux)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kbInit (Matrix &kb, ArrayOfString &kb_names, ArrayOfIndex &kb_lengths, Matrix &kb_aux)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kxAppend (Matrix &kx, ArrayOfString &kx_names, ArrayOfIndex &kx_lengths, Matrix &kx_aux, const Matrix &k, const ArrayOfString &k_names, const Matrix &k_aux)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kbAppend (Matrix &kb, ArrayOfString &kb_names, ArrayOfIndex &kb_lengths, Matrix &kb_aux, const Matrix &k, const ArrayOfString &k_names, const Matrix &k_aux)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kxAllocate (Matrix &kx, ArrayOfString &kx_names, ArrayOfIndex &kx_lengths, Matrix &kx_aux, const Vector &y, const String &, const Index &ni, const Index &nx)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kbAllocate (Matrix &kb, ArrayOfString &kb_names, ArrayOfIndex &kb_lengths, Matrix &kb_aux, const Vector &y, const String &y_name, const Index &ni, const Index &nx)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kxPutInK (Matrix &kx, ArrayOfString &kx_names, ArrayOfIndex &kx_lengths, Matrix &kx_aux, const Matrix &k, const ArrayOfString &k_names, const Matrix &k_aux)
 See the the online help (arts -d FUNCTION_NAME) More...
 
void kbPutInK (Matrix &kb, ArrayOfString &kb_names, ArrayOfIndex &kb_lengths, Matrix &kb_aux, const Matrix &k, const ArrayOfString &k_names, const Matrix &k_aux)
 See the the online help (arts -d FUNCTION_NAME) More...
 

Variables

const Numeric PLANCK_CONST
 
const Numeric BOLTZMAN_CONST
 

Detailed Description

This file contains functions to calculate WFs for a number of variables.

Calculation of WFs are described in the AUG sections "Atmospheric WFs" and "Measurement errors".

Author
Patrick Eriksson, C. Verdes
Date
2000-09-14

Definition in file m_wfs.cc.

Function Documentation

◆ absloswfs_rte()

void absloswfs_rte ( ArrayOfMatrix absloswfs,
const Los los,
const ArrayOfMatrix source,
const ArrayOfMatrix trans,
const Vector y,
const Vector y_space,
const Vector f_mono,
const Vector e_ground,
const Numeric t_ground 
)
Author
Patrick Eriksson
Date
2000-09-15

Definition at line 761 of file m_wfs.cc.

◆ absloswfs_rte_1pass()

void absloswfs_rte_1pass ( Matrix k,
Vector  y,
const Index start_index,
const Index stop_index,
const Numeric lstep,
const Matrix tr,
const Matrix s,
const Index ground,
const Vector e_ground,
const Vector y_ground 
)

Calculates absorption LOS WFs f single pass cases.

Help function for absloswfsCalc treating a single zenith angle.

This function covers cases where each point is passed once. That is 1D limb sounding and downward observatiuons are not covered.

The expression used are described in sub-section 2.1 of the AUG section "Atmospheric WFs".

Return values
kabs. LOS WFs
Parameters
yspectrum vector
start_indexstart LOS index for iteration
stop_indexstop LOS index for iteration
lsteplength between LOS points
trtransmissions
ssource function values
groundground flag
e_groundground emissivity
y_groundground emission
Author
Patrick Eriksson
Date
2000-09-15

Definition at line 484 of file m_wfs.cc.

◆ absloswfs_rte_down()

void absloswfs_rte_down ( Matrix k,
const Vector y,
const Vector y_space,
const Index start_index,
const Index stop_index,
const Numeric lstep,
const Matrix tr,
const Matrix s,
const Index ground,
const Vector e_ground,
const Vector y_ground 
)

Calculates absorption LOS WFs for 1D downward looking observations.

Help function for absloswfsCalc treating a single zenith angle.

The expression used are described in sub-section 2.3 of the AUG section "Atmospheric WFs".

Return values
kabs. LOS WFs
Parameters
yspectrum vector
y_spacecosmic radiation
start_indexstart LOS index for iteration
stop_indexstop LOS index for iteration
lsteplength between LOS points
trtransmissions
ssource function values
groundground flag
e_groundground emissivity
y_groundground emission
Author
Patrick Eriksson
Date
2000-09-15

Definition at line 682 of file m_wfs.cc.

◆ absloswfs_rte_limb()

void absloswfs_rte_limb ( Matrix k,
Vector  y,
const Vector y_space,
const Index start_index,
const Numeric lstep,
const Matrix tr,
const Matrix s,
const Index ground,
const Vector e_ground 
)

Calculates absorption LOS WFs for 1D limb sounding.

Help function for absloswfsCalc treating a single zenith angle.

The expression used are described in sub-section 2.2 of the AUG section "Atmospheric WFs".

Return values
kabs. LOS WFs
Parameters
yspectrum vector
y_spacecosmic radiation
start_indexstart LOS index for iteration
lsteplength between LOS points
trtransmissions
ssource function values
groundground flag
e_groundground emissivity
Author
Patrick Eriksson
Date
2000-09-15

Definition at line 586 of file m_wfs.cc.

◆ absloswfs_tau()

void absloswfs_tau ( ArrayOfMatrix absloswfs,
const Los los,
const Vector f_mono 
)
Author
Patrick Eriksson
Date
2001-03-30

Definition at line 834 of file m_wfs.cc.

◆ absloswfsCalc()

void absloswfsCalc ( ArrayOfMatrix absloswfs,
const Index emission,
const Los los,
const ArrayOfMatrix source,
const ArrayOfMatrix trans,
const Vector y,
const Vector y_space,
const Vector f_mono,
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 2726 of file m_wfs.cc.

◆ grid2grid_index()

void grid2grid_index ( Matrix is,
const Vector x0,
const Vector xp 
)

Gives indecies for conversion between vertical grids.

This function gives the indeces of the grid points affected by a change at a set of retrieval points. That is, a first step to calculate dkappa/dkp (see Equation 4 of the AUG section on "Basic atmospheric WFs). The second step is performed by the function GRID2GRID_WEIGHTS found below.

This function can be used to convert LOS WFs to WFs for vertical altitudes.

The profile/function for the retrieved quantity is treated to be piecewise linear. With other words, the base functions are tenth functions. The functions areis treated to be 0 outside the end points.

The function returns a 2 column matrix, where column 1 is the lowest index affected and column 2 the highest index. If no points are affected -1 are returned.

An example:

x0 = [1 2 3 4 5 6 7] and

xp = [0 1 2 3 4.5 5 5.5 6 8] gives

Is = [-1 -1 0 0 1 1 2 3 3 3 4 4 -1 -1 5 6 6 6 ]

Note that the XP point 5.5 gives -1 as this point not embraces any point of X0 as there are retrieval points at the neighbouring X0 points.

X0 is the original grid. For example, the LOS grid. XP is the retrieval grid. For example, vertical altitudes.

Both vectors most be sorted with increasing values. The length of XP must be > 1.

The algorithm used here is not the most effective. However, more elaborated algorithms were tested but they failed for some special case, and instead a simplistic approach was used.

Return values
istwo column matrix with indecies of x0
Parameters
x0grid for some variable
xpretrieval grid
Author
Patrick Eriksson
Date
2000-09-15

Definition at line 239 of file m_wfs.cc.

◆ grid2grid_weights()

void grid2grid_weights ( Vector w,
const Vector x0,
const Index i1,
const Index i2,
const Vector xp,
const Index ip 
)

Gives weights for conversion between vertical grids.

This function returns the derivative dkappa/dkp (see the AUG section on "Atmospheric WFs"), here dennoted as the weight, for the indeces selected.

This is an accompanying function to GRID2GRID_INDEX. This latter function gives the indeces for which the weight > 0.

The weight is

w = abs( (x0-xp(ip+-1)) / (xp(ip)-xp(ip+-1)))

where x0 is the point of the original grid (kappa), xp(ip) is the considered retrieval point and xp(ip+-1) is the retrieval point on the other side of x0.

Return values
wweights for each point in x0
Parameters
x0the original grid, e.g. the LOS grid.
i1first index of x0 to consider
i2last index of x0 to consider
xpretrieval grid, e.g. vertical altitudes
ipindex of retrieval point
Author
Patrick Eriksson
Date
2000-09-15

Definition at line 335 of file m_wfs.cc.

◆ grid2grid_weights_total()

void grid2grid_weights_total ( ArrayOfMatrix W,
const Los los,
const Vector k_grid 
)

Gives weights for conversion between vertical grids.

This function returns the derivative dkappa/dk (see the AUG section on "Atmospheric WFs"), here dennoted as the weight, for the grid specified by k_grid.

This uses GRID2GRID_WEIGHTS function which calculate the weights for a single grid point

Return values
Wweights for each point in x0
Parameters
Losstructure for the line of sight
k_gridthe grid to calculate the weights

See the the online help (arts -d FUNCTION_NAME)

Author
Carmen Verdes
Date
2001-01-21

Definition at line 395 of file m_wfs.cc.

◆ k_append()

void k_append ( Matrix kx,
ArrayOfString kx_names,
ArrayOfIndex kx_lengths,
Matrix kx_aux,
const Matrix k,
const ArrayOfString k_names,
const Matrix k_aux 
)

Appends the K matrix to either Kx or Kb.

Output matrix kx is resized!

Return values
kxthe Kx matrix
kx_namesidentity names for KX
kx_indexidentity indecies KX
kx_auxadditional data KX
Parameters
kthe K matrix
k_namesidentity names for K
k_auxadditional data K
Author
Patrick Eriksson
Date
2000-10-20

Definition at line 79 of file m_wfs.cc.

◆ k_contabs()

void k_contabs ( Matrix k,
ArrayOfString k_names,
Matrix k_aux,
const Los los,
const ArrayOfMatrix absloswfs,
const Vector f_mono,
const Vector k_grid,
const Index order,
const Numeric flow,
const Numeric fhigh,
const String lunit 
)

WFs for fit of continuum absorption.

Calculates semi-analytical WFs for fit of continuum absorption using precalculated absorption LOS WFs.

The expression used are described in sub-section 6 of the AUG section "Atmospheric WFs".

The continuum is fitted be determining an off-set at a number of points (order+1) that are evenly spread between the given frequencies. The weighting functions are zero outside these limits.

Return values
kweighting function matrix
k_namesidentity name(s)
k_auxadditional data
Parameters
losline of sight structure
absloswfsabsorption LOS Wfs
f_monofrequency absoprtion grid
k_gridretrieval grid
orderpolynomial order
flowlower frequency limit of fit
fhighupper frequency limit of fit
Author
Patrick Eriksson
Date
2000-09-15

Adapted to MTL.

Date
2001-01-05
Author
Stefan Buehler

Made it possible to have arbitrary frequency limits.

Date
2001-01-21
Author
Patrick Eriksson

Definition at line 1465 of file m_wfs.cc.

◆ k_species()

void k_species ( Matrix k,
ArrayOfString k_names,
Matrix k_aux,
const Los los,
const ArrayOfMatrix absloswfs,
const Vector p_abs,
const Vector t_abs,
const TagGroups tags,
const ArrayOfMatrix abs_per_tg,
const Matrix vmrs,
const Vector k_grid,
const ArrayOfIndex tg_nr,
const String unit 
)

Species WFs for one or several species.

Calculates semi-analytical WFs for one or several species using precalculated absorption LOS WFs.

The expression used are described in sub-section 5 of the AUG section "Atmospheric WFs".

The avaliable units are 1 fractions of linearisation state 2 volume mixing ratio 3 number density

Return values
kweighting function matrix
k_namesidentity name(s)
k_auxadditional data
Parameters
losline of sight structure
absloswfsabsorption LOS Wfs
p_abspressure grid for abs. calculations
t_abstemperatures at p_abs
tagsall tags
abs_per_tgabsorption for each tag
vmrsVMR profiles at p_abs
k_gridretrieval grid
tg_nrWFs are calculated for these tag index
unitunit for the WFs (see above)
Author
Patrick Eriksson
Date
2000-09-15

Adapted to MTL.

Date
2001-01-05
Author
Stefan Buehler

Definition at line 1244 of file m_wfs.cc.

◆ k_temp_nohydro()

void k_temp_nohydro ( Matrix k,
ArrayOfString k_names,
Matrix k_aux,
const TagGroups tag_groups,
const Los los,
const ArrayOfMatrix absloswfs,
const Vector f_mono,
const Vector p_abs,
const Vector t_abs,
const Vector n2_abs,
const Vector h2o_abs,
const Matrix vmrs,
const ArrayOfArrayOfLineRecord lines_per_tg,
const ArrayOfLineshapeSpec lineshape,
const Matrix abs,
const ArrayOfMatrix trans,
const Vector e_ground,
const Vector k_grid,
const ArrayOfString cont_description_names,
const ArrayOfVector cont_description_parameters,
const ArrayOfString cont_description_models 
)

Temparature WFs without hydrostatic eq.

Calculates temperature 1D weighting functions WITHOUT including hydrostatic equilibrium. The function uses precalculated absorption LOS WFs, while source function LOS WFs are calculated inside the function.

The expression used are described in sub-section 7 of the AUG section "Atmospheric WFs".

Return values
kweighting function matrix
k_namesidentity name(s)
k_auxadditional data
Parameters
tag_groupsThe list of tag groups
losline of sight structure
absloswfsabsorption LOS Wfs
f_monofrequency absorption grid
p_abspressure grid for abs. calculations
t_abstemperatures at p_abs
vmrsVMR profiles at p_abs
lines_per_tglines tag sorted
lineshapelineshape specifications: function, norm, cutoff
abstotal absorption
transtransmissions
e_groundground emissivity
k_gridretrieval grid
cont_description_namesnames of different continuum models
cont_description_parameterscontinuum parameters for the models listed in cont_description_names
Author
Patrick Eriksson
Date
2000-09-15

Definition at line 1701 of file m_wfs.cc.

◆ kb_spectro()

void kb_spectro ( Matrix kb,
ArrayOfString kb_names,
Matrix ,
Matrix S_S,
const TagGroups wfss_tgs,
const TagGroups tgs,
const Vector f_mono,
const Vector p_abs,
const Vector t_abs,
const Vector h2o_abs,
const Matrix vmrs,
const ArrayOfArrayOfLineRecord lines_per_tg,
const ArrayOfLineshapeSpec lineshape,
const Los los,
const ArrayOfMatrix absweight,
const Index IndexPar,
const String StrPar 
)

Spectroscopic parameters weighting function.

Calculates temperature 1D weighting functions for the spectroscopic parameters The function uses precalculated absorption LOS WFs

The expression used are described in sub-section 7 of the AUG section "Atmospheric WFs".

Return values
kbweighting function matrix
kb_namesidentity name(s)
kb_auxadditional data
S_Smatrix keeping the spectrposcopic parameters uncertainties
Parameters
wfss_tgslist of the tag groups to calculate the spectro weighting function this is useful when the number of lines is large and lines of one species have to be ignored
tgsthe list of tag groups
f_monofrequency absorption grid
p_abspressure grid for abs. calculations
t_abstemperatures at p_abs
h2o_absfor h2o absorption
vmrsVMR profiles at p_abs
lines_per_tglines tag sorted
lineshapelineshape specifications: function, norm, cutoff
losline of sight structure
absweightweight for absorption LOS Wfs
IndexParindex for the spectroscopic parameter
StrParname of the spectroscopic parameter
Author
Carmen Verdes
Date
2003-04-08

Definition at line 1919 of file m_wfs.cc.

◆ kbAllocate()

void kbAllocate ( Matrix kb,
ArrayOfString kb_names,
ArrayOfIndex kb_lengths,
Matrix kb_aux,
const Vector y,
const String y_name,
const Index ni,
const Index nx 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2001-01-21

Definition at line 3795 of file m_wfs.cc.

◆ kbAppend()

void kbAppend ( Matrix kb,
ArrayOfString kb_names,
ArrayOfIndex kb_lengths,
Matrix kb_aux,
const Matrix k,
const ArrayOfString k_names,
const Matrix k_aux 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2000-?-?

Definition at line 3741 of file m_wfs.cc.

◆ kbInit()

void kbInit ( Matrix kb,
ArrayOfString kb_names,
ArrayOfIndex kb_lengths,
Matrix kb_aux 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2000-?-?

Definition at line 3704 of file m_wfs.cc.

◆ kbPutInK()

void kbPutInK ( Matrix kb,
ArrayOfString kb_names,
ArrayOfIndex kb_lengths,
Matrix kb_aux,
const Matrix k,
const ArrayOfString k_names,
const Matrix k_aux 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2001-01-21

Definition at line 3883 of file m_wfs.cc.

◆ kCalibration()

void kCalibration ( Matrix k,
ArrayOfString k_names,
Matrix k_aux,
const Vector y,
const Vector f_mono,
const Vector y0,
const String  
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2001-01-21

Definition at line 3603 of file m_wfs.cc.

◆ kContAbs()

void kContAbs ( Matrix k,
ArrayOfString k_names,
Matrix k_aux,
const Los los,
const ArrayOfMatrix absloswfs,
const Vector f_mono,
const Vector k_grid,
const Index order,
const Numeric f_low,
const Numeric f_high,
const String l_unit 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2000-01-21

Definition at line 2847 of file m_wfs.cc.

◆ kEground()

void kEground ( Matrix k,
ArrayOfString k_names,
Matrix k_aux,
const Vector za_pencil,
const Vector f_mono,
const Index emission,
const Vector y_space,
const Vector e_ground,
const Numeric t_ground,
const Los los,
const ArrayOfMatrix source,
const ArrayOfMatrix trans,
const Index single_e 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2001-09-18

Definition at line 3449 of file m_wfs.cc.

◆ kFrequencyOffSet()

void kFrequencyOffSet ( Matrix k,
ArrayOfString k_names,
Matrix k_aux,
const TagGroups tgs,
const Vector f_mono,
const Vector p_abs,
const Vector t_abs,
const Vector n2_abs,
const Vector h2o_abs,
const Matrix vmrs,
const ArrayOfArrayOfLineRecord lines_per_tg,
const ArrayOfLineshapeSpec lineshape,
const Vector e_ground,
const Index emission,
const ArrayOfString cont_description_names,
const ArrayOfVector cont_description_parameters,
const ArrayOfString cont_description_models,
const Los los,
const Numeric t_ground,
const Vector y_space,
const Vector y,
const Numeric delta,
const String f_unit 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2002-07-17

Definition at line 3243 of file m_wfs.cc.

◆ kManual()

void kManual ( Matrix k,
ArrayOfString k_names,
Matrix k_aux,
const Vector y0,
const Vector y,
const String name,
const Numeric delta,
const Numeric grid,
const Numeric apriori 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2000-?-?

Adapted to MTL.

Date
2001-01-06
Author
Stefan Buehler

Definition at line 3648 of file m_wfs.cc.

◆ kPointingOffSet()

void kPointingOffSet ( Matrix k,
ArrayOfString k_names,
Matrix k_aux,
const Numeric z_plat,
const Vector za_pencil,
const Numeric l_step,
const Vector p_abs,
const Vector z_abs,
const Vector t_abs,
const Vector f_mono,
const Index refr,
const Index refr_lfac,
const Vector refr_index,
const Numeric z_ground,
const Numeric r_geoid,
const Matrix abs,
const Index emission,
const Vector y_space,
const Vector e_ground,
const Numeric t_ground,
const Vector y,
const Numeric delta 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2001-01-21

Definition at line 3359 of file m_wfs.cc.

◆ kSpecies()

void kSpecies ( Matrix k,
ArrayOfString k_names,
Matrix k_aux,
const Los los,
const ArrayOfMatrix absloswfs,
const Vector p_abs,
const Vector t_abs,
const TagGroups wfs_tgs,
const ArrayOfMatrix abs_per_tg,
const Matrix vmrs,
const Vector k_grid,
const String unit 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2000-?-?

Definition at line 2778 of file m_wfs.cc.

◆ kSpeciesSingle()

void kSpeciesSingle ( Matrix k,
ArrayOfString k_names,
Matrix k_aux,
const Los los,
const ArrayOfMatrix absloswfs,
const Vector p_abs,
const Vector t_abs,
const TagGroups wfs_tgs,
const ArrayOfMatrix abs_per_tg,
const Matrix vmrs,
const Vector k_grid,
const String tg,
const String unit 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2000-?-?

Definition at line 2812 of file m_wfs.cc.

◆ kSpectro()

void kSpectro ( Matrix k,
ArrayOfString k_names,
Matrix ,
Matrix S_S,
const TagGroups wfss_tgs,
const TagGroups tgs,
const Vector f_mono,
const Vector p_abs,
const Vector t_abs,
const Vector z_abs,
const Vector h2o_abs,
const Matrix vmrs,
const ArrayOfArrayOfLineRecord lines_per_tg,
const ArrayOfLineshapeSpec lineshape,
const Los los,
const ArrayOfMatrix absloswfs,
const Index kw_intens,
const Index kw_position,
const Index kw_agam,
const Index kw_sgam,
const Index kw_nair,
const Index kw_nself,
const Index kw_pSift 
)

Spectroscopic parameters weighting function.

Calculates temperature 1D weighting functions for the spectroscopic parameters The function uses precalculated absorption LOS WFs.

The expression used are described in sub-section 7 of the AUG section "Atmospheric WFs". See the the online help (arts -d FUNCTION_NAME)

Return values
kweighting function matrix
k_namesidentity name(s)
k_auxadditional data
S_Smatrix keeping the spectrposcopic parameters uncertainties
Parameters
wfss_tgslist of the tag groups to calculate the spectro weighting function this is useful when the number of lines is large and lines of one species have to be ignored
tgsthe list of tag groups
f_monofrequency absorption grid
p_abspressure grid for abs. calculations
t_abstemperatures at p_abs
z_absaltitude grid for abs. calculations
h2o_absfor h2o abs.
vmrsVMR profiles at p_abs
lines_per_tglines tag sorted
lineshapelineshape specifications: function, norm, cutoff
losline of sight structure
absloswfsabsorption LOS Wfs
Author
Carmen Verdes
Date
2002.10.1

Definition at line 2268 of file m_wfs.cc.

◆ kTemp()

void kTemp ( Matrix k,
ArrayOfString k_names,
Matrix k_aux,
const TagGroups tgs,
const Vector f_mono,
const Vector p_abs,
const Vector t_abs,
const Vector n2_abs,
const Vector h2o_abs,
const Matrix vmrs,
const Matrix abs0,
const ArrayOfArrayOfLineRecord lines_per_tg,
const ArrayOfLineshapeSpec lineshape,
const Vector e_ground,
const Index emission,
const Vector k_grid,
const ArrayOfString cont_description_names,
const ArrayOfVector cont_description_parameters,
const ArrayOfString cont_description_models,
const Los los,
const ArrayOfMatrix absloswfs,
const ArrayOfMatrix trans,
const Numeric z_plat,
const Vector za,
const Numeric l_step,
const Vector z_abs,
const Index refr,
const Index refr_lfac,
const Vector refr_index,
const String refr_model,
const Numeric z_ground,
const Numeric t_ground,
const Vector y_space,
const Numeric r_geoid,
const Vector hse,
const Index kw_hse,
const Index kw_fast 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2000-04-18

Definition at line 2881 of file m_wfs.cc.

◆ kxAllocate()

void kxAllocate ( Matrix kx,
ArrayOfString kx_names,
ArrayOfIndex kx_lengths,
Matrix kx_aux,
const Vector y,
const String ,
const Index ni,
const Index nx 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2001-01-21

Definition at line 3761 of file m_wfs.cc.

◆ kxAppend()

void kxAppend ( Matrix kx,
ArrayOfString kx_names,
ArrayOfIndex kx_lengths,
Matrix kx_aux,
const Matrix k,
const ArrayOfString k_names,
const Matrix k_aux 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2000-?-?

Definition at line 3721 of file m_wfs.cc.

◆ kxInit()

void kxInit ( Matrix kx,
ArrayOfString kx_names,
ArrayOfIndex kx_lengths,
Matrix kx_aux 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2000-?-?

Definition at line 3684 of file m_wfs.cc.

◆ kxPutInK()

void kxPutInK ( Matrix kx,
ArrayOfString kx_names,
ArrayOfIndex kx_lengths,
Matrix kx_aux,
const Matrix k,
const ArrayOfString k_names,
const Matrix k_aux 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Patrick Eriksson
Date
2001-01-21

Definition at line 3816 of file m_wfs.cc.

◆ p2grid()

void p2grid ( Vector grid,
const Vector pgrid 
)

Converts a pressure grid to a grid fitting the grid functions below.

-log(p) is used as altitude variable. The minus is included to get increasing values, a demand for the grid functions.

Return values
grid-log(pgrid)
Parameters
pgridpressure grid for some variable
Author
Patrick Eriksson
Date
2001-01-15

Definition at line 167 of file m_wfs.cc.

◆ sourceloswfs()

void sourceloswfs ( ArrayOfMatrix sourceloswfs,
const Los los,
const ArrayOfMatrix trans,
const Vector ,
const Vector e_ground 
)

Calculates source function LOS WFs,.

Main function for calulation of source function LOS WFs..

The expression used are described in sub-section 2.3 of the AUG section "Atmospheric WFs".

Return values
sourceloswfssource LOS WFs
Parameters
losline of sight structure
trtransmissions
e_groundground emissivity
Author
Patrick Eriksson
Date
2000-09-15

Definition at line 1154 of file m_wfs.cc.

◆ sourceloswfs_1pass()

void sourceloswfs_1pass ( Matrix k,
const Index start_index,
const Index stop_index,
const Matrix tr,
const Index ground,
const Vector e_ground 
)

Calculates source function LOS WFs for single pass cases.

Help function for sourceloswfs treating a single zenith angle.

This function covers cases where each point is passed once. That is 1D limb sounding and downward observatiuons are not covered.

The expression used are described in sub-section 3.1 of the AUG section "Atmospheric WFs".

Return values
ksource LOS WFs
Parameters
start_indexstart LOS index for iteration
stop_indexstop LOS index for iteration
trtransmissions
groundground flag
e_groundground emissivity
Author
Patrick Eriksson
Date
2000-09-15

Definition at line 940 of file m_wfs.cc.

◆ sourceloswfs_down()

void sourceloswfs_down ( Matrix k,
const Index start_index,
const Index stop_index,
const Matrix tr,
const Index ground,
const Vector e_ground 
)

Calculates source function LOS WFs for 1D downward looking observations.

Help function for sourceloswfs treating a single zenith angle.

The expression used are described in sub-section 3.3 of the AUG section "Atmospheric WFs".

Return values
kabs. LOS WFs
Parameters
start_indexstart LOS index for iteration
stop_indexstop LOS index for iteration
trtransmissions
groundground flag
e_groundground emissivity
Author
Patrick Eriksson
Date
2000-09-15

Definition at line 1085 of file m_wfs.cc.

◆ sourceloswfs_limb()

void sourceloswfs_limb ( Matrix k,
const Index start_index,
const Matrix tr,
const Index ground,
const Vector e_ground 
)

Calculates source function LOS WFs for 1D limb sounding.

Help function for sourceloswfs treating a single zenith angle.

The expression used are described in sub-section 3.2 of the AUG section "Atmospheric WFs".

Return values
kabs. LOS WFs
Parameters
start_indexstart LOS index for iteration
trtransmissions
groundground flag
e_groundground emissivity
Author
Patrick Eriksson
Date
2000-09-15

Definition at line 1020 of file m_wfs.cc.

◆ wfs_tgsDefine()

void wfs_tgsDefine ( TagGroups wfs_tag_groups,
const ArrayOfString tags 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Axel von Engeln
Date
2000-01-31

Definition at line 2574 of file m_wfs.cc.

◆ wfss_tgsDefine()

void wfss_tgsDefine ( TagGroups wfss_tgs,
const ArrayOfString tags 
)

See the the online help (arts -d FUNCTION_NAME)

Author
Carmen Verdes
Date
2000-01-31

Definition at line 2650 of file m_wfs.cc.

Variable Documentation

◆ BOLTZMAN_CONST

const Numeric BOLTZMAN_CONST
extern

◆ PLANCK_CONST

const Numeric PLANCK_CONST
extern