The GRID class
The GRID class forms the bare bones of pyIC. Gridded data form the means to create the GRID instances.
Inputs
GRID has the following arguments:
data_filename
: a path to a gridded data set readable byxarray
.dataset
: anxarray
Dataset.ds_lon_name
: optional str - the variable name for longitude (can be inferred fromself.lon_names
).ds_lat_name
: optional str - the variable name for latitude (can be inferred fromself.lat_names
).ds_z_name
: optional str - the vertical coordinate if it exists.ds_time_counter
: optional str - the variable name for time, inferred astime_counter
if not provided.convert_to_z_grid
: optional bool - whether to regrid vertically using arguments inz_kwargs
(uses xgcm).z_kwargs
: optional dict - arguments for vertical regridding. Must contain as a minimum{'variable':'some_variable','target':xr.DataArray/np.array of levels to interpolate to}
.equation_of_state
: optional str - used to check that the equation of state for source and destination data is the same.
You should provide one of data_filename
or dataset
for reasons that should be obvious: we need gridded data for the GRID objects.
Vertical regridding
This is still under construction but uses xgcm's regridding tool. You may decide to regrid your data vertically first, and then create a pyIC GRID object, either by saving to a netCDF, or using the generated xarray
Dataset as an input to the pyIC grid class.