ARTS 2.5.11 (git: 725533f0)
|
Implements a propagation matrix field. More...
#include "energylevelmap.h"
#include "field.h"
#include "transmissionmatrix.h"
#include "workspace_ng.h"
Go to the source code of this file.
Typedefs | |
using | FieldOfTransmissionMatrix = Field3D< TransmissionMatrix > |
using | FieldOfPropagationMatrix = Field3D< PropagationMatrix > |
using | FieldOfStokesVector = Field3D< StokesVector > |
Functions | |
void | field_of_propagation (Workspace &ws, FieldOfPropagationMatrix &propmat_field, FieldOfStokesVector &absorption_field, FieldOfStokesVector &additional_source_field, const Index &stokes_dim, const Vector &f_grid, const Vector &p_grid, const Tensor3 &z_field, const Tensor3 &t_field, const EnergyLevelMap &nlte_field, const Tensor4 &vmr_field, const ArrayOfRetrievalQuantity &jacobian_quantities, const Agenda &propmat_clearsky_agenda) |
Creates a field of propagation matrices, absorption vectors, and source vectors. | |
FieldOfTransmissionMatrix | transmat_field_calc_from_propmat_field (const FieldOfPropagationMatrix &propmat_field, const Numeric &r=1.0) |
Get a field of transmission matrices from the propagation matrix field. | |
void | emission_from_propmat_field (Workspace &ws, ArrayOfRadiationVector &lvl_rad, ArrayOfRadiationVector &src_rad, ArrayOfTransmissionMatrix &lyr_tra, ArrayOfTransmissionMatrix &tot_tra, const FieldOfPropagationMatrix &propmat_field, const FieldOfStokesVector &absorption_field, const FieldOfStokesVector &additional_source_field, const Vector &f_grid, const Tensor3 &t_field, const EnergyLevelMap &nlte_field, const Ppath &ppath, const Agenda &iy_main_agenda, const Agenda &iy_space_agenda, const Agenda &iy_surface_agenda, const Agenda &iy_cloudbox_agenda, const Tensor3 &surface_props_data, const Verbosity &verbosity) |
Computes the radiation and transmission from fields of atmospheric propagation. | |
Implements a propagation matrix field.
This file contains internal code to speed up propagation field calculations by sacrificing memory and by interpolating from potentially coarser resolution.
Definition in file propmat_field.h.
using FieldOfPropagationMatrix = Field3D<PropagationMatrix> |
Definition at line 25 of file propmat_field.h.
using FieldOfStokesVector = Field3D<StokesVector> |
Definition at line 26 of file propmat_field.h.
Definition at line 24 of file propmat_field.h.
void emission_from_propmat_field | ( | Workspace & | ws, |
ArrayOfRadiationVector & | lvl_rad, | ||
ArrayOfRadiationVector & | src_rad, | ||
ArrayOfTransmissionMatrix & | lyr_tra, | ||
ArrayOfTransmissionMatrix & | tot_tra, | ||
const FieldOfPropagationMatrix & | propmat_field, | ||
const FieldOfStokesVector & | absorption_field, | ||
const FieldOfStokesVector & | additional_source_field, | ||
const Vector & | f_grid, | ||
const Tensor3 & | t_field, | ||
const EnergyLevelMap & | nlte_field, | ||
const Ppath & | ppath, | ||
const Agenda & | iy_main_agenda, | ||
const Agenda & | iy_space_agenda, | ||
const Agenda & | iy_surface_agenda, | ||
const Agenda & | iy_cloudbox_agenda, | ||
const Tensor3 & | surface_props_data, | ||
const Verbosity & | verbosity | ||
) |
Computes the radiation and transmission from fields of atmospheric propagation.
Only for 1D atmospheres for now.
Computes The forward simulations by interpolating the fields of radiative properties to the selected propagation path.
Not well-tested.
[in] | ws | A workspace |
[out] | lvl_rad | Level by level radiation |
[out] | src_rad | Level by level source function |
[out] | lyr_tra | Layered transmission |
[out] | tot_tra | Total transmission from layer to background |
[in] | propmat_field | 3D field of propagation matrices |
[in] | absorption_field | A 3D field of absorption vectors |
[in] | additional_source_field | A 3D field of source vectors |
[in] | f_grid | As WSV |
[in] | t_field | As WSV |
[in] | nlte_field | As WSV |
[in] | ppath | As WSV |
[in] | iy_main_agenda | As WSA |
[in] | iy_space_agenda | As WSA |
[in] | iy_surface_agenda | As WSA |
[in] | iy_cloudbox_agenda | As WSA |
[in] | surface_props_data | As WSV |
[in] | verbosity | Level of verbosity in underlying calls |
Definition at line 102 of file propmat_field.cc.
References a, ARTS_USER_ERROR_IF, cumulative_transmission(), Ppath::dim, Emission, Forward, get_iy_of_background(), get_stepwise_blackbody_radiation(), Ppath::gp_p, interp_atmfield_by_gp(), Ppath::lstep, Ppath::np, stepwise_source(), stepwise_transmission(), and update_radiation_vector().
Referenced by line_irradianceCalcForSingleSpeciesNonOverlappingLinesPseudo2D().
void field_of_propagation | ( | Workspace & | ws, |
FieldOfPropagationMatrix & | propmat_field, | ||
FieldOfStokesVector & | absorption_field, | ||
FieldOfStokesVector & | additional_source_field, | ||
const Index & | stokes_dim, | ||
const Vector & | f_grid, | ||
const Vector & | p_grid, | ||
const Tensor3 & | z_field, | ||
const Tensor3 & | t_field, | ||
const EnergyLevelMap & | nlte_field, | ||
const Tensor4 & | vmr_field, | ||
const ArrayOfRetrievalQuantity & | jacobian_quantities, | ||
const Agenda & | propmat_clearsky_agenda | ||
) |
Creates a field of propagation matrices, absorption vectors, and source vectors.
[in] | ws | A workspace |
[out] | propmat_field | A 3D field of propagation matrices |
[out] | absorption_field | A 3D field of absorption vectors |
[out] | additional_source_field | A 3D field of source vectors |
[in] | stokes_dim | As WSV |
[in] | f_grid | As WSV |
[in] | p_grid | As WSV |
[in] | z_field | As WSV |
[in] | t_field | As WSV |
[in] | nlte_field | As WSV |
[in] | vmr_field | As WSV |
[in] | jacobian_quantities | As WSV |
[in] | propmat_clearsky_agenda | As WSA |
Definition at line 19 of file propmat_field.cc.
References ARTS_USER_ERROR_IF, get_stepwise_clearsky_propmat(), and Array< base >::nelem().
Referenced by line_irradianceCalcForSingleSpeciesNonOverlappingLinesPseudo2D().
FieldOfTransmissionMatrix transmat_field_calc_from_propmat_field | ( | const FieldOfPropagationMatrix & | propmat_field, |
const Numeric & | r = 1.0 |
||
) |
Get a field of transmission matrices from the propagation matrix field.
[in] | propmat_field | A 3D field of propagation matrices |
[in] | r | The distance |
Definition at line 89 of file propmat_field.cc.
References Field3D< base >::ncols(), Field3D< base >::npages(), and Field3D< base >::nrows().
Referenced by line_irradianceCalcForSingleSpeciesNonOverlappingLinesPseudo2D().