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

Workspace functions associated with the FOS scattering scheme. More...

#include <cmath>
#include <stdexcept>
#include "arts.h"
#include "arts_omp.h"
#include "auto_md.h"
#include "doit.h"
#include "m_xml.h"
#include "math_funcs.h"
#include "montecarlo.h"
#include "rte.h"

Go to the source code of this file.

Functions

void iyHybrid (Workspace &ws, Matrix &iy, ArrayOfMatrix &iy_aux, ArrayOfTensor3 &diy_dx, Vector &ppvar_p, Vector &ppvar_t, EnergyLevelMap &ppvar_nlte, Matrix &ppvar_vmr, Matrix &ppvar_wind, Matrix &ppvar_mag, Matrix &ppvar_pnd, Matrix &ppvar_f, Tensor3 &ppvar_iy, Tensor4 &ppvar_trans_cumulat, const Index &iy_id, const Index &stokes_dim, const Vector &f_grid, const Index &atmosphere_dim, const Vector &p_grid, const Tensor3 &t_field, const EnergyLevelMap &nlte_field, const Tensor4 &vmr_field, const ArrayOfArrayOfSpeciesTag &abs_species, const Tensor3 &wind_u_field, const Tensor3 &wind_v_field, const Tensor3 &wind_w_field, const Tensor3 &mag_u_field, const Tensor3 &mag_v_field, const Tensor3 &mag_w_field, const Index &cloudbox_on, const ArrayOfIndex &cloudbox_limits, const Tensor4 &pnd_field, const ArrayOfTensor4 &dpnd_field_dx, const ArrayOfString &scat_species, const ArrayOfArrayOfSingleScatteringData &scat_data, const String &iy_unit, const ArrayOfString &iy_aux_vars, const Index &jacobian_do, const ArrayOfRetrievalQuantity &jacobian_quantities, const Agenda &propmat_clearsky_agenda, const Agenda &water_p_eq_agenda, const Agenda &iy_main_agenda, const Agenda &iy_space_agenda, const Agenda &iy_surface_agenda, const Agenda &iy_cloudbox_agenda, const Index &iy_agenda_call1, const Tensor3 &iy_transmission, const Ppath &ppath, const Vector &rte_pos2, const Numeric &rte_alonglos_v, const Tensor3 &surface_props_data, const Tensor7 &cloudbox_field, const Vector &za_grid, const Index &Naa, const Index &t_interp_order, const Verbosity &verbosity)
 WORKSPACE METHOD: iyHybrid. More...
 
void iyHybrid2 (Workspace &ws, Matrix &iy, ArrayOfMatrix &iy_aux, ArrayOfTensor3 &diy_dx, Vector &ppvar_p, Vector &ppvar_t, EnergyLevelMap &ppvar_nlte, Matrix &ppvar_vmr, Matrix &ppvar_wind, Matrix &ppvar_mag, Matrix &ppvar_pnd, Matrix &ppvar_f, Tensor3 &ppvar_iy, Tensor4 &ppvar_trans_cumulat, const Index &iy_id, const Index &stokes_dim, const Vector &f_grid, const Index &atmosphere_dim, const Vector &p_grid, const Tensor3 &t_field, const EnergyLevelMap &nlte_field, const Tensor4 &vmr_field, const ArrayOfArrayOfSpeciesTag &abs_species, const Tensor3 &wind_u_field, const Tensor3 &wind_v_field, const Tensor3 &wind_w_field, const Tensor3 &mag_u_field, const Tensor3 &mag_v_field, const Tensor3 &mag_w_field, const Index &cloudbox_on, const ArrayOfIndex &cloudbox_limits, const Tensor4 &pnd_field, const ArrayOfTensor4 &dpnd_field_dx, const ArrayOfString &scat_species, const ArrayOfArrayOfSingleScatteringData &scat_data, const String &iy_unit, const ArrayOfString &iy_aux_vars, const Index &jacobian_do, const ArrayOfRetrievalQuantity &jacobian_quantities, const Agenda &propmat_clearsky_agenda, const Agenda &water_p_eq_agenda, const Agenda &iy_main_agenda, const Agenda &iy_space_agenda, const Agenda &iy_surface_agenda, const Agenda &iy_cloudbox_agenda, const Index &iy_agenda_call1, const Tensor3 &iy_transmission, const Ppath &ppath, const Vector &rte_pos2, const Numeric &rte_alonglos_v, const Tensor3 &surface_props_data, const Tensor7 &cloudbox_field, const Vector &za_grid, const Index &Naa, const Index &t_interp_order, const Verbosity &verbosity)
 WORKSPACE METHOD: iyHybrid2. More...
 

