pyshqg.preprocessing.orography module

Submodule dedicated to the orography.

class pyshqg.preprocessing.orography.Orography(land_sea_mask: numpy.ndarray, orography: numpy.ndarray)

Bases: object

Container class for the orography.

The purpose of this class is to implement pre-processing functions related to the orography.

Parameters:
  • land_sea_mask (np.ndarray, shape (Nlat, Nlon)) – The land/sea mask.

  • orography (np.ndarray, shape (Nlat, Nlon)) – The orography.

land_sea_mask: numpy.ndarray
orography: numpy.ndarray
precorrect_planet_vorticity(qp, orography_scale)

Corrects the precomputed planet vorticity.

Parameters:
  • qp (np.ndarray, shape (Nlevel, Nlat, Nlon)) – The pre-computed planet vorticity.

  • orography_scale (float) – The orography vertical length scale for the correction.

Returns:

qp – The corrected pre-computed planet vorticity.

Return type:

np.ndarray, shape (Nlevel, Nlat, Nlon)

precompute_ekman_friction(weight_land_sea_mask, weight_orography, orography_scale, tau)

Pre-computes the Ekman friction coefficient.

Parameters:
  • weight_land_sea_mask (float) – Weight of the land/sea mask contribution.

  • weight_orography (float) – Weight of the orography mask contribution.

  • orography_scale (float) – The orography vertical length scale.

  • tau (float) – The time scale.

Returns:

mu – Friction coefficient.

Return type:

np.ndarray, shape (Nlat, Nlon)