Gridded NetCDF domain (gridded_netcdf / std)

Description

Reads domain from a gridded NetCDF file

This plugin read the ‘latitude x longitude’ or ‘level x latitude x longitude’ domain from NetCDF files coordinates.

The latitude and longitude coordinate can be infered by their standard_name or long_name attribute (which should be 'latitude' or 'longitude'), Otherwise, .

If the latitude or longitude variable has a bounds attribute, the cell bounds are read from the variable given by this bounds attribute (which should be shaped as (n, 2)). Otherwise the bounds are computed with the max/min arguments and the lat/lon coordinates (assuming they represents the cells centers of a regular grid).

Vertical levels information (sigma pressure) is read only if the argument vertical_coord is provided. Vertical levels information can reside in a separate NetCDF file

Yaml arguments

The following arguments are used to configure the plugin. pyCIF will return an exception at the initialization if mandatory arguments are not specified, or if any argument does not fit accepted values or type:

Mandatory arguments

file: (mandatory)

NetCDF file containing the grid coordinates

accepted type: str

Optional arguments

dir: (optional):

Directory containing file

accepted type: str

dir_vcoord: (optional):

Directory containing file_vcoord. Use this argument if the vertical coordinates are not in file

accepted type: str

file_vcoord: (optional)

NetCDF file containing the vertical coordinates. Use this argument if the vertical coordinates are not in file

accepted type: str

vertical_coord: (optional)

Read the domain’s vertical levels if this parameter is used. Should be ‘mids’ if the vertical coordinate represents the levels mid-points or ‘bounds’ if the vertical coordinate represents the levels boundaries. If this parameter is not used a domain single vertical level is created

accepted values:

  • mids: levels mid-points

  • bounds: levels boundaries

vertical_dim_name: (optional): lev

Vertical dimension name in file or file_vcoord

accepted type: str

sigma_a_var_name: (optional): ap

‘sigma a’ variable name in file or file_vcoord

accepted type: str

sigma_b_var_name: (optional): bp

‘sigma b’ variable name in file or file_vcoord

accepted type: str

pressure_unit: (optional)

pressure units if different from units attributes in sigma `a` variable, should be ``'Pa' or 'hPa'

accepted values: [‘Pa’, ‘hPa’]

latitude_varname: (optional): latitude

Latitude coordinate variable name in file. If this argument is not provided, the latitude coordinate is found by its standard_name or long_name attribute (which should be 'latitude').

accepted type: str

longitude_varname: (optional): longitude

Longitude coordinate variable name in file. If this argument is not provided, the longitude coordinate is found by its standard_name or long_name attribute (which should be 'longitude').

accepted type: str

latitude_dimname: (optional): latitude

Latitude dimension name in file.

accepted type: str

longitude_dimname: (optional): longitude

Longitude dimension name in file.

accepted type: str

use_corners: (optional): False

True if the longitudes and latitudes are used to defined the corners instead of gridcell centers

accepted type: bool

extend_lat: (optional): False

Extend corner latitudes by one cell if nlat_corner != nlat + 1

accepted type: bool

extend_lon: (optional): False

Extend corner longitudes by one cell if nlon_corner != nlon + 1

accepted type: bool

lat_min: (optional): -90.0

Minimum latitude

accepted type: float

lat_max: (optional): 90.0

Maximum latitude

accepted type: float

delta_lat: (optional)

Skip the reading/computation of latitude bounds and use regular gridcells with a size of delta_lat. delta_lat should divide lat_max - lat_min and be coherent with the NetCDF file dimensions.

accepted type: float

lon_min: (optional): -180.0

Minimum longitude

accepted type: float

lon_max: (optional): 180.0

Maximum longitude

accepted type: float

delta_lon: (optional)

Skip the reading/computation of longitude bounds and use regular gridcells with a size of delta_lon. delta_lon should divide lon_max - lon_min and be coherent with the NetCDF file dimensions.

accepted type: float

regular_lon: (optional): True

Overwrites the default behaviour of regular domain in zonal direction to compute corners. In this case, use the first and last delta to extent East and West

accepted type: bool

regular_lat: (optional): True

Overwrites the default behaviour of regular domain in meridional direction to compute corners. In this case, use the first and last delta to extent South and North

accepted type: bool

sort_lat: (optional): True

Sort latitudes in ascending order

accepted type: bool

sort_lon: (optional): True

Sort longitudes in ascending order

accepted type: bool

Yaml template

Please find below a template for a Yaml configuration:

 1domain:
 2  plugin:
 3    name: gridded_netcdf
 4    version: std
 5    type: domain
 6
 7  # Mandatory arguments
 8  file: XXXXX  # str
 9
10  # Optional arguments
11  dir: XXXXX  # str
12  dir_vcoord: XXXXX  # str
13  file_vcoord: XXXXX  # str
14  vertical_coord: XXXXX  # mids|bounds
15  vertical_dim_name: XXXXX  # str
16  sigma_a_var_name: XXXXX  # str
17  sigma_b_var_name: XXXXX  # str
18  pressure_unit: XXXXX  # Pa|hPa
19  latitude_varname: XXXXX  # str
20  longitude_varname: XXXXX  # str
21  latitude_dimname: XXXXX  # str
22  longitude_dimname: XXXXX  # str
23  use_corners: XXXXX  # bool
24  extend_lat: XXXXX  # bool
25  extend_lon: XXXXX  # bool
26  lat_min: XXXXX  # float
27  lat_max: XXXXX  # float
28  delta_lat: XXXXX  # float
29  lon_min: XXXXX  # float
30  lon_max: XXXXX  # float
31  delta_lon: XXXXX  # float
32  regular_lon: XXXXX  # bool
33  regular_lat: XXXXX  # bool
34  sort_lat: XXXXX  # bool
35  sort_lon: XXXXX  # bool