Variables

const Numeric DEG2RAD
 
const Numeric RAD2DEG
 
const Numeric PI
 

Detailed Description

Workspace functions associated with the FOS scattering scheme.

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
2013-04-29

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

Definition in file m_fos.cc.

Function Documentation

◆ iyHybrid()

void iyHybrid ( Workspace ws,
Matrix iy,
ArrayOfMatrix iy_aux,
ArrayOfTensor3 diy_dx,
Vector ppvar_p,
Vector ppvar_t,
EnergyLevelMap ppvar_nlte,
Matrix ppvar_vmr,
Matrix ppvar_wind,
Matrix ppvar_mag,
Matrix ppvar_pnd,
Matrix ppvar_f,
Tensor3 ppvar_iy,
Tensor4 ppvar_trans_cumulat,
const Index iy_id,
const Index stokes_dim,
const Vector f_grid,
const Index atmosphere_dim,
const Vector p_grid,
const Tensor3 t_field,
const EnergyLevelMap nlte_field,
const Tensor4 vmr_field,
const ArrayOfArrayOfSpeciesTag abs_species,
const Tensor3 wind_u_field,
const Tensor3 wind_v_field,
const Tensor3 wind_w_field,
const Tensor3 mag_u_field,
const Tensor3 mag_v_field,
const Tensor3 mag_w_field,
const Index cloudbox_on,
const ArrayOfIndex cloudbox_limits,
const Tensor4 pnd_field,
const ArrayOfTensor4 dpnd_field_dx,
const ArrayOfString scat_species,
const ArrayOfArrayOfSingleScatteringData scat_data,
const String iy_unit,
const ArrayOfString iy_aux_vars,
const Index jacobian_do,
const ArrayOfRetrievalQuantity jacobian_quantities,
const Agenda propmat_clearsky_agenda,
const Agenda water_p_eq_agenda,
const Agenda iy_main_agenda,
const Agenda iy_space_agenda,
const Agenda iy_surface_agenda,
const Agenda iy_cloudbox_agenda,
const Index iy_agenda_call1,
const Tensor3 iy_transmission,
const Ppath ppath,
const Vector rte_pos2,
const Numeric rte_alonglos_v,
const Tensor3 surface_props_data,
const Tensor7 cloudbox_field,
const Vector za_grid,
const Index Naa_grid,
const Index t_interp_order,
const Verbosity verbosity 
)

WORKSPACE METHOD: iyHybrid.

So far just for testing.

