What’s new
0.7.1 (2023-07-21)
New features
Add support for not creating multi-indexes in
xoa.coords.geo_stack().
Bug fixes
Fix
xoa.geo.get_distances()that was not able to handle multi-indexes fromxoa.coords.geo_stack().Fix doc generation [PR83].
Fix
xoa.sigma.get_cs()to keep it compatible with pure numpy arrays
Documentation
Add a link to the github repository.
0.7.0 (2023-07-17)
New features
Add issue and pull request templates.
Add the
xoa.filter.smooth()function [PR76].Improved the default sig and std parameter values for filter windows that accept them [PR76].
Add the
xoa.plot.plot_minimap()andxoa.plot.plot_double_minimap()functions to display the geographic situation of a set of coordinates [PR73].Add support for the min_extent keyword to
xoa.geo.get_extent()[PR73]Add dask support to
xoa.sigmasigma to depth converters [PR72].Add the
xoa.nummodule that contains low level numeric utilities.Add the
xoa.thermdyn.mixed_layer_depth()function to compute the mixed layer depth with three different methods [PR67, PR75].Add the
xoa.thermdyn.is_temp(),xoa.thermdyn.is_sal()andxoa.thermdyn.is_dens()functions to infer if an array of temperature, salinity or density type, and added the relatedxoa.thermdyn.get_temp(),xoa.thermdyn.get_sal()andxoa.thermdyn.get_dens()function to search in datasets[PR67, PR79].Add kernel_kwargs keyword to
xoa.filter.convolve()to better control the kernel generation byxoa.filter.generate_kernel()[PR64].Add inference of parameters for some window functions, like the gaussian shape, in
xoa.filter.get_window_func()[PR64].Add
xoa.regrid.isoslice()based onxoa.interp.isoslice()core function [PR63].
Breaking changes
get_window_func()now accepts only one positional argument and all other arguments must be named.
Bug fixes
Fix
xoa.cfgm.is_boolstr()which now supports the newconfigobj.Fix broadcasting
xoa.interp1d interpolation routines [GH69].Fix
xoa.sigma.get_sigma_terms()so that it works in case of multiple levels coordinates [PR60].Fix
xoa.grid.to_rect()that now infers coordinates and can emit a warning or raise an error.
Documentation
Add an example of xoa.plot.plot_double_minimap to Compare Mercator to ARGO and Compare Hycom3d with a GDP drifter examples [PR73].
Add an example of xoa.thermdyn.mixed_layer_depth to Interpolate a meridional section of CROCO outputs to regular depths example [PR67].
0.6.1 (2022-02-24)
New features
Add a warning to
xoa.open_data_sample()that is emitted when the requested file is not an internal data sample [PR47].Add the
xoa.plot.add_shadow(),xoa.plot.add_glow()andxoa.plot.add_lightshading()function to add path effects to plots [PR44].Add the
xoa.plot.plot_ts()function to make T-S diagrams [PR43].Add the
xoa.filter.demerliac()function to apply a Dermerliac filter to time serie [PR41].Add support for fine tuning masking in
xoa.filter.convolve()through the na_thres parameter [PR41].Add the
xoa.geo.cdist()andxoa.geo.pdist()functions to compute haversine distances respectively between two dataset and with a dataset [PR40].Add the
xoa.coords.geo_stack()function to stack longitudes and latitudes into another dimension, in a dataset or data array [PR40].Add the
xoa.filter.decimate()function to crudely undersample a geographic dataset or data array with a radius of proximity [PR40].Add the
xoa.geo.get_distances()to compute the Haversine distances between locations inside a single dataset or between txo datasets [PR40].Add the
xoa.krig.empirical_variogram()function to estimate variogram parameters.Add the
xoa.krig.VariogramModelto manage a variogram model [PR40].Add the
xoa.krig.Krigerandxoa.krig.krig()to perform kriging [PR40].Add the exclude option to data var and coordinate specifications of
xoa.cf.CFSpecsinstances [PR38].
Breaking changes
A single Nan now contaminates the data over the kernel emprise in
xoa.filter.convolve()since na_thres is set to zero by default [PR40].xoa now requires the
gswpackage.
Bug fixes
Fix
xoa.regrid.regrid1d()so that it works now with time coordinates [PR48].Fix
xoa.regrid.grid2loc()so that it works with scalar output coordinates.Fix
xoa.regrid.regrid1d()to prevent conflict in the presence of MultiIndexes.Fix search for coordinates that are hidden due to
xarray.DataArray.stack().
Documentation
Add the Compare Mercator to ARGO example.
0.6.0 (2022-02-24)
Empty with non existing tag.
0.5.1 (2021-10-13)
New features
Switch the CI workflow to github [PR36].
Bug fixes
Fix
xoa.cf.CFSpecs.to_loc()that which failing with dataset [PR23].
0.5.0 (2021-10-12)
New features
Add the hlocs argument to
xoa.sigma.get_sigma_terms()andxoa.sigma.decode_cf_sigma()to decode at several horizontal staggered grid locations [PR34].Add the edges argument to
xoa.regrid.regrid1d()to manually specify the edges that are used by the “cellave” regridding method [PR34].Add back the loc argument to the formatting methods of
xoa.cf[PR34].Add dimension checking and support for dask arrays in
xoa.sigma[PR34].Expose a few options of
xoa.cfgm.ConfigManager()to thexoa.cfgm.cfgargparse()function.Add the
cfgm_cfg_filesphinx configuration option to save the default configuration of axoa.cfgm.ConfigManager().
Bug fixes
Fix
xoa.regrid.regrid1d()with “cellave” method [PR34].Fix
xoa.cf.CFSpecs.get_location_mapping()for coordinates that have no axis attribute specifications [PR34].Fix
xoa.grid.dz2depth()that was not working properly with 4D+ arrays [PR34].
Breaking changes
The loc argument of
xoa.sigma.get_sigma_terms()is renamed vloc [PR34].
0.4.0 (2021-09-02)
New features
xoa.cf.CFSpecs.decode()better supports staggered grids.xoa.cf.CFSpecs.search_dim()supports generic names in addition to dimension types as second argument.Add the
xoa.cf.CFSpecs.match_dim()method to check if a given dimension name is known.Add the
reloc()andto_loc()methods toxoa.cf.CFSpecsfor quickly changing the staggered grid indicators in names.Add the
xoa.cf.SGLocator.add_loc()method to quickly change the location markers in a data array.
Breaking changes
xoa.coords.get_dims()is renamed toxoa.coords.get_cf_dims().The name argument of
xoa.cf.CFSpecsmethods is renamed to cf_name, and the dim_type(s) argument is renamed to cf_arg(s).xoa.cf.SGLocator.get_location()is renamed toget_loc_from_da()and theget_loc()is added.
Bug fixes
Fix the output formatting of
xoa.grid.dz2depth().
Documentation
The Naming conventions with xoa.cf section and Compare Hycom3d with a GDP drifter example are adapted to reflect changes.
v0.3.1 (2021-05-21)
New features
Add an autolim keyword to
xoa.plot.plot_flow()to speedup the processing with cartopy maps.
Breaking changes
Rename the cf and sigma keyword of
xoa.register_accessors()respectively to xcf and decode_sigma to match the default name of accessors.Rename the sigma accessor to decode_sigma.
Bug fixes
Fix the access to the xoa executable on windows.
Fix the minimal version for xarray [PR23].
Documentation
Add a “How to start” section.
Accessors are now documented separately with sphinx-autosummary-accessors [PR20].
The Hycom-GDP example now uses
xoa.plot.plot_flow().
v0.3.0 (2021-05-12)
New features
Add the
xoa.plot.plot_flow()function [PR9].Improve
xoa.coords.get_depth()so that it can compute depth from sigma coordinates or layer thinknesses [PR8].Add the
xoa.dyn.flow2d()function [PR7].Add the
xoa.regrid.extrap1d()function.Add the
xoa.filter.erode_coast()function which is specialized version of thexoa.filter.erode_mask()for horizontal data.Add the
xoa.coords.get_xdim(),get_ydim(),get_zdim(),get_tdim()andget_fdim()for quickly finding standard dimensions.
Bug fixes
Fix u and v CF config [PR6]