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.sigma
sigma to depth converters [PR72].Add the
xoa.num
module 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.interp
1d 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.VariogramModel
to manage a variogram model [PR40].Add the
xoa.krig.Kriger
andxoa.krig.krig()
to perform kriging [PR40].Add the exclude option to data var and coordinate specifications of
xoa.cf.CFSpecs
instances [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
gsw
package.
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_file
sphinx 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.CFSpecs
for 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.CFSpecs
methods 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]