Author
Patrick Eriksson
Jana Mendrok
Richard Larsson
Parameters
[in,out]wsWorkspace
[out]iyWS Output
[out]iy_auxWS Output
[in,out]diy_dxWS Input/Output
[out]ppvar_pWS Output
[out]ppvar_tWS Output
[out]ppvar_nlteWS Output
[out]ppvar_vmrWS Output
[out]ppvar_windWS Output
[out]ppvar_magWS Output
[out]ppvar_pndWS Output
[out]ppvar_fWS Output
[out]ppvar_iyWS Output
[out]ppvar_trans_cumulatWS Output
[in]iy_idWS Input
[in]stokes_dimWS Input
[in]f_gridWS Input
[in]atmosphere_dimWS Input
[in]p_gridWS Input
[in]t_fieldWS Input
[in]nlte_fieldWS Input
[in]vmr_fieldWS Input
[in]abs_speciesWS Input
[in]wind_u_fieldWS Input
[in]wind_v_fieldWS Input
[in]wind_w_fieldWS Input
[in]mag_u_fieldWS Input
[in]mag_v_fieldWS Input
[in]mag_w_fieldWS Input
[in]cloudbox_onWS Input
[in]cloudbox_limitsWS Input
[in]pnd_fieldWS Input
[in]dpnd_field_dxWS Input
[in]scat_speciesWS Input
[in]scat_dataWS Input
[in]iy_unitWS Input
[in]iy_aux_varsWS Input
[in]jacobian_doWS Input
[in]jacobian_quantitiesWS Input
[in]propmat_clearsky_agendaWS Input
[in]water_p_eq_agendaWS Input
[in]iy_main_agendaWS Input
[in]iy_space_agendaWS Input
[in]iy_surface_agendaWS Input
[in]iy_cloudbox_agendaWS Input
[in]iy_agenda_call1WS Input
[in]iy_transmissionWS Input
[in]ppathWS Input
[in]rte_pos2WS Input
[in]rte_alonglos_vWS Input
[in]surface_props_dataWS Input
[in]cloudbox_fieldWS Input
[in]za_gridWS Input
[in]Naa_gridGeneric Input (Default: "19")
[in]t_interp_orderGeneric Input (Default: "1")

Definition at line 855 of file m_fos.cc.

References ARTS::Var::aa_grid(), ARTS::Var::abs_species(), adapt_stepwise_partial_derivatives(), ARTS::Var::atmosphere_dim(), ARTS::Var::cloudbox_field(), ARTS::Var::cloudbox_limits(), ARTS::Var::cloudbox_on(), ARTS::Var::diy_dx(), do_temperature_jacobian(), ARTS::Var::dpnd_field_dx(), ARTS::Var::f_grid(), FOR_ANALYTICAL_JACOBIANS_DO, get_diydx(), get_iy_of_background(), get_ppath_atmvars(), get_ppath_cloudvars(), get_ppath_f(), get_stepwise_blackbody_radiation(), get_stepwise_clearsky_propmat(), get_stepwise_effective_source(), get_stepwise_scattersky_propmat(), get_stepwise_scattersky_source(), get_stepwise_transmission_matrix(), id_mat(), ARTS::Var::iy(), ARTS::Var::iy_agenda_call1(), ARTS::Var::iy_aux(), ARTS::Var::iy_aux_vars(), ARTS::Var::iy_cloudbox_agenda(), ARTS::Var::iy_id(), ARTS::Var::iy_main_agenda(), ARTS::Var::iy_space_agenda(), ARTS::Var::iy_surface_agenda(), ARTS::Var::iy_transmission(), iy_transmission_mult(), ARTS::Var::iy_unit(), iyEmissionStandard(), ARTS::Var::jacobian_do(), ARTS::Var::jacobian_quantities(), joker, ARTS::Var::mag_u_field(), ARTS::Var::mag_v_field(), ARTS::Var::mag_w_field(), min, mult(), nlinspace(), ARTS::Var::nlte_field(), ns, ARTS::Var::p_grid(), ARTS::Var::pnd_field(), ARTS::Var::ppath(), ppath_what_background(), ARTS::Var::ppvar_f(), ARTS::Var::ppvar_iy(), ARTS::Var::ppvar_mag(), ARTS::Var::ppvar_nlte(), ARTS::Var::ppvar_p(), ARTS::Var::ppvar_pnd(), ARTS::Var::ppvar_t(), ARTS::Var::ppvar_trans_cumulat(), ARTS::Var::ppvar_vmr(), ARTS::Var::ppvar_wind(), ARTS::Var::propmat_clearsky_agenda(), Vector::resize(), ARTS::Var::rte_alonglos_v(), ARTS::Var::rte_pos2(), rtmethods_jacobian_finalisation(), rtmethods_jacobian_init(), rtmethods_unit_conversion(), ARTS::Var::scat_data(), ARTS::Var::scat_species(), ARTS::Var::stokes_dim(), ARTS::Var::surface_props_data(), swap(), ARTS::Var::t_field(), ARTS::Var::verbosity(), ARTS::Var::vmr_field(), ARTS::Var::water_p_eq_agenda(), ARTS::Var::wind_u_field(), ARTS::Var::wind_v_field(), ARTS::Var::wind_w_field(), and ARTS::Var::za_grid().

