AtmFieldsCalc

Workspace.AtmFieldsCalc(self: pyarts.arts._Workspace, t_field: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor3 | None = self.t_field, z_field: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor3 | None = self.z_field, vmr_field: pyarts.arts.WorkspaceVariable | pyarts.arts.Tensor4 | None = self.vmr_field, nlte_field: pyarts.arts.WorkspaceVariable | pyarts.arts.EnergyLevelMap | None = self.nlte_field, p_grid: pyarts.arts.WorkspaceVariable | pyarts.arts.Vector | None = self.p_grid, lat_grid: pyarts.arts.WorkspaceVariable | pyarts.arts.Vector | None = self.lat_grid, lon_grid: pyarts.arts.WorkspaceVariable | pyarts.arts.Vector | None = self.lon_grid, t_field_raw: pyarts.arts.WorkspaceVariable | pyarts.arts.GriddedField3 | None = self.t_field_raw, z_field_raw: pyarts.arts.WorkspaceVariable | pyarts.arts.GriddedField3 | None = self.z_field_raw, vmr_field_raw: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfGriddedField3 | None = self.vmr_field_raw, nlte_field_raw: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfGriddedField3 | None = self.nlte_field_raw, nlte_level_identifiers: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfQuantumIdentifier | None = self.nlte_level_identifiers, nlte_vibrational_energies: pyarts.arts.WorkspaceVariable | pyarts.arts.Vector | None = self.nlte_vibrational_energies, atmosphere_dim: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = self.atmosphere_dim, interp_order: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = 1, vmr_zeropadding: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = 0, vmr_nonegative: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = 0, nlte_when_negative: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = 0, verbosity: pyarts.arts.WorkspaceVariable | pyarts.arts.Verbosity | None = self.verbosity) None

Interpolation of raw atmospheric T, z, VMR, and NLTE T/r fields to calculation grids.

An atmospheric scenario includes the following data for each position (pressure, latitude, longitude) in the atmosphere:

  1. temperature field

  2. the corresponding altitude field

  3. vmr fields for the gaseous species

This method interpolates the fields of raw data (t_field_raw, z_field_raw, vmr_field_raw) which can be stored on arbitrary grids to the calculation grids (p_grid, lat_grid, lon_grid). If nlte_field_raw is empty, it is assumed to be so because LTE is assumed by the user and nlte_field will be empty.

Internally, AtmFieldsCalc() applies GriddedFieldPRegrid() and GriddedFieldLatLonRegrid(). Generally, ‘half-grid-step’ extrapolation is allowed and applied. However, if vmr_zeropadding=1 then VMRs at p_grid levels exceeding the raw VMRs’ pressure grid are set to 0 (applying the vmr_zeropadding option of GriddedFieldPRegrid()).

Default is to just accept obtained VMRs. If you want to enforce that all VMR created are >= 0, set vmr_nonegative to 1. Negative values are then set 0. Beside being present in input data, negative VMR can be generated from the interpolation if interp_order is above 1.

Author(s): Claudia Emde, Stefan Buehler

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

  • z_field (Tensor3, optional) – The field of geometrical altitudes. See z_field, defaults to self.z_field [OUT]

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

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

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

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

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

  • t_field_raw (GriddedField3, optional) – Raw data for atmospheric temperatures. See t_field_raw, defaults to self.t_field_raw [IN]

  • z_field_raw (GriddedField3, optional) – Raw data for geometrical altitudes. See z_field_raw, defaults to self.z_field_raw [IN]

  • vmr_field_raw (ArrayOfGriddedField3, optional) – VMR data for the chosen gaseous species. See vmr_field_raw, defaults to self.vmr_field_raw [IN]

  • nlte_field_raw (ArrayOfGriddedField3, optional) – Raw data for NLTE temperatures and/or ratios. See nlte_field_raw, defaults to self.nlte_field_raw [IN]

  • nlte_level_identifiers (ArrayOfQuantumIdentifier, optional) – An array of non-lte quantum identifiers for levels matching. See nlte_level_identifiers, defaults to self.nlte_level_identifiers [IN]

  • nlte_vibrational_energies (Vector, optional) – An list of vibrational energies matching. See nlte_vibrational_energies, defaults to self.nlte_vibrational_energies [IN]

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

  • interp_order (Index, optional) – Interpolation order (1=linear interpolation). Defaults to 1 [IN]

  • vmr_zeropadding (Index, optional) – Pad VMRs with zeroes to fit the pressure grid if necessary. Defaults to 0 [IN]

  • vmr_nonegative (Index, optional) – If set to 1, negative VMRs are set to 0. Defaults to 0 [IN]

  • nlte_when_negative (Index, optional) – -1: Skip step. 0: Negative is 0. Else: Negative is t. Defaults to 0 [IN]

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