iyEmissionHybrid

Workspace.iyEmissionHybrid(self: pyarts.arts._Workspace, iy: pyarts.arts.WorkspaceVariable | pyarts.arts.Matrix | None = self.iy, iy_aux: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfMatrix | None = self.iy_aux, diy_dx: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfTensor3 | None = self.diy_dx, ppvar_p: pyarts.arts.WorkspaceVariable | pyarts.arts.Vector | None = self.ppvar_p, ppvar_t: pyarts.arts.WorkspaceVariable | pyarts.arts.Vector | None = self.ppvar_t, ppvar_nlte: pyarts.arts.WorkspaceVariable | pyarts.arts.EnergyLevelMap | None = self.ppvar_nlte, ppvar_vmr: pyarts.arts.WorkspaceVariable | pyarts.arts.Matrix | None = self.ppvar_vmr, ppvar_wind: pyarts.arts.WorkspaceVariable | pyarts.arts.Matrix | None = self.ppvar_wind, ppvar_mag: pyarts.arts.WorkspaceVariable | pyarts.arts.Matrix | None = self.ppvar_mag, ppvar_pnd: pyarts.arts.WorkspaceVariable | pyarts.arts.Matrix | None = self.ppvar_pnd, ppvar_f: pyarts.arts.WorkspaceVariable | pyarts.arts.Matrix | None = self.ppvar_f, ppvar_iy: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor3 | None = self.ppvar_iy, ppvar_trans_cumulat: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor4 | None = self.ppvar_trans_cumulat, ppvar_trans_partial: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor4 | None = self.ppvar_trans_partial, iy_id: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = self.iy_id, stokes_dim: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = self.stokes_dim, f_grid: pyarts.arts.WorkspaceVariable | pyarts.arts.Vector | None = self.f_grid, atmosphere_dim: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = self.atmosphere_dim, p_grid: pyarts.arts.WorkspaceVariable | pyarts.arts.Vector | None = self.p_grid, t_field: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor3 | None = self.t_field, nlte_field: pyarts.arts.WorkspaceVariable | pyarts.arts.EnergyLevelMap | None = self.nlte_field, vmr_field: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor4 | None = self.vmr_field, abs_species: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfArrayOfSpeciesTag | None = self.abs_species, wind_u_field: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor3 | None = self.wind_u_field, wind_v_field: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor3 | None = self.wind_v_field, wind_w_field: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor3 | None = self.wind_w_field, mag_u_field: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor3 | None = self.mag_u_field, mag_v_field: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor3 | None = self.mag_v_field, mag_w_field: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor3 | None = self.mag_w_field, cloudbox_on: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = self.cloudbox_on, cloudbox_limits: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfIndex | None = self.cloudbox_limits, pnd_field: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor4 | None = self.pnd_field, dpnd_field_dx: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfTensor4 | None = self.dpnd_field_dx, scat_species: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfString | None = self.scat_species, scat_data: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfArrayOfSingleScatteringData | None = self.scat_data, iy_unit: pyarts.arts.WorkspaceVariable | pyarts.arts.String | None = self.iy_unit, iy_aux_vars: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfString | None = self.iy_aux_vars, jacobian_do: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = self.jacobian_do, jacobian_quantities: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfRetrievalQuantity | None = self.jacobian_quantities, propmat_clearsky_agenda: pyarts.arts.WorkspaceVariable | pyarts.arts.Agenda | None = self.propmat_clearsky_agenda, water_p_eq_agenda: pyarts.arts.WorkspaceVariable | pyarts.arts.Agenda | None = self.water_p_eq_agenda, rt_integration_option: pyarts.arts.WorkspaceVariable | pyarts.arts.String | None = self.rt_integration_option, iy_main_agenda: pyarts.arts.WorkspaceVariable | pyarts.arts.Agenda | None = self.iy_main_agenda, iy_space_agenda: pyarts.arts.WorkspaceVariable | pyarts.arts.Agenda | None = self.iy_space_agenda, iy_surface_agenda: pyarts.arts.WorkspaceVariable | pyarts.arts.Agenda | None = self.iy_surface_agenda, iy_cloudbox_agenda: pyarts.arts.WorkspaceVariable | pyarts.arts.Agenda | None = self.iy_cloudbox_agenda, iy_agenda_call1: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = self.iy_agenda_call1, iy_transmittance: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor3 | None = self.iy_transmittance, ppath: pyarts.arts.WorkspaceVariable | pyarts.arts.Ppath | None = self.ppath, rte_pos2: pyarts.arts.WorkspaceVariable | pyarts.arts.Vector | None = self.rte_pos2, rte_alonglos_v: pyarts.arts.WorkspaceVariable | pyarts.arts.Numeric | None = self.rte_alonglos_v, surface_props_data: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor3 | None = self.surface_props_data, cloudbox_field: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor7 | None = self.cloudbox_field, za_grid: pyarts.arts.WorkspaceVariable | pyarts.arts.Vector | None = self.za_grid, Naa_grid: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = 19, t_interp_order: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = 1, verbosity: pyarts.arts.WorkspaceVariable | pyarts.arts.Verbosity | None = self.verbosity) None