Referenced by iyHybrid_g().

◆ iyHybrid2()

void iyHybrid2 ( Workspace ws,
Matrix iy,
ArrayOfMatrix iy_aux,
ArrayOfTensor3 diy_dx,
Vector ppvar_p,
Vector ppvar_t,
EnergyLevelMap ppvar_nlte,
Matrix ppvar_vmr,
Matrix ppvar_wind,
Matrix ppvar_mag,
Matrix ppvar_pnd,
Matrix ppvar_f,
Tensor3 ppvar_iy,
Tensor4 ppvar_trans_cumulat,
const Index iy_id,
const Index stokes_dim,
const Vector f_grid,
const Index atmosphere_dim,
const Vector p_grid,
const Tensor3 t_field,
const EnergyLevelMap nlte_field,
const Tensor4 vmr_field,
const ArrayOfArrayOfSpeciesTag abs_species,
const Tensor3 wind_u_field,
const Tensor3 wind_v_field,
const Tensor3 wind_w_field,
const Tensor3 mag_u_field,
const Tensor3 mag_v_field,
const Tensor3 mag_w_field,
const Index cloudbox_on,
const ArrayOfIndex cloudbox_limits,
const Tensor4 pnd_field,
const ArrayOfTensor4 dpnd_field_dx,
const ArrayOfString scat_species,
const ArrayOfArrayOfSingleScatteringData scat_data,
const String iy_unit,
const ArrayOfString iy_aux_vars,
const Index jacobian_do,
const ArrayOfRetrievalQuantity jacobian_quantities,
const Agenda propmat_clearsky_agenda,
const Agenda water_p_eq_agenda,
const Agenda iy_main_agenda,
const Agenda iy_space_agenda,
const Agenda iy_surface_agenda,
const Agenda iy_cloudbox_agenda,
const Index iy_agenda_call1,
const Tensor3 iy_transmission,
const Ppath ppath,
const Vector rte_pos2,
const Numeric rte_alonglos_v,
const Tensor3 surface_props_data,
const Tensor7 cloudbox_field,
const Vector za_grid,
const Index Naa_grid,
const Index t_interp_order,
const Verbosity verbosity 
)

WORKSPACE METHOD: iyHybrid2.

So far just for even more testing.

Author
Patrick Eriksson
Jana Mendrok
Richard Larsson
Parameters
[in,out]wsWorkspace
[out]iyWS Output
[out]iy_auxWS Output
[in,out]diy_dxWS Input/Output
[out]ppvar_pWS Output
[out]ppvar_tWS Output
[out]ppvar_nlteWS Output
[out]ppvar_vmrWS Output
[out]ppvar_windWS Output
[out]ppvar_magWS Output
[out]ppvar_pndWS Output
[out]ppvar_fWS Output
[out]ppvar_iyWS Output
[out]ppvar_trans_cumulatWS Output
[in]iy_idWS Input
[in]stokes_dimWS Input
[in]f_gridWS Input
[in]atmosphere_dimWS Input
[in]p_gridWS Input
[in]t_fieldWS Input
[in]nlte_fieldWS Input
[in]vmr_fieldWS Input
[in]abs_speciesWS Input
[in]wind_u_fieldWS Input
[in]wind_v_fieldWS Input
[in]wind_w_fieldWS Input
[in]mag_u_fieldWS Input
[in]mag_v_fieldWS Input
[in]mag_w_fieldWS Input
[in]cloudbox_onWS Input
[in]cloudbox_limitsWS Input
[in]pnd_fieldWS Input
[in]dpnd_field_dxWS Input
[in]scat_speciesWS Input
[in]scat_dataWS Input
[in]iy_unitWS Input
[in]iy_aux_varsWS Input
[in]jacobian_doWS Input
[in]jacobian_quantitiesWS Input
[in]propmat_clearsky_agendaWS Input
[in]water_p_eq_agendaWS Input
[in]iy_main_agendaWS Input
[in]iy_space_agendaWS Input
[in]iy_surface_agendaWS Input
[in]iy_cloudbox_agendaWS Input
[in]iy_agenda_call1WS Input
[in]iy_transmissionWS Input
[in]ppathWS Input
[in]rte_pos2WS Input
[in]rte_alonglos_vWS Input
[in]surface_props_dataWS Input
[in]cloudbox_fieldWS Input
[in]za_gridWS Input
[in]Naa_gridGeneric Input (Default: "19")
[in]t_interp_orderGeneric Input (Default: "1")

Definition at line 1416 of file m_fos.cc.

References ARTS::Var::aa_grid(), ARTS::Var::abs_species(), adapt_stepwise_partial_derivatives(), ARTS::Var::atmosphere_dim(), ARTS::Var::cloudbox_field(), ARTS::Var::cloudbox_limits(), ARTS::Var::cloudbox_on(), cumulative_transmission(), ARTS::Var::diy_dx(), do_temperature_jacobian(), ARTS::Var::dpnd_field_dx(), ARTS::Var::f_grid(), FOR_ANALYTICAL_JACOBIANS_DO, get_iy_of_background(), get_ppath_atmvars(), get_ppath_cloudvars(), get_ppath_f(), get_stepwise_blackbody_radiation(), get_stepwise_clearsky_propmat(), get_stepwise_scattersky_propmat(), get_stepwise_scattersky_source(), ARTS::Var::iy(), ARTS::Var::iy_agenda_call1(), ARTS::Var::iy_aux(), ARTS::Var::iy_aux_vars(), ARTS::Var::iy_cloudbox_agenda(), ARTS::Var::iy_id(), ARTS::Var::iy_main_agenda(), ARTS::Var::iy_space_agenda(), ARTS::Var::iy_surface_agenda(), ARTS::Var::iy_transmission(), iy_transmission_mult(), ARTS::Var::iy_unit(), iyEmissionStandard(), ARTS::Var::jacobian_do(), ARTS::Var::jacobian_quantities(), joker, ARTS::Var::mag_u_field(), ARTS::Var::mag_v_field(), ARTS::Var::mag_w_field(), min, Array< base >::nelem(), nlinspace(), ARTS::Var::nlte_field(), ns, ARTS::Var::p_grid(), ARTS::Var::pnd_field(), ARTS::Var::ppath(), ppath_what_background(), ARTS::Var::ppvar_f(), ARTS::Var::ppvar_iy(), ARTS::Var::ppvar_mag(), ARTS::Var::ppvar_nlte(), ARTS::Var::ppvar_p(), ARTS::Var::ppvar_pnd(), ARTS::Var::ppvar_t(), ARTS::Var::ppvar_trans_cumulat(), ARTS::Var::ppvar_vmr(), ARTS::Var::ppvar_wind(), ARTS::Var::propmat_clearsky_agenda(), Vector::resize(), ARTS::Var::rte_alonglos_v(), ARTS::Var::rte_pos2(), rtmethods_jacobian_finalisation(), rtmethods_jacobian_init(), rtmethods_unit_conversion(), ARTS::Var::scat_data(), ARTS::Var::scat_species(), stepwise_source(), stepwise_transmission(), ARTS::Var::stokes_dim(), ARTS::Var::surface_props_data(), swap(), ARTS::Var::t_field(), update_radiation_vector(), ARTS::Var::verbosity(), ARTS::Var::vmr_field(), ARTS::Var::water_p_eq_agenda(), ARTS::Var::wind_u_field(), ARTS::Var::wind_v_field(), ARTS::Var::wind_w_field(), and ARTS::Var::za_grid().

Referenced by iyHybrid2_g().

Variable Documentation

◆ DEG2RAD

const Numeric DEG2RAD
extern

◆ PI

const Numeric PI
extern

◆ RAD2DEG

const Numeric RAD2DEG
extern