DOBatchCalc

Workspace.DOBatchCalc(self: pyarts.arts._Workspace, dobatch_cloudbox_field: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfTensor7 | None = self.dobatch_cloudbox_field, dobatch_radiance_field: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfTensor5 | None = self.dobatch_radiance_field, dobatch_irradiance_field: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfTensor4 | None = self.dobatch_irradiance_field, dobatch_spectral_irradiance_field: pyarts.arts.WorkspaceVariable | pyarts.arts.ArrayOfTensor5 | None = self.dobatch_spectral_irradiance_field, ybatch_start: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = self.ybatch_start, ybatch_n: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = self.ybatch_n, dobatch_calc_agenda: pyarts.arts.WorkspaceVariable | pyarts.arts.Agenda | None = self.dobatch_calc_agenda, robust: pyarts.arts.WorkspaceVariable | pyarts.arts.Index | None = 0, verbosity: pyarts.arts.WorkspaceVariable | pyarts.arts.Verbosity | None = self.verbosity) None

Performs batch calculations for radiation fields.

We perform ybatch_n jobs, starting at index ybatch_start. (Zero based indexing, as usual.) The output arrays will have ybatch_n elements. Indices in the output array start with zero, independent of ybatch_start.

WARNING, MEMORY INTENSIVE!!!: Since the outputs of this methods can be very large, make sure you only pass back output you need. Estimate the size of your output by looking at the dimensions beforehand. If you only want to pass back some fields, make sure to empty the others at the end of your dobatch_calc_agenda. E.g.: Tensor7SetConstant(cloudbox_field, 0, 0, 0, 0, 0, 0, 0, 0.)

The method performs the following:
  1. Sets ybatch_index = ybatch_start.

  2. Performs a-d until ybatch_index = ybatch_start + ybatch_n.

  1. Executes dobatch_calc_agenda.

  2. If ybatch_index = ybatch_start, resizes the output arrays based on ybatch_n.

  3. Copies calculated fields to ybatch_index - ybatch_start of output arrays.

  4. Adds 1 to ybatch_index.

Beside the dobatch_calc_agenda, the WSVs ybatch_start and ybatch_n must be set before calling this method.

The input variable ybatch_start is set to a default of zero.

Author(s): Oliver Lemke

Parameters:
  • dobatch_cloudbox_field (ArrayOfTensor7, optional) – Batch of radiation fields. See dobatch_cloudbox_field, defaults to self.dobatch_cloudbox_field [OUT]

  • dobatch_radiance_field (ArrayOfTensor5, optional) – Batch of radiance fields. See dobatch_radiance_field, defaults to self.dobatch_radiance_field [OUT]

  • dobatch_irradiance_field (ArrayOfTensor4, optional) – Batch of irradiance fields. See dobatch_irradiance_field, defaults to self.dobatch_irradiance_field [OUT]

  • dobatch_spectral_irradiance_field (ArrayOfTensor5, optional) – Batch of spectral irradiance fields. See dobatch_spectral_irradiance_field, defaults to self.dobatch_spectral_irradiance_field [OUT]

  • ybatch_start (Index, optional) – Start index for ybatchCalc(). See ybatch_start, defaults to self.ybatch_start [IN]

  • ybatch_n (Index, optional) – Number of batch cases for ybatchCalc(). See ybatch_n, defaults to self.ybatch_n [IN]

  • dobatch_calc_agenda (Agenda, optional) – Calculations to perform for each batch case. See dobatch_calc_agenda, defaults to self.dobatch_calc_agenda [IN]

  • robust (Index, optional) – A flag with value 1 or 0. If set to one, the batch calculation will continue, even if individual jobs fail. In that case, a warning message is written to screen and file (out1 output stream), and the output array entry for the failed job in the output fields is left empty. Defaults to 0 [IN]

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