Radiative transfer with emission and precalculated radiation field.

This method works largely as iyEmissionStandard() but incorporates scattering by a precalculated radiation field. It is so far limited to 1D calculations.

The method integrates the source term along the propagation path. While iyEmissionStandard() only considers local thermal emission, this method also includes scattering into the line-of-sight in the source term. The scattering integral is solved with the precalculated field as incoming radiation. That is, this method extends the integration into the cloudbox, while iyEmissionStandard() starts at the cloudbox boundary.

The calculate radiance should be as exact as what is produced by the scattering solver used to calculate the precalculted radiation field, but the main reason to use this method is to obtain the Jacobian even in the presence of scattering. The Jacobian with respect to bulk scattering properties can be obtained, but it is approximate. This is the case as the incoming radiation field is treated as fixed in the calculation of the Jacobian. The impact of this approximation increases with the degree of scattering.

Author(s): Patrick Eriksson, Jana Mendrok, Richard Larsson

Parameters:
  • iy (Matrix, optional) – Monochromatic pencil beam radiance spectrum. See iy, defaults to self.iy [OUT]

  • iy_aux (ArrayOfMatrix, optional) – Data auxiliary to iy. See iy_aux, defaults to self.iy_aux [OUT]

  • diy_dx (ArrayOfTensor3, optional) – Derivative of iy with respect to retrieval quantities. See diy_dx, defaults to self.diy_dx [INOUT]

  • ppvar_p (Vector, optional) – Pressure along the propagation path. See ppvar_p, defaults to self.ppvar_p [OUT]

  • ppvar_t (Vector, optional) – Temperature along the propagation path. See ppvar_t, defaults to self.ppvar_t [OUT]

  • ppvar_nlte (EnergyLevelMap, optional) – Non-LTE temperatures/ratios along the propagation path. See ppvar_nlte, defaults to self.ppvar_nlte [OUT]

  • ppvar_vmr (Matrix, optional) – VMR values along the propagation path. See ppvar_vmr, defaults to self.ppvar_vmr [OUT]

  • ppvar_wind (Matrix, optional) – Winds along the propagation path. See ppvar_wind, defaults to self.ppvar_wind [OUT]

  • ppvar_mag (Matrix, optional) – Magnetic field along the propagation path. See ppvar_mag, defaults to self.ppvar_mag [OUT]

  • ppvar_pnd (Matrix, optional) – PND values along the propagation path. See ppvar_pnd, defaults to self.ppvar_pnd [OUT]

  • ppvar_f (Matrix, optional) – Doppler adjusted frequencies along the propagation path. See ppvar_f, defaults to self.ppvar_f [OUT]

  • ppvar_iy (Tensor3, optional) – iy-values along the propagation path. See ppvar_iy, defaults to self.ppvar_iy [OUT]

  • ppvar_trans_cumulat (Tensor4, optional) – The transmittance between the sensor and each point of the propagation path. See ppvar_trans_cumulat, defaults to self.ppvar_trans_cumulat [OUT]

  • ppvar_trans_partial (Tensor4, optional) – The transmittance between the points along the propagation path. See ppvar_trans_partial, defaults to self.ppvar_trans_partial [OUT]

  • iy_id (Index, optional) – Identification number of iy. See iy_id, defaults to self.iy_id [IN]

  • stokes_dim (Index, optional) – The dimensionality of the Stokes vector (1-4). See stokes_dim, defaults to self.stokes_dim [IN]

  • f_grid (Vector, optional) – The frequency grid for monochromatic pencil beam calculations. See f_grid, defaults to self.f_grid [IN]

  • atmosphere_dim (Index, optional) – The atmospheric dimensionality (1-3). See atmosphere_dim, defaults to self.atmosphere_dim [IN]

  • p_grid (Vector, optional) – The pressure grid. See p_grid, defaults to self.p_grid [IN]

  • t_field (Tensor3, optional) – The field of atmospheric temperatures. See t_field, defaults to self.t_field [IN]

  • nlte_field (EnergyLevelMap, optional) – The field of NLTE temperatures and/or ratios. See nlte_field, defaults to self.nlte_field [IN]

  • vmr_field (Tensor4, optional) – VMR field. See vmr_field, defaults to self.vmr_field [IN]

  • abs_species (ArrayOfArrayOfSpeciesTag, optional) – Tag groups for gas absorption. See abs_species, defaults to self.abs_species [IN]

  • wind_u_field (Tensor3, optional) – Zonal component of the wind field. See wind_u_field, defaults to self.wind_u_field [IN]

  • wind_v_field (Tensor3, optional) – Meridional component of the magnetic field. See wind_v_field, defaults to self.wind_v_field [IN]

  • wind_w_field (Tensor3, optional) – Vertical wind component field. See wind_w_field, defaults to self.wind_w_field [IN]

  • mag_u_field (Tensor3, optional) – Zonal component of the magnetic field. See mag_u_field, defaults to self.mag_u_field [IN]

  • mag_v_field (Tensor3, optional) – Meridional component of the magnetic field. See mag_v_field, defaults to self.mag_v_field [IN]

  • mag_w_field (Tensor3, optional) – Vertical component of the magnetic field. See mag_w_field, defaults to self.mag_w_field [IN]

  • cloudbox_on (Index, optional) – Flag to activate the cloud box. See cloudbox_on, defaults to self.cloudbox_on [IN]

  • cloudbox_limits (ArrayOfIndex, optional) – The limits of the cloud box. See cloudbox_limits, defaults to self.cloudbox_limits [IN]

  • pnd_field (Tensor4, optional) – Particle number density field. See pnd_field, defaults to self.pnd_field [IN]

  • dpnd_field_dx (ArrayOfTensor4, optional) – Partial derivatives of pnd_field. See dpnd_field_dx, defaults to self.dpnd_field_dx [IN]

  • scat_species (ArrayOfString, optional) – Array of Strings defining the scattering species to consider. See scat_species, defaults to self.scat_species [IN]

  • scat_data (ArrayOfArrayOfSingleScatteringData, optional) – Array of single scattering data. See scat_data, defaults to self.scat_data [IN]

  • iy_unit (String, optional) – Selection of output unit for radiative transfer methods. See iy_unit, defaults to self.iy_unit [IN]

  • iy_aux_vars (ArrayOfString, optional) – Selection of quantities for iy_aux and when applicable also y_aux. See iy_aux_vars, defaults to self.iy_aux_vars [IN]

  • jacobian_do (Index, optional) – Flag to activate (clear-sky) Jacobian calculations. See jacobian_do, defaults to self.jacobian_do [IN]

  • jacobian_quantities (ArrayOfRetrievalQuantity, optional) – The retrieval quantities in the Jacobian matrix. See jacobian_quantities, defaults to self.jacobian_quantities [IN]

  • propmat_clearsky_agenda (Agenda, optional) – Calculate the absorption coefficient matrix. See propmat_clearsky_agenda, defaults to self.propmat_clearsky_agenda [IN]

  • water_p_eq_agenda (Agenda, optional) – Calculation of the saturation pressure of water. See water_p_eq_agenda, defaults to self.water_p_eq_agenda [IN]

  • rt_integration_option (String, optional) – Switch between integration approaches for radiative transfer steps. See rt_integration_option, defaults to self.rt_integration_option [IN]

  • iy_main_agenda (Agenda, optional) – Calculation of a single monochromatic pencil beam spectrum. See iy_main_agenda, defaults to self.iy_main_agenda [IN]

  • iy_space_agenda (Agenda, optional) – Downwelling radiation at the top of the atmosphere. See iy_space_agenda, defaults to self.iy_space_agenda [IN]

  • iy_surface_agenda (Agenda, optional) – Upwelling radiation from the surface. See iy_surface_agenda, defaults to self.iy_surface_agenda [IN]

  • iy_cloudbox_agenda (Agenda, optional) – Intensity at boundary or interior of the cloudbox. See iy_cloudbox_agenda, defaults to self.iy_cloudbox_agenda [IN]

  • iy_agenda_call1 (Index, optional) – Flag to handle recursive calls of iy_main_agenda. See iy_agenda_call1, defaults to self.iy_agenda_call1 [IN]

  • iy_transmittance (Tensor3, optional) – Transmittance to be included in iy. See iy_transmittance, defaults to self.iy_transmittance [IN]

  • ppath (Ppath, optional) – The propagation path for one line-of-sight. See ppath, defaults to self.ppath [IN]

  • rte_pos2 (Vector, optional) – A second geographical position to define the geometry for. See rte_pos2, defaults to self.rte_pos2 [IN]

  • rte_alonglos_v (Numeric, optional) – Velocity along the line-of-sight to consider for a RT calculation. See rte_alonglos_v, defaults to self.rte_alonglos_v [IN]

  • surface_props_data (Tensor3, optional) – Various surface properties. See surface_props_data, defaults to self.surface_props_data [IN]

  • cloudbox_field (Tensor7, optional) – The spectral radiance field inside the cloudbx. See cloudbox_field, defaults to self.cloudbox_field [IN]

  • za_grid (Vector, optional) – Zenith angle grid. See za_grid, defaults to self.za_grid [IN]

  • Naa_grid (Index, optional) – Number of azimuth angles to consider in scattering source term integral. Defaults to 19 [IN]

  • t_interp_order (Index, optional) – Interpolation order of temperature for scattering data (so far only applied in phase matrix, not in extinction and absorption. Defaults to 1 [IN]

  • verbosity (Verbosity) – ARTS verbosity. See verbosity, defaults to self.verbosity [IN]