ARTS  2.4.0(git:4fb77825)
m_retrieval.cc File Reference
#include <algorithm>
#include "auto_md.h"
#include "covariance_matrix.h"
#include "jacobian.h"

Go to the source code of this file.

Functions

void check_and_add_block (CovarianceMatrix &covmat, const RetrievalQuantity &jq, const Index rq_index, const Index grid_dimensions, const Sparse &covmat_block, const Sparse &covmat_inv_block)
 
void add_scalar_variance (CovarianceMatrix &covmat, ArrayOfRetrievalQuantity &jacobian_quantities, Numeric var)
 
void ZFromPSimple (Vector &z_grid, const Vector &p_grid, const Verbosity &)
 WORKSPACE METHOD: ZFromPSimple. More...
 
void PFromZSimple (Vector &p_grid, const Vector &z_grid, const Verbosity &)
 WORKSPACE METHOD: PFromZSimple. More...
 
template<typename MatrixType >
void insert_elements (MatrixType &matrix, Index, Index, const ArrayOfIndex &row_indices, const ArrayOfIndex &column_indices, const Vector &elements)
 
template<>
void insert_elements (Matrix &matrix, Index m, Index n, const ArrayOfIndex &row_indices, const ArrayOfIndex &column_indices, const Vector &elements)
 
template<typename MatrixType >
void covmatDiagonal (MatrixType &block, MatrixType &block_inv, const Vector &vars, const Verbosity &)
 
template void covmatDiagonal (Matrix &block, Matrix &block_inv, const Vector &vars, const Verbosity &)
 
template void covmatDiagonal (Sparse &block, Sparse &block_inv, const Vector &vars, const Verbosity &)
 
template<typename MatrixType >
void covmat1DMarkov (MatrixType &block, MatrixType &block_inv, const Vector &grid, const Vector &sigma, const Numeric &lc, const Numeric &, const Verbosity &)
 
template void covmat1DMarkov (Matrix &block, Matrix &block_inv, const Vector &grid, const Vector &sigma, const Numeric &lc, const Numeric &, const Verbosity &)
 
template void covmat1DMarkov (Sparse &block, Sparse &block_inv, const Vector &grid, const Vector &sigma, const Numeric &lc, const Numeric &, const Verbosity &)
 
template<typename MatrixType >
void covmat1D (MatrixType &block, const Vector &grid1, const Vector &grid2, const Vector &sigma1, const Vector &sigma2, const Vector &lc1, const Vector &lc2, const Numeric &co, const String &fname, const Verbosity &)
 
template void covmat1D (Matrix &block, const Vector &grid1, const Vector &grid2, const Vector &sigma1, const Vector &sigma2, const Vector &lc1, const Vector &lc2, const Numeric &co, const String &fname, const Verbosity &)
 
template void covmat1D (Sparse &block, const Vector &grid1, const Vector &grid2, const Vector &sigma1, const Vector &sigma2, const Vector &lc1, const Vector &lc2, const Numeric &co, const String &fname, const Verbosity &)
 
template<typename MatrixType >
void covmat_seAddBlock (CovarianceMatrix &covmat_se, const MatrixType &block, const Index &i, const Index &j, const Verbosity &)
 
template void covmat_seAddBlock (CovarianceMatrix &covmat_se, const Matrix &block, const Index &i, const Index &j, const Verbosity &)
 
template void covmat_seAddBlock (CovarianceMatrix &covmat_se, const Sparse &block, const Index &i, const Index &j, const Verbosity &)
 
template<typename MatrixType >
void covmat_seAddInverseBlock (CovarianceMatrix &covmat_se, const MatrixType &inv_block, const Index &i, const Index &j, const Verbosity &)
 
template void covmat_seAddInverseBlock (CovarianceMatrix &covmat_se, const Matrix &block, const Index &i, const Index &j, const Verbosity &)
 
template void covmat_seAddInverseBlock (CovarianceMatrix &covmat_se, const Sparse &block, const Index &i, const Index &j, const Verbosity &)
 
template<typename MatrixType >
void setCovarianceMatrix (CovarianceMatrix &covmat, const MatrixType &block)
 
template<>
void setCovarianceMatrix (CovarianceMatrix &covmat, const CovarianceMatrix &block)
 
template<typename MatrixType >
void covmat_seSet (CovarianceMatrix &covmat, const MatrixType &block, const Verbosity &)
 
template void covmat_seSet (CovarianceMatrix &covmat, const CovarianceMatrix &block, const Verbosity &)
 
template void covmat_seSet (CovarianceMatrix &covmat, const Matrix &block, const Verbosity &)
 
template void covmat_seSet (CovarianceMatrix &covmat, const Sparse &block, const Verbosity &)
 
template<typename MatrixType >
void covmat_sxSet (CovarianceMatrix &covmat, const MatrixType &block, const Verbosity &)
 
template void covmat_sxSet (CovarianceMatrix &covmat, const CovarianceMatrix &block, const Verbosity &)
 
template void covmat_sxSet (CovarianceMatrix &covmat, const Matrix &block, const Verbosity &)
 
template void covmat_sxSet (CovarianceMatrix &covmat, const Sparse &block, const Verbosity &)
 
template<typename MatrixType >
void covmat_sxAddBlock (CovarianceMatrix &covmat_sx, const ArrayOfRetrievalQuantity &jq, const MatrixType &block, const Index &i, const Index &j, const Verbosity &)
 
template void covmat_sxAddBlock (CovarianceMatrix &, const ArrayOfRetrievalQuantity &, const Matrix &, const Index &, const Index &, const Verbosity &)
 
template void covmat_sxAddBlock (CovarianceMatrix &, const ArrayOfRetrievalQuantity &, const Sparse &, const Index &, const Index &, const Verbosity &)
 
template<typename MatrixType >
void covmat_sxAddInverseBlock (CovarianceMatrix &covmat_sx, const ArrayOfRetrievalQuantity &jq, const MatrixType &block_inv, const Index &i, const Index &j, const Verbosity &)
 
template void covmat_sxAddInverseBlock (CovarianceMatrix &, const ArrayOfRetrievalQuantity &, const Matrix &, const Index &, const Index &, const Verbosity &)
 
template void covmat_sxAddInverseBlock (CovarianceMatrix &, const ArrayOfRetrievalQuantity &, const Sparse &, const Index &, const Index &, const Verbosity &)
 
void covmat_sxExtractSqrtDiagonal (Vector &x_norm, const CovarianceMatrix &covmat_sx, const Verbosity &)
 WORKSPACE METHOD: covmat_sxExtractSqrtDiagonal. More...
 
void retrievalAddAbsSpecies (Workspace &ws, CovarianceMatrix &covmat_sx, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const Index &atmosphere_dim, const Sparse &covmat_block, const Sparse &covmat_inv_block, const Vector &p_grid, const Vector &lat_grid, const Vector &lon_grid, const Vector &rq_p_grid, const Vector &rq_lat_grid, const Vector &rq_lon_grid, const String &species, const String &mode, const Index &for_species_tag, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalAddAbsSpecies. More...
 
void retrievalAddFreqShift (Workspace &ws, CovarianceMatrix &covmat_sx, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const Sparse &covmat_block, const Sparse &covmat_inv_block, const Vector &f_grid, const Numeric &df, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalAddFreqShift. More...
 
void retrievalAddFreqStretch (Workspace &ws, CovarianceMatrix &covmat_sx, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const Vector &f_grid, const Sparse &covmat_block, const Sparse &covmat_inv_block, const Numeric &df, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalAddFreqStretch. More...
 
void retrievalAddCatalogParameter (Workspace &ws, CovarianceMatrix &covmat_sx, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const QuantumIdentifier &catalog_identity, const String &catalog_parameter, const Numeric &var, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalAddCatalogParameter. More...
 
void retrievalAddCatalogParameters (Workspace &ws, CovarianceMatrix &covmat_sx, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const Sparse &covmat_block, const Sparse &covmat_inv_block, const ArrayOfQuantumIdentifier &catalog_identities, const ArrayOfString &catalog_parameters, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalAddCatalogParameters. More...
 
void retrievalAddMagField (Workspace &ws, CovarianceMatrix &covmat_sx, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const Index &atmosphere_dim, const Sparse &covmat_block, const Sparse &covmat_inv_block, const Vector &p_grid, const Vector &lat_grid, const Vector &lon_grid, const Vector &rq_p_grid, const Vector &rq_lat_grid, const Vector &rq_lon_grid, const String &component, const Numeric &dB, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalAddMagField. More...
 
void retrievalAddPointingZa (Workspace &ws, CovarianceMatrix &covmat_sx, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const Sparse &covmat_block, const Sparse &covmat_inv_block, const Matrix &sensor_pos, const Vector &sensor_time, const Index &poly_order, const String &calcmode, const Numeric &dza, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalAddPointingZa. More...
 
void retrievalAddPolyfit (Workspace &ws, CovarianceMatrix &covmat_sx, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const Sparse &covmat_block, const Sparse &covmat_inv_block, const ArrayOfIndex &sensor_response_pol_grid, const Matrix &sensor_response_dlos_grid, const Matrix &sensor_pos, const Index &poly_order, const Index &no_pol_variation, const Index &no_los_variation, const Index &no_mblock_variation, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalAddPolyfit. More...
 
void retrievalAddScatSpecies (Workspace &ws, CovarianceMatrix &covmat_sx, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const Index &atmosphere_dim, const Sparse &covmat_block, const Sparse &covmat_inv_block, const Vector &p_grid, const Vector &lat_grid, const Vector &lon_grid, const Vector &rq_p_grid, const Vector &rq_lat_grid, const Vector &rq_lon_grid, const String &species, const String &quantity, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalAddScatSpecies. More...
 
void retrievalAddSinefit (Workspace &ws, CovarianceMatrix &covmat_sx, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const Sparse &covmat_block, const Sparse &covmat_inv_block, const ArrayOfIndex &sensor_response_pol_grid, const Matrix &sensor_response_dlos_grid, const Matrix &sensor_pos, const Vector &period_lengths, const Index &no_pol_variation, const Index &no_los_variation, const Index &no_mblock_variation, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalAddSinefit. More...
 
void retrievalAddSpecialSpecies (Workspace &ws, CovarianceMatrix &covmat_sx, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const Index &atmosphere_dim, const Sparse &covmat_block, const Sparse &covmat_inv_block, const Vector &p_grid, const Vector &lat_grid, const Vector &lon_grid, const Vector &rq_p_grid, const Vector &rq_lat_grid, const Vector &rq_lon_grid, const String &species, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalAddSpecialSpecies. More...
 
void retrievalAddWind (Workspace &ws, CovarianceMatrix &covmat_sx, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const Index &atmosphere_dim, const Sparse &covmat_block, const Sparse &covmat_inv_block, const Vector &p_grid, const Vector &lat_grid, const Vector &lon_grid, const Vector &rq_p_grid, const Vector &rq_lat_grid, const Vector &rq_lon_grid, const String &component, const Numeric &dfrequency, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalAddWind. More...
 
void retrievalAddTemperature (Workspace &ws, CovarianceMatrix &covmat_sx, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const Index &atmosphere_dim, const Sparse &covmat_block, const Sparse &covmat_inv_block, const Vector &p_grid, const Vector &lat_grid, const Vector &lon_grid, const Vector &rq_p_grid, const Vector &rq_lat_grid, const Vector &rq_lon_grid, const String &hse, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalAddTemperature. More...
 
void retrievalAddSurfaceQuantity (Workspace &ws, CovarianceMatrix &covmat_sx, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const Sparse &covmat_block, const Sparse &covmat_inv_block, const Index &atmosphere_dim, const Vector &lat_grid, const Vector &lon_grid, const Vector &rq_lat_grid, const Vector &rq_lon_grid, const String &quantity, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalAddSurfaceQuantity. More...
 
void retrievalDefClose (Workspace &ws, Index &jacobian_do, Agenda &jacobian_agenda, Index &retrieval_checked, const CovarianceMatrix &covmat_sx, const ArrayOfRetrievalQuantity &jacobian_quantities, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalDefClose. More...
 
void retrievalDefInit (CovarianceMatrix &covmat_se, CovarianceMatrix &covmat_sx, Sparse &covmat_block, Sparse &covmat_inv_block, ArrayOfRetrievalQuantity &jacobian_quantities, Agenda &jacobian_agenda, const Index &initialize_jacobian, const Verbosity &verbosity)
 WORKSPACE METHOD: retrievalDefInit. More...
 
void retrievalErrorsExtract (Vector &retrieval_eo, Vector &retrieval_ss, const Matrix &covmat_so, const Matrix &covmat_ss, const Verbosity &)
 WORKSPACE METHOD: retrievalErrorsExtract. More...
 

Function Documentation

◆ add_scalar_variance()

◆ check_and_add_block()

◆ covmat1D() [1/3]

template void covmat1D ( Matrix &  block,
const Vector &  grid1,
const Vector &  grid2,
const Vector &  sigma1,
const Vector &  sigma2,
const Vector &  lc1,
const Vector &  lc2,
const Numeric &  co,
const String &  fname,
const Verbosity &   
)

◆ covmat1D() [2/3]

template<typename MatrixType >
void covmat1D ( MatrixType &  block,
const Vector &  grid1,
const Vector &  grid2,
const Vector &  sigma1,
const Vector &  sigma2,
const Vector &  lc1,
const Vector &  lc2,
const Numeric &  co,
const String &  fname,
const Verbosity &   
)

Definition at line 251 of file m_retrieval.cc.

References abs, ConstVectorView::nelem(), and ARTS::Var::x().

Referenced by covmat1D_sg_Matrix_g(), and covmat1D_sg_Sparse_g().

◆ covmat1D() [3/3]

template void covmat1D ( Sparse &  block,
const Vector &  grid1,
const Vector &  grid2,
const Vector &  sigma1,
const Vector &  sigma2,
const Vector &  lc1,
const Vector &  lc2,
const Numeric &  co,
const String &  fname,
const Verbosity &   
)

◆ covmat1DMarkov() [1/3]

template void covmat1DMarkov ( Matrix &  block,
Matrix &  block_inv,
const Vector &  grid,
const Vector &  sigma,
const Numeric &  lc,
const Numeric &  ,
const Verbosity &   
)

◆ covmat1DMarkov() [2/3]

template<typename MatrixType >
void covmat1DMarkov ( MatrixType &  block,
MatrixType &  block_inv,
const Vector &  grid,
const Vector &  sigma,
const Numeric &  lc,
const Numeric &  ,
const Verbosity &   
)

◆ covmat1DMarkov() [3/3]

template void covmat1DMarkov ( Sparse &  block,
Sparse &  block_inv,
const Vector &  grid,
const Vector &  sigma,
const Numeric &  lc,
const Numeric &  ,
const Verbosity &   
)

◆ covmat_seAddBlock() [1/3]

template void covmat_seAddBlock ( CovarianceMatrix &  covmat_se,
const Matrix &  block,
const Index &  i,
const Index &  j,
const Verbosity &   
)

◆ covmat_seAddBlock() [2/3]

template<typename MatrixType >
void covmat_seAddBlock ( CovarianceMatrix &  covmat_se,
const MatrixType &  block,
const Index &  i,
const Index &  j,
const Verbosity &   
)

◆ covmat_seAddBlock() [3/3]

template void covmat_seAddBlock ( CovarianceMatrix &  covmat_se,
const Sparse &  block,
const Index &  i,
const Index &  j,
const Verbosity &   
)

◆ covmat_seAddInverseBlock() [1/3]

template void covmat_seAddInverseBlock ( CovarianceMatrix &  covmat_se,
const Matrix &  block,
const Index &  i,
const Index &  j,
const Verbosity &   
)

◆ covmat_seAddInverseBlock() [2/3]

template<typename MatrixType >
void covmat_seAddInverseBlock ( CovarianceMatrix &  covmat_se,
const MatrixType &  inv_block,
const Index &  i,
const Index &  j,
const Verbosity &   
)

◆ covmat_seAddInverseBlock() [3/3]

template void covmat_seAddInverseBlock ( CovarianceMatrix &  covmat_se,
const Sparse &  block,
const Index &  i,
const Index &  j,
const Verbosity &   
)

◆ covmat_seSet() [1/4]

template void covmat_seSet ( CovarianceMatrix &  covmat,
const CovarianceMatrix &  block,
const Verbosity &   
)

◆ covmat_seSet() [2/4]

template void covmat_seSet ( CovarianceMatrix &  covmat,
const Matrix &  block,
const Verbosity &   
)

◆ covmat_seSet() [3/4]

template<typename MatrixType >
void covmat_seSet ( CovarianceMatrix &  covmat,
const MatrixType &  block,
const Verbosity &   
)

◆ covmat_seSet() [4/4]

template void covmat_seSet ( CovarianceMatrix &  covmat,
const Sparse &  block,
const Verbosity &   
)

◆ covmat_sxAddBlock() [1/3]

template void covmat_sxAddBlock ( CovarianceMatrix &  ,
const ArrayOfRetrievalQuantity &  ,
const Matrix &  ,
const Index &  ,
const Index &  ,
const Verbosity &   
)

◆ covmat_sxAddBlock() [2/3]

template void covmat_sxAddBlock ( CovarianceMatrix &  ,
const ArrayOfRetrievalQuantity &  ,
const Sparse &  ,
const Index &  ,
const Index &  ,
const Verbosity &   
)

◆ covmat_sxAddBlock() [3/3]

template<typename MatrixType >
void covmat_sxAddBlock ( CovarianceMatrix &  covmat_sx,
const ArrayOfRetrievalQuantity &  jq,
const MatrixType &  block,
const Index &  i,
const Index &  j,
const Verbosity &   
)

◆ covmat_sxAddInverseBlock() [1/3]

template void covmat_sxAddInverseBlock ( CovarianceMatrix &  ,
const ArrayOfRetrievalQuantity &  ,
const Matrix &  ,
const Index &  ,
const Index &  ,
const Verbosity &   
)

◆ covmat_sxAddInverseBlock() [2/3]

template void covmat_sxAddInverseBlock ( CovarianceMatrix &  ,
const ArrayOfRetrievalQuantity &  ,
const Sparse &  ,
const Index &  ,
const Index &  ,
const Verbosity &   
)

◆ covmat_sxAddInverseBlock() [3/3]

template<typename MatrixType >
void covmat_sxAddInverseBlock ( CovarianceMatrix &  covmat_sx,
const ArrayOfRetrievalQuantity &  jq,
const MatrixType &  block_inv,
const Index &  i,
const Index &  j,
const Verbosity &   
)

◆ covmat_sxExtractSqrtDiagonal()

void covmat_sxExtractSqrtDiagonal ( Vector &  x_norm,
const CovarianceMatrix &  covmat_sx,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: covmat_sxExtractSqrtDiagonal.

Extract the square root of the diagonal of the state space covariance matrix. This function extracts the diagonal of the state space covariance matrix covmat_sx* and computes its square root. The resulting vector can then be used as x_norm argument for the OEM method to avoid scaling problems.

Author
Simon Pfreundschuh
Parameters
[out]x_normGeneric output
[in]covmat_sxWS Input

Definition at line 758 of file m_retrieval.cc.

References ARTS::Var::covmat_sx(), ConstVectorView::nelem(), and sqrt().

Referenced by covmat_sxExtractSqrtDiagonal_g().

◆ covmat_sxSet() [1/4]

template void covmat_sxSet ( CovarianceMatrix &  covmat,
const CovarianceMatrix &  block,
const Verbosity &   
)

◆ covmat_sxSet() [2/4]

template void covmat_sxSet ( CovarianceMatrix &  covmat,
const Matrix &  block,
const Verbosity &   
)

◆ covmat_sxSet() [3/4]

template<typename MatrixType >
void covmat_sxSet ( CovarianceMatrix &  covmat,
const MatrixType &  block,
const Verbosity &   
)

◆ covmat_sxSet() [4/4]

template void covmat_sxSet ( CovarianceMatrix &  covmat,
const Sparse &  block,
const Verbosity &   
)

◆ covmatDiagonal() [1/3]

template void covmatDiagonal ( Matrix &  block,
Matrix &  block_inv,
const Vector &  vars,
const Verbosity &   
)

◆ covmatDiagonal() [2/3]

template<typename MatrixType >
void covmatDiagonal ( MatrixType &  block,
MatrixType &  block_inv,
const Vector &  vars,
const Verbosity &   
)

◆ covmatDiagonal() [3/3]

template void covmatDiagonal ( Sparse &  block,
Sparse &  block_inv,
const Vector &  vars,
const Verbosity &   
)

◆ insert_elements() [1/2]

template<>
void insert_elements ( Matrix &  matrix,
Index  m,
Index  n,
const ArrayOfIndex &  row_indices,
const ArrayOfIndex &  column_indices,
const Vector &  elements 
)

◆ insert_elements() [2/2]

template<typename MatrixType >
void insert_elements ( MatrixType &  matrix,
Index  ,
Index  ,
const ArrayOfIndex &  row_indices,
const ArrayOfIndex &  column_indices,
const Vector &  elements 
)

Definition at line 107 of file m_retrieval.cc.

References Array< base >::nelem().

Referenced by covmatDiagonal().

◆ PFromZSimple()

void PFromZSimple ( Vector &  p_grid,
const Vector &  z_grid,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: PFromZSimple.

Simple conversion from altitude to pressure.

This function converts a vector of altitudes to an approximate vector of corresponding pressures. The formula used to convert altitide z to height <br> is: p = 10.0^(5.0 - z / 1600)

Note that all altitude values in the vector must be less than 120 km, <br> otherwise an error will be thrown.

Author
Simon Pfreundschuh
Parameters
[out]p_gridGeneric output
[in]z_gridGeneric Input

Definition at line 88 of file m_retrieval.cc.

References ConstVectorView::nelem(), ARTS::Var::p_grid(), and pow().

Referenced by PFromZSimple_g().

◆ retrievalAddAbsSpecies()

void retrievalAddAbsSpecies ( Workspace &  ws,
CovarianceMatrix &  covmat_sx,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const Index &  atmosphere_dim,
const Sparse &  covmat_block,
const Sparse &  covmat_inv_block,
const Vector &  p_grid,
const Vector &  lat_grid,
const Vector &  lon_grid,
const Vector &  g1,
const Vector &  g2,
const Vector &  g3,
const String &  species,
const String &  unit,
const Index &  for_species_tag,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalAddAbsSpecies.

Adds an absorption species to the retrieval quantities.

Similar to jacobianAddAbsSpecies but also sets the corresponding block in covmat_sx* to the matrices provided in covmat_block and covmat_inv_block. The dimensions of covmat_block are required to agree with the dimensions of the retrieval grid.

covmat_inv_block* must be either empty or the same dimension as covmat_block. If provided, this matrix will be used as the inverse for the covariance matrix block and numerical inversion of this block is thus avoided. Note, however, that this is only effective if this block is uncorrelated with any other retrieval quantity.

For number and order of elements added to x, see jacobianAddAbsSpecies.

Author
Simon Pfreundschuh
Parameters
[in,out]wsWorkspace
[in,out]covmat_sxWS Input/Output
[in,out]jacobian_quantitiesWS Input/Output
[in,out]jacobian_agendaWS Input/Output
[in]atmosphere_dimWS Input
[in]covmat_blockWS Input
[in]covmat_inv_blockWS Input
[in]p_gridWS Input
[in]lat_gridWS Input
[in]lon_gridWS Input
[in]g1Generic Input
[in]g2Generic Input
[in]g3Generic Input
[in]speciesGeneric Input
[in]unitGeneric Input (Default: "rel")
[in]for_species_tagGeneric Input (Default: "1")

Definition at line 771 of file m_retrieval.cc.

References ARTS::Var::atmosphere_dim(), check_and_add_block(), ARTS::Var::covmat_block(), ARTS::Var::covmat_inv_block(), ARTS::Var::covmat_sx(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianAddAbsSpecies(), ARTS::Var::lat_grid(), ARTS::Var::lon_grid(), ARTS::Var::p_grid(), and ARTS::Var::verbosity().

Referenced by retrievalAddAbsSpecies_g().

◆ retrievalAddCatalogParameter()

void retrievalAddCatalogParameter ( Workspace &  ws,
CovarianceMatrix &  covmat_sx,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const QuantumIdentifier &  catalog_identity,
const String &  catalog_parameter,
const Numeric &  var,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalAddCatalogParameter.

Similar to jacobianAddBasicCatalogParameter but also adds a corresponding block to covmat_sx with the given var as variance value.

For number and order of elements added to x, see jacobianAddBasicCatalogParameter.

Author
Simon Pfreundschuh
Parameters
[in,out]wsWorkspace
[in,out]covmat_sxWS Input/Output
[in,out]jacobian_quantitiesWS Input/Output
[in,out]jacobian_agendaWS Input/Output
[in]catalog_identityGeneric Input
[in]catalog_parameterGeneric Input
[in]varGeneric Input

Definition at line 848 of file m_retrieval.cc.

References add_scalar_variance(), ARTS::Var::covmat_sx(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianAddBasicCatalogParameter(), linalg::var(), and ARTS::Var::verbosity().

Referenced by retrievalAddCatalogParameter_g().

◆ retrievalAddCatalogParameters()

void retrievalAddCatalogParameters ( Workspace &  ws,
CovarianceMatrix &  covmat_sx,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const Sparse &  covmat_block,
const Sparse &  covmat_inv_block,
const ArrayOfQuantumIdentifier &  catalog_identities,
const ArrayOfString &  catalog_parameters,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalAddCatalogParameters.

Same as jacobianAddBasicCatalogParameters but also adds a new block to covmat_sx using the matrices in covmat_block and covmat_inv_block*.

If covmat_inv_block is non-empty, it is used as inverse for the added block which avoids its numerical computation.

For number and order of elements added to x, see jacobianAddBasicCatalogParameters.

Author
Simon Pfreundschuh
Parameters
[in,out]wsWorkspace
[in,out]covmat_sxWS Input/Output
[in,out]jacobian_quantitiesWS Input/Output
[in,out]jacobian_agendaWS Input/Output
[in]covmat_blockWS Input
[in]covmat_inv_blockWS Input
[in]catalog_identitiesGeneric Input
[in]catalog_parametersGeneric Input

Definition at line 865 of file m_retrieval.cc.

References check_and_add_block(), ARTS::Var::covmat_block(), ARTS::Var::covmat_inv_block(), ARTS::Var::covmat_sx(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianAddBasicCatalogParameters(), and ARTS::Var::verbosity().

Referenced by retrievalAddCatalogParameters_g().

◆ retrievalAddFreqShift()

void retrievalAddFreqShift ( Workspace &  ws,
CovarianceMatrix &  covmat_sx,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const Sparse &  covmat_block,
const Sparse &  covmat_inv_block,
const Vector &  f_grid,
const Numeric &  df,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalAddFreqShift.

Same as jacobianAddFreqShift but also adds the correlation block contained in covmat_block and covmat_inv_block to covmat_sx.

For number and order of elements added to x, see jacobianAddFreqShift.

Author
Simon Pfreundschuh
Parameters
[in,out]wsWorkspace
[in,out]covmat_sxWS Input/Output
[in,out]jacobian_quantitiesWS Input/Output
[in,out]jacobian_agendaWS Input/Output
[in]covmat_blockWS Input
[in]covmat_inv_blockWS Input
[in]f_gridWS Input
[in]dfGeneric Input (Default: "100e3")

Definition at line 810 of file m_retrieval.cc.

References check_and_add_block(), ARTS::Var::covmat_block(), ARTS::Var::covmat_inv_block(), ARTS::Var::covmat_sx(), ARTS::Var::f_grid(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianAddFreqShift(), and ARTS::Var::verbosity().

Referenced by retrievalAddFreqShift_g().

◆ retrievalAddFreqStretch()

void retrievalAddFreqStretch ( Workspace &  ws,
CovarianceMatrix &  covmat_sx,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const Vector &  f_grid,
const Sparse &  covmat_block,
const Sparse &  covmat_inv_block,
const Numeric &  df,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalAddFreqStretch.

Same as jacobianAddFreqShift but also adds the correlation block contained in covmat_block and covmat_inv_block to covmat_sx.

For number and order of elements added to x, see jacobianAddFreqStretch.

Author
Simon Pfreundschuh
Parameters
[in,out]wsWorkspace
[out]covmat_sxWS Output
[in,out]jacobian_quantitiesWS Input/Output
[in,out]jacobian_agendaWS Input/Output
[in]f_gridWS Input
[in]covmat_blockWS Input
[in]covmat_inv_blockWS Input
[in]dfGeneric Input (Default: "100e3")

Definition at line 829 of file m_retrieval.cc.

References check_and_add_block(), ARTS::Var::covmat_block(), ARTS::Var::covmat_inv_block(), ARTS::Var::covmat_sx(), ARTS::Var::f_grid(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianAddFreqStretch(), and ARTS::Var::verbosity().

Referenced by retrievalAddFreqStretch_g().

◆ retrievalAddMagField()

void retrievalAddMagField ( Workspace &  ws,
CovarianceMatrix &  covmat_sx,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const Index &  atmosphere_dim,
const Sparse &  covmat_block,
const Sparse &  covmat_inv_block,
const Vector &  p_grid,
const Vector &  lat_grid,
const Vector &  lon_grid,
const Vector &  g1,
const Vector &  g2,
const Vector &  g3,
const String &  component,
const Numeric &  dB,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalAddMagField.

Same as jacobianAddMagField but also adds a new block to covmat_sx using the matrices in covmat_block and covmat_inv_block.

If covmat_inv_block is non-empty, it is used as inverse for the added block which avoids its numerical computation.

For number and order of elements added to x, see jacobianAddMagField.

Author
Simon Pfreundschuh
Parameters
[in,out]wsWorkspace
[in,out]covmat_sxWS Input/Output
[in,out]jacobian_quantitiesWS Input/Output
[in,out]jacobian_agendaWS Input/Output
[in]atmosphere_dimWS Input
[in]covmat_blockWS Input
[in]covmat_inv_blockWS Input
[in]p_gridWS Input
[in]lat_gridWS Input
[in]lon_gridWS Input
[in]g1Generic Input
[in]g2Generic Input
[in]g3Generic Input
[in]componentGeneric Input (Default: "v")
[in]dBGeneric Input (Default: "1.0e-7")

Definition at line 889 of file m_retrieval.cc.

References ARTS::Var::atmosphere_dim(), check_and_add_block(), ARTS::Var::covmat_block(), ARTS::Var::covmat_inv_block(), ARTS::Var::covmat_sx(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianAddMagField(), ARTS::Var::lat_grid(), ARTS::Var::lon_grid(), ARTS::Var::p_grid(), and ARTS::Var::verbosity().

Referenced by retrievalAddMagField_g().

◆ retrievalAddPointingZa()

void retrievalAddPointingZa ( Workspace &  ws,
CovarianceMatrix &  covmat_sx,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const Sparse &  covmat_block,
const Sparse &  covmat_inv_block,
const Matrix &  sensor_pos,
const Vector &  sensor_time,
const Index &  poly_order,
const String &  calcmode,
const Numeric &  dza,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalAddPointingZa.

Same as jacobianAddPointingZa but also adds a new block to covmat_sx using the matrices in covmat_block and covmat_inv_block.

If covmat_inv_block is non-empty, it is used as inverse for the added block which avoids its numerical computation.

For number and order of elements added to x, see jacobianAddPointingZa.

Author
Simon Pfreundschuh
Parameters
[in,out]wsWorkspace
[in,out]covmat_sxWS Input/Output
[in,out]jacobian_quantitiesWS Input/Output
[in,out]jacobian_agendaWS Input/Output
[in]covmat_blockWS Input
[in]covmat_inv_blockWS Input
[in]sensor_posWS Input
[in]sensor_timeWS Input
[in]poly_orderGeneric Input (Default: "0")
[in]calcmodeGeneric Input (Default: "recalc")
[in]dzaGeneric Input (Default: "0.01")

Definition at line 926 of file m_retrieval.cc.

References check_and_add_block(), ARTS::Var::covmat_block(), ARTS::Var::covmat_inv_block(), ARTS::Var::covmat_sx(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianAddPointingZa(), ARTS::Var::sensor_pos(), ARTS::Var::sensor_time(), and ARTS::Var::verbosity().

Referenced by retrievalAddPointingZa_g().

◆ retrievalAddPolyfit()

void retrievalAddPolyfit ( Workspace &  ws,
CovarianceMatrix &  covmat_sx,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const Sparse &  covmat_block,
const Sparse &  covmat_inv_block,
const ArrayOfIndex &  sensor_response_pol_grid,
const Matrix &  sensor_response_dlos_grid,
const Matrix &  sensor_pos,
const Index &  poly_order,
const Index &  no_pol_variation,
const Index &  no_los_variation,
const Index &  no_mblock_variation,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalAddPolyfit.

Same as jacobianAddPolyfit but also adds a new block to covmat_sx using the matrices in covmat_block and covmat_inv_block.

If covmat_inv_block is non-empty, it is used as inverse for the added block which avoids its numerical computation.

For number and order of elements added to x, see jacobianAddPolyfit.

Author
Simon Pfreundschuh
Parameters
[in,out]wsWorkspace
[in,out]covmat_sxWS Input/Output
[in,out]jacobian_quantitiesWS Input/Output
[in,out]jacobian_agendaWS Input/Output
[in]covmat_blockWS Input
[in]covmat_inv_blockWS Input
[in]sensor_response_pol_gridWS Input
[in]sensor_response_dlos_gridWS Input
[in]sensor_posWS Input
[in]poly_orderGeneric Input
[in]no_pol_variationGeneric Input (Default: "0")
[in]no_los_variationGeneric Input (Default: "0")
[in]no_mblock_variationGeneric Input (Default: "0")

Definition at line 955 of file m_retrieval.cc.

References check_and_add_block(), ARTS::Var::covmat_block(), ARTS::Var::covmat_inv_block(), ARTS::Var::covmat_sx(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianAddPolyfit(), ARTS::Var::sensor_pos(), ARTS::Var::sensor_response_dlos_grid(), ARTS::Var::sensor_response_pol_grid(), and ARTS::Var::verbosity().

Referenced by retrievalAddPolyfit_g().

◆ retrievalAddScatSpecies()

void retrievalAddScatSpecies ( Workspace &  ws,
CovarianceMatrix &  covmat_sx,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const Index &  atmosphere_dim,
const Sparse &  covmat_block,
const Sparse &  covmat_inv_block,
const Vector &  p_grid,
const Vector &  lat_grid,
const Vector &  lon_grid,
const Vector &  g1,
const Vector &  g2,
const Vector &  g3,
const String &  species,
const String &  quantity,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalAddScatSpecies.

Same as jacobianAddPolyfit but also adds a new block to covmat_sx using the matrices in covmat_block and covmat_inv_block.

If covmat_inv_block is non-empty, it is used as inverse for the added block which avoids its numerical computation.

For number and order of elements added to x, see jacobianAddScatSpecies.

Author
Simon Pfreundschuh
Parameters
[in,out]wsWorkspace
[in,out]covmat_sxWS Input/Output
[in,out]jacobian_quantitiesWS Input/Output
[in,out]jacobian_agendaWS Input/Output
[in]atmosphere_dimWS Input
[in]covmat_blockWS Input
[in]covmat_inv_blockWS Input
[in]p_gridWS Input
[in]lat_gridWS Input
[in]lon_gridWS Input
[in]g1Generic Input
[in]g2Generic Input
[in]g3Generic Input
[in]speciesGeneric Input
[in]quantityGeneric Input

Definition at line 991 of file m_retrieval.cc.

References ARTS::Var::atmosphere_dim(), check_and_add_block(), ARTS::Var::covmat_block(), ARTS::Var::covmat_inv_block(), ARTS::Var::covmat_sx(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianAddScatSpecies(), ARTS::Var::lat_grid(), ARTS::Var::lon_grid(), ARTS::Var::p_grid(), and ARTS::Var::verbosity().

Referenced by retrievalAddScatSpecies_g().

◆ retrievalAddSinefit()

void retrievalAddSinefit ( Workspace &  ws,
CovarianceMatrix &  covmat_sx,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const Sparse &  covmat_block,
const Sparse &  covmat_inv_block,
const ArrayOfIndex &  sensor_response_pol_grid,
const Matrix &  sensor_response_dlos_grid,
const Matrix &  sensor_pos,
const Vector &  period_lengths,
const Index &  no_pol_variation,
const Index &  no_los_variation,
const Index &  no_mblock_variation,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalAddSinefit.

Same as jacobianAddSinefit but also adds a new block to covmat_sx using the matrices in covmat_block and covmat_inv_block.

If covmat_inv_block is non-empty, it is used as inverse for the added block which avoids its numerical computation.

For number and order of elements added to x, see jacobianAddSinefit.

Author
Simon Pfreundschuh
Parameters
[in,out]wsWorkspace
[in,out]covmat_sxWS Input/Output
[in,out]jacobian_quantitiesWS Input/Output
[in,out]jacobian_agendaWS Input/Output
[in]covmat_blockWS Input
[in]covmat_inv_blockWS Input
[in]sensor_response_pol_gridWS Input
[in]sensor_response_dlos_gridWS Input
[in]sensor_posWS Input
[in]period_lengthsGeneric Input
[in]no_pol_variationGeneric Input (Default: "0")
[in]no_los_variationGeneric Input (Default: "0")
[in]no_mblock_variationGeneric Input (Default: "0")

Definition at line 1028 of file m_retrieval.cc.

References check_and_add_block(), ARTS::Var::covmat_block(), ARTS::Var::covmat_inv_block(), ARTS::Var::covmat_sx(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianAddSinefit(), ConstVectorView::nelem(), ARTS::Var::sensor_pos(), ARTS::Var::sensor_response_dlos_grid(), ARTS::Var::sensor_response_pol_grid(), and ARTS::Var::verbosity().

Referenced by retrievalAddSinefit_g().

◆ retrievalAddSpecialSpecies()

void retrievalAddSpecialSpecies ( Workspace &  ws,
CovarianceMatrix &  covmat_sx,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const Index &  atmosphere_dim,
const Sparse &  covmat_block,
const Sparse &  covmat_inv_block,
const Vector &  p_grid,
const Vector &  lat_grid,
const Vector &  lon_grid,
const Vector &  g1,
const Vector &  g2,
const Vector &  g3,
const String &  species,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalAddSpecialSpecies.

Same as jacobianAddSpecialSpecies but also adds a new block to covmat_sx using the matrices in covmat_block and covmat_inv_block.

If covmat_inv_block is non-empty, it is used as inverse for the added block which avoids its numerical computation.

For number and order of elements added to x, see jacobianAddSpecialSpecies.

Author
Simon Pfreundschuh
Parameters
[in,out]wsWorkspace
[in,out]covmat_sxWS Input/Output
[in,out]jacobian_quantitiesWS Input/Output
[in,out]jacobian_agendaWS Input/Output
[in]atmosphere_dimWS Input
[in]covmat_blockWS Input
[in]covmat_inv_blockWS Input
[in]p_gridWS Input
[in]lat_gridWS Input
[in]lon_gridWS Input
[in]g1Generic Input
[in]g2Generic Input
[in]g3Generic Input
[in]speciesGeneric Input

Definition at line 1064 of file m_retrieval.cc.

References ARTS::Var::atmosphere_dim(), check_and_add_block(), ARTS::Var::covmat_block(), ARTS::Var::covmat_inv_block(), ARTS::Var::covmat_sx(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianAddSpecialSpecies(), ARTS::Var::lat_grid(), ARTS::Var::lon_grid(), ARTS::Var::p_grid(), and ARTS::Var::verbosity().

Referenced by retrievalAddSpecialSpecies_g().

◆ retrievalAddSurfaceQuantity()

void retrievalAddSurfaceQuantity ( Workspace &  ws,
CovarianceMatrix &  covmat_sx,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const Sparse &  covmat_block,
const Sparse &  covmat_inv_block,
const Index &  atmosphere_dim,
const Vector &  lat_grid,
const Vector &  lon_grid,
const Vector &  g1,
const Vector &  g2,
const String &  quantity,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalAddSurfaceQuantity.

Same as jacobianAddSurfaceQuantity but also adds a new block to covmat_sx using the matrices in covmat_block and covmat_inv_block.

If covmat_inv_block is non-empty, it is used as inverse for the added block which avoids its numerical computation.

For number and order of elements added to x, see jacobianAddSurfaceQuantity.

Author
Patrick Eriksson
Parameters
[in,out]wsWorkspace
[in,out]covmat_sxWS Input/Output
[in,out]jacobian_quantitiesWS Input/Output
[in,out]jacobian_agendaWS Input/Output
[in]covmat_blockWS Input
[in]covmat_inv_blockWS Input
[in]atmosphere_dimWS Input
[in]lat_gridWS Input
[in]lon_gridWS Input
[in]g1Generic Input
[in]g2Generic Input
[in]quantityGeneric Input

Definition at line 1171 of file m_retrieval.cc.

References ARTS::Var::atmosphere_dim(), check_and_add_block(), ARTS::Var::covmat_block(), ARTS::Var::covmat_inv_block(), ARTS::Var::covmat_sx(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianAddSurfaceQuantity(), ARTS::Var::lat_grid(), ARTS::Var::lon_grid(), and ARTS::Var::verbosity().

Referenced by retrievalAddSurfaceQuantity_g().

◆ retrievalAddTemperature()

void retrievalAddTemperature ( Workspace &  ws,
CovarianceMatrix &  covmat_sx,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const Index &  atmosphere_dim,
const Sparse &  covmat_block,
const Sparse &  covmat_inv_block,
const Vector &  p_grid,
const Vector &  lat_grid,
const Vector &  lon_grid,
const Vector &  g1,
const Vector &  g2,
const Vector &  g3,
const String &  hse,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalAddTemperature.

Same as jacobianAddTemperature but also adds a new block to covmat_sx using the matrices in covmat_block and covmat_inv_block.

If covmat_inv_block is non-empty, it is used as inverse for the added block which avoids its numerical computation.

For number and order of elements added to x, see jacobianAddTemperature.

Author
Simon Pfreundschuh
Parameters
[in,out]wsWorkspace
[in,out]covmat_sxWS Input/Output
[in,out]jacobian_quantitiesWS Input/Output
[in,out]jacobian_agendaWS Input/Output
[in]atmosphere_dimWS Input
[in]covmat_blockWS Input
[in]covmat_inv_blockWS Input
[in]p_gridWS Input
[in]lat_gridWS Input
[in]lon_gridWS Input
[in]g1Generic Input
[in]g2Generic Input
[in]g3Generic Input
[in]hseGeneric Input (Default: "on")

Definition at line 1136 of file m_retrieval.cc.

References ARTS::Var::atmosphere_dim(), check_and_add_block(), ARTS::Var::covmat_block(), ARTS::Var::covmat_inv_block(), ARTS::Var::covmat_sx(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianAddTemperature(), ARTS::Var::lat_grid(), ARTS::Var::lon_grid(), ARTS::Var::p_grid(), and ARTS::Var::verbosity().

Referenced by retrievalAddTemperature_g().

◆ retrievalAddWind()

void retrievalAddWind ( Workspace &  ws,
CovarianceMatrix &  covmat_sx,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const Index &  atmosphere_dim,
const Sparse &  covmat_block,
const Sparse &  covmat_inv_block,
const Vector &  p_grid,
const Vector &  lat_grid,
const Vector &  lon_grid,
const Vector &  g1,
const Vector &  g2,
const Vector &  g3,
const String &  component,
const Numeric &  dfrequency,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalAddWind.

Same as jacobianAddWind but also adds a new block to covmat_sx using the matrices in covmat_block and covmat_inv_block.

If covmat_inv_block is non-empty, it is used as inverse for the added block which avoids its numerical computation.

For number and order of elements added to x, see jacobianAddWind.

Author
Simon Pfreundschuh
Parameters
[in,out]wsWorkspace
[in,out]covmat_sxWS Input/Output
[in,out]jacobian_quantitiesWS Input/Output
[in,out]jacobian_agendaWS Input/Output
[in]atmosphere_dimWS Input
[in]covmat_blockWS Input
[in]covmat_inv_blockWS Input
[in]p_gridWS Input
[in]lat_gridWS Input
[in]lon_gridWS Input
[in]g1Generic Input
[in]g2Generic Input
[in]g3Generic Input
[in]componentGeneric Input (Default: "v")
[in]dfrequencyGeneric Input (Default: "0.1")

Definition at line 1099 of file m_retrieval.cc.

References ARTS::Var::atmosphere_dim(), check_and_add_block(), ARTS::Var::covmat_block(), ARTS::Var::covmat_inv_block(), ARTS::Var::covmat_sx(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianAddWind(), ARTS::Var::lat_grid(), ARTS::Var::lon_grid(), ARTS::Var::p_grid(), and ARTS::Var::verbosity().

Referenced by retrievalAddWind_g().

◆ retrievalDefClose()

void retrievalDefClose ( Workspace &  ws,
Index &  jacobian_do,
Agenda &  jacobian_agenda,
Index &  retrieval_checked,
const CovarianceMatrix &  covmat_sx,
const ArrayOfRetrievalQuantity &  jacobian_quantities,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalDefClose.

Closes the definition of retrieval quantities and correlations and prepares related WSVs for the retrieval.

This function calls jacobianClose and checks that the corvariance matrices are consistent with the Jacobian.

Author
Simon Pfreundschuh
Parameters
[in,out]wsWorkspace
[out]jacobian_doWS Output
[in,out]jacobian_agendaWS Input/Output
[out]retrieval_checkedWS Output
[in]covmat_sxWS Input
[in]jacobian_quantitiesWS Input

Definition at line 1204 of file m_retrieval.cc.

References ARTS::Var::covmat_sx(), jac_ranges_indices(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_do(), ARTS::Var::jacobian_quantities(), jacobianClose(), ARTS::Var::retrieval_checked(), and ARTS::Var::verbosity().

Referenced by retrievalDefClose_g().

◆ retrievalDefInit()

void retrievalDefInit ( CovarianceMatrix &  covmat_se,
CovarianceMatrix &  covmat_sx,
Sparse &  covmat_block,
Sparse &  covmat_inv_block,
ArrayOfRetrievalQuantity &  jacobian_quantities,
Agenda &  jacobian_agenda,
const Index &  initialize_jacobian,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalDefInit.

Begin retrieval definition section.

This function initialises all variables required for defining retrieval quantities and corresponding covariance matrices. By default, Jacobian quantities should be added withing the. retrieval definition section. If Jacobian quantities are defined separately initialize_jacobian must be set to 0, otherwise the quantities will be discarded.

Author
Simon Pfreundschuh
Parameters
[out]covmat_seWS Output
[out]covmat_sxWS Output
[out]covmat_blockWS Output
[out]covmat_inv_blockWS Output
[out]jacobian_quantitiesWS Output
[out]jacobian_agendaWS Output
[in]initialize_jacobianGeneric Input (Default: "1")

Definition at line 1234 of file m_retrieval.cc.

References ARTS::Var::covmat_block(), ARTS::Var::covmat_inv_block(), ARTS::Var::covmat_se(), ARTS::Var::covmat_sx(), ARTS::Var::jacobian_agenda(), ARTS::Var::jacobian_quantities(), jacobianInit(), and ARTS::Var::verbosity().

Referenced by retrievalDefInit_g().

◆ retrievalErrorsExtract()

void retrievalErrorsExtract ( Vector &  retrieval_eo,
Vector &  retrieval_ss,
const Matrix &  covmat_so,
const Matrix &  covmat_ss,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: retrievalErrorsExtract.

Extract retrieval error from covariance matrices.

Extracts the error estimates for the retrieved quantities from the covariance matrices for the error due to measurement noise covmat_so and the error due to limited resolution of the observation system covmat_ss and stores them in the vectors retrieval_eo and retrieval_ss, respectively. To etract these errors, first the convariance matrices of which the errors should be extracted have to be computed using the WSMs covmat_soCalc and covmat_ssCalc or set to be empty in order to be ignored. Note, however, that this will also set the corresponding error vector to be empty.

Author
Simon Pfreundschuh
Parameters
[out]retrieval_eoWS Output
[out]retrieval_ssWS Output
[in]covmat_soWS Input
[in]covmat_ssWS Input

Definition at line 1252 of file m_retrieval.cc.

References ARTS::Var::covmat_so(), ARTS::Var::covmat_ss(), ARTS::Var::retrieval_eo(), ARTS::Var::retrieval_ss(), and sqrt().

Referenced by retrievalErrorsExtract_g().

◆ setCovarianceMatrix() [1/2]

template<>
void setCovarianceMatrix ( CovarianceMatrix &  covmat,
const CovarianceMatrix &  block 
)

Definition at line 555 of file m_retrieval.cc.

◆ setCovarianceMatrix() [2/2]

template<typename MatrixType >
void setCovarianceMatrix ( CovarianceMatrix &  covmat,
const MatrixType &  block 
)

Definition at line 539 of file m_retrieval.cc.

References CovarianceMatrix::add_correlation().

Referenced by covmat_seSet(), and covmat_sxSet().

◆ ZFromPSimple()

void ZFromPSimple ( Vector &  z_grid,
const Vector &  p_grid,
const Verbosity &  verbosity 
)

WORKSPACE METHOD: ZFromPSimple.

Simple conversion from pressure to altitude.

This function converts a vector of pressure values to an approximate vector of corresponding heights. The formula used to convert pressure to height is: z = 16000 * (5.0 - log10(p))That is, a pressure is assumed to decrease by a factor of 10 every 16km.

Note that all pressure values in the vector must be greater than 0.01.

Author
Simon Pfreundschuh
Parameters
[out]z_gridGeneric output
[in]p_gridGeneric Input

Definition at line 74 of file m_retrieval.cc.

References ARTS::Var::p_grid().

Referenced by ZFromPSimple_g().