pndFromPsd
- Workspace.pndFromPsd(self: pyarts.arts._Workspace, pnd_data: Optional[Union[pyarts.arts.WorkspaceVariable, pyarts.arts.Matrix]] = self.pnd_data, dpnd_data_dx: Optional[Union[pyarts.arts.WorkspaceVariable, pyarts.arts.Tensor3]] = self.dpnd_data_dx, pnd_size_grid: Optional[Union[pyarts.arts.WorkspaceVariable, pyarts.arts.Vector]] = self.pnd_size_grid, psd_data: Optional[Union[pyarts.arts.WorkspaceVariable, pyarts.arts.Matrix]] = self.psd_data, psd_size_grid: Optional[Union[pyarts.arts.WorkspaceVariable, pyarts.arts.Vector]] = self.psd_size_grid, dpsd_data_dx: Optional[Union[pyarts.arts.WorkspaceVariable, pyarts.arts.Tensor3]] = self.dpsd_data_dx, scat_data: Optional[Union[pyarts.arts.WorkspaceVariable, pyarts.arts.ArrayOfArrayOfSingleScatteringData]] = self.scat_data, f_grid: Optional[Union[pyarts.arts.WorkspaceVariable, pyarts.arts.Vector]] = self.f_grid, scat_data_checked: Optional[Union[pyarts.arts.WorkspaceVariable, pyarts.arts.Index]] = self.scat_data_checked, quad_order: Optional[Union[pyarts.arts.WorkspaceVariable, pyarts.arts.Index]] = 1, scat_index: Union[pyarts.arts.WorkspaceVariable, pyarts.arts.Index], threshold_se_ext: Optional[Union[pyarts.arts.WorkspaceVariable, pyarts.arts.Numeric]] = 0.02, threshold_ss_ext: Optional[Union[pyarts.arts.WorkspaceVariable, pyarts.arts.Numeric]] = 1e-8, threshold_se_pnd: Optional[Union[pyarts.arts.WorkspaceVariable, pyarts.arts.Numeric]] = 0.02, verbosity: Optional[Union[pyarts.arts.WorkspaceVariable, pyarts.arts.Verbosity]] = self.verbosity) None
Calculates
pnd_data
from givenpsd_data
for one scattering species.Performs integration of the size distribution over the size grid bin deriving pnd (units #/m3) from psd (units #/m3/m). Some checks on the sufficiency of the size grid range and coverage are applied.
quad_order
can be 0 for rectangular or 1 for trapezoidal integration. The only difference is the treatment of the start and end nodes. For trapezoidal their corresponding bins end exactly at the nodes, while for rectangular they extend further out by the half distance to the neighbor node (but not beyond 0).Attempts to check that the size grids and
scat_data
represent the bulk extinction sufficiently. Specifically, it is tested thatpsd*ext is decreasing at the small and large particle size ends of the size grid - but only if scattering species bulk extinction exceeds 1% of
threshold_ss_ext
.removing the smallest and largest particles changes the resulting bulk extinction by less then a fraction of
threshold_se_ext
- but only if scattering species bulk extinction exceedsthreshold_ss_ext
and number density (pnd) of the edge size point at this atmospheric level is larger thanthreshold_se_pnd
times the maximum pnd of this scattering element over all atmospheric levels.
Skipping tests in case of low extinction is done in order to minimize issues arising from very low mass densities, particularly at single atmospheric levels, and very low bulk extinctions, i.e. in cases where the effects on the radiance fields are estimated to be low. NOTE: The tests are only approximate and do not guarantee the validity of the resulting bulk properties (and increasing the thresholds will decrease the reliability of the bulk properties).
Author(s): Jana Mendrok, Patrick Eriksson
- Parameters:
pnd_data (Matrix, optional) – Particle number density values for a set of points. See
pnd_data
, defaults toself.pnd_data
[OUT]dpnd_data_dx (Tensor3, optional) – Partial derivates of
pnd_data
. Seedpnd_data_dx
, defaults toself.dpnd_data_dx
[OUT]pnd_size_grid (Vector, optional) – The particle sizes associated with
pnd_data
. Seepnd_size_grid
, defaults toself.pnd_size_grid
[IN]psd_data (Matrix, optional) – Particle size distribution values for a set of points. See
psd_data
, defaults toself.psd_data
[IN]psd_size_grid (Vector, optional) – The particle sizes associated with
psd_data
. Seepsd_size_grid
, defaults toself.psd_size_grid
[IN]dpsd_data_dx (Tensor3, optional) – Partial derivates of
psd_data
. Seedpsd_data_dx
, defaults toself.dpsd_data_dx
[IN]scat_data (ArrayOfArrayOfSingleScatteringData, optional) – Array of single scattering data. See
scat_data
, defaults toself.scat_data
[IN]f_grid (Vector, optional) – The frequency grid for monochromatic pencil beam calculations. See
f_grid
, defaults toself.f_grid
[IN]scat_data_checked (Index, optional) – OK-flag for
scat_data
. Seescat_data_checked
, defaults toself.scat_data_checked
[IN]quad_order (Index, optional) – Order of bin quadrature. Defaults to
1
[IN]scat_index (Index) – Take data from scattering species of this index (0-based) in
scat_data
. [IN]threshold_se_ext (Numeric, optional) – Maximum allowed extinction fraction in each of the edge size bins. Defaults to
0.02
[IN]threshold_ss_ext (Numeric, optional) – Minimum bulk extinction in the processed scattering species for which to apply size grid representation checks. Defaults to
1e-8
[IN]threshold_se_pnd (Numeric, optional) – Minimum ratio of edge point pnd to maximum pnd of this scattering element over all pressure levels. Defaults to
0.02
[IN]verbosity (Verbosity) – ARTS verbosity. See
verbosity
, defaults toself.verbosity
[IN]