7.1.4. tobac.utils

Provide essential methods.

Functions

add_coordinates(t, variable_cube)
column_mask_from2D(mask_2D, cube[, z_coord]) Turn 2D watershedding mask into a 3D mask of selected columns.
get_bounding_box(x[, buffer])
get_spacings(field_in[, grid_spacing, …])
Parameters:
  • field_in (iris.cube.Cube) – Input field where to get spacings.
mask_all_surface(mask[, masked, z_coord]) Create surface mask for individual features.
mask_cell(mask, cell, track[, masked]) Create mask for specific cell.
mask_cell_columns(mask, cell, track[, …]) Create mask with entire columns for individual cell.
mask_cell_surface(mask, cell, track[, …]) Create surface projection of mask for individual cell.
mask_cube(cube_in, mask) Mask cube where mask (array) is larger than zero.
mask_cube_all(variable_cube, mask) Mask cube (iris.cube) for tracked volume.
mask_cube_cell(variable_cube, mask, cell, track) Mask cube for tracked volume of an individual cell.
mask_cube_features(variable_cube, mask, …) Mask cube for tracked volume of an individual cell.
mask_cube_untracked(variable_cube, mask) Mask cube (iris.cube) for untracked volume.
mask_features(mask, feature_ids[, masked]) Create mask for specific features.
mask_features_surface(mask, feature_ids[, …]) Create surface mask for individual features.
tobac.utils.column_mask_from2D(mask_2D, cube, z_coord='model_level_number')

Turn 2D watershedding mask into a 3D mask of selected columns.

Parameters:
  • cube (iris.cube.Cube) – Data cube.
  • mask_2D (iris.cube.Cube) – 2D cube containing mask (int id for tacked volumes 0 everywhere else).
  • z_coord (str) – Name of the vertical coordinate in the cube.
Returns:

mask_2D – 3D cube containing columns of 2D mask (int id for tacked volumes 0 everywhere else).

Return type:

iris.cube.Cube

tobac.utils.get_spacings(field_in, grid_spacing=None, time_spacing=None)
Parameters:
  • field_in (iris.cube.Cube) – Input field where to get spacings.
  • grid_spacing (float, optional) – Grid spacing in input data. Default is None.
  • time_spacing (float, optional) – Time resolution of input data. Default is None.
Returns:

  • dxy (float) – Grid spacing.
  • dt (float) – Time resolution.

Raises:

ValueError – If input_cube does not contail projection_x_coord and projection_y_coord or keyword argument grid_spacing.

Notes

need short summary

tobac.utils.mask_all_surface(mask, masked=False, z_coord='model_level_number')

Create surface mask for individual features.

Parameters:
  • mask (iris.cube.Cube) – Cube containing mask (int id for tacked volumes 0 everywhere else).
  • masked (bool, optional) – Default is False.
  • z_coord (str, optional) – Name of the vertical coordinate in the cube. Default is ‘model_level_number’.
Returns:

mask_i_surface – Mask with 1 below features and 0 everywhere else.

Return type:

iris.cube.Cube (2D)

tobac.utils.mask_cell(mask, cell, track, masked=False)

Create mask for specific cell.

Parameters:
  • mask (iris.cube.Cube) – Cube containing mask (int id for tacked volumes 0 everywhere else).
  • cell (int) – Interger id of cell to create masked cube for.
  • track
  • masked (bool, optional) – Default is False.
Returns:

mask_i – Masked cube for untracked volume.

Return type:

numpy.ndarray

Notes

unsure about mask_i, track and masked

tobac.utils.mask_cell_columns(mask, cell, track, masked=False, z_coord='model_level_number')

Create mask with entire columns for individual cell.

Parameters:
  • mask (iris.cube.Cube) – Cube containing mask (int id for tacked volumes 0 everywhere else).
  • cell (int) – Interger id of cell to create masked cube for.
  • track
  • masked (bool, optional) – Default is False.
  • z_coord (str, optional) – Default is ‘model_level_number’.
Returns:

mask_i – Masked cube for untracked volume.

Return type:

iris.cube.Cube

tobac.utils.mask_cell_surface(mask, cell, track, masked=False, z_coord='model_level_number')

Create surface projection of mask for individual cell.

Parameters:
  • mask (iris.cube.Cube) – Cube containing mask (int id for tacked volumes 0 everywhere else).
  • cell (int) – Interger id of cell to create masked cube for.
  • track
  • masked (bool, optional) – Default is False.
  • z_coord (str, optional) – Default is ‘model_level_number’.
Returns:

mask_i_surface – Masked cube for untracked volume.

Return type:

iris.cube.Cube

Notes

unsure about Returns

tobac.utils.mask_cube(cube_in, mask)

Mask cube where mask (array) is larger than zero.

Parameters:
  • cube_in (iris.cube.Cube) – Unmasked data cube.
  • mask (numpy.ndarray or dask.array) – Mask to use for masking, >0 where cube is supposed to be masked.
Returns:

variable_cube_out – Masked cube.

Return type:

iris.cube.Cube

tobac.utils.mask_cube_all(variable_cube, mask)

Mask cube (iris.cube) for tracked volume.

Parameters:
  • variable_cube (iris.cube.Cube) – Unmasked data cube.
  • mask (iris.cube.Cube) – Cube containing mask (int id for tacked volumes 0 everywhere else).
Returns:

variable_cube_out – Masked cube for untracked volume.

Return type:

iris.cube.Cube

Notes

unsure about short summary

tobac.utils.mask_cube_cell(variable_cube, mask, cell, track)

Mask cube for tracked volume of an individual cell.

Parameters:
  • variable_cube (iris.cube.Cube) – Unmasked data cube.
  • mask (iris.cube.Cube) – Cube containing mask (int id for tacked volumes 0 everywhere else).
  • cell (int) – Interger id of cell to create masked cube for.
Returns:

variable_cube_out – Masked cube with data for respective cell.

Return type:

iris.cube.Cube

tobac.utils.mask_cube_features(variable_cube, mask, feature_ids)

Mask cube for tracked volume of an individual cell.

Parameters:
  • variable_cube (iris.cube.Cube) – Unmasked data cube.
  • mask (iris.cube.Cube) – Cube containing mask (int id for tacked volumes 0 everywhere else).
  • cell (int) – Interger id of cell to create masked cube for.
  • feature_ids (int)
Returns:

variable_cube_out – Masked cube with data for respective cell.

Return type:

iris.cube.Cube

tobac.utils.mask_cube_untracked(variable_cube, mask)

Mask cube (iris.cube) for untracked volume.

Parameters:
  • variable_cube (iris.cube.Cube) – Unmasked data cube.
  • mask (iris.cube.Cube) – Cube containing mask (int id for tacked volumes 0 everywhere else).
Returns:

variable_cube_out – Masked cube for untracked volume.

Return type:

iris.cube.Cube

tobac.utils.mask_features(mask, feature_ids, masked=False)

Create mask for specific features.

Parameters:
  • mask (iris.cube.Cube) – Cube containing mask (int id for tacked volumes 0 everywhere else).
  • feature_ids (int)
  • masked (bool, optional) – Default is False.
Returns:

mask_i – Masked cube for untracked volume.

Return type:

numpy.ndarray

Notes

unsure about Returns, Parameters need more descriptions

tobac.utils.mask_features_surface(mask, feature_ids, masked=False, z_coord='model_level_number')

Create surface mask for individual features.

Parameters:
  • mask (iris.cube.Cube) – Cube containing mask (int id for tacked volumes 0 everywhere else).
  • feature_ids (int)
  • masked (bool, optional) – Default is False.
  • z_coord (str, optional) – Name of the vertical coordinate in the cube. Default is ‘model_level_number’.
Returns:

mask_i_surface – Masked cube for untracked volume.

Return type:

iris.cube.Cube

Notes

unsure about Returns