Release Notes¶
Barotropic 3.1¶
Minor release, 2 Jun 2024.
New features:
Add
StateList
.Add
io.as_dataset()
.Reimplement
io.from_dataset()
.Allow specification of reference state for diffusion in
BarotropicModel
.
Package and documentation:
Add documentation for
Grid.region
andgrid.GridRegion
.Replace setup.py with pyproject.toml.
Restructure repository.
Update dependencies.
Barotropic 3.0.1¶
Patch release, 28 Mar 2022.
Fix planetary vorticity in summary plot.
Barotropic 3.0¶
Major release, 9 Feb 2022.
Note
This version is not backwards-compatible with v2.x.
New features:
Add
Grid.mean()
.Add
Grid.region
andgrid.GridRegion
.Add
Grid.laplace()
andGrid.laplace_spectral()
.Add
Grid.solve_diffusion()
andGrid.solve_diffusion_spectral()
.Allow for sectoral zonalization with
Grid.zonalize()
.Add
State.as_hn2016()
andState.from_hn2016()
.Add informative __repr__ methods to some classes.
Changes:
Make longitude the first dimension in all user-facing code, following plotting convention.
Make resolution the first argument of the
Grid
constructor.Rename
Grid.ddphi()
toGrid.derivative_meridional()
.Rename
Grid.zonalize_eqlat()
toGrid.zonalize()
.Fix
Grid.quad_boxcount()
.Merge quadrature functions into
Grid.quad()
.Add
Grid.fcor
and rename old fcor to fcor2.Perform more
State
computations in spectral space to improve accuracy.Always send PV field through spectral space to ensure consistency in
State
constructor.Rename attributes of
State
: lats to lat, lons to lon, lat to lat2, lon to lon2Renamed
State.v_envelope_hilbert
.Remove
State.dominant_wavenumber
.Switch to much faster Fourier-based dominant wavenumber computation in
State.falwa_filtered
.Fix double diffusion step in
BarotropicModel.euler()
.Rename
barotropic.diagnostics
module and some function therein.Arguments of
diagnostics.envelope_hilbert()
now matchdiagnostics.dominant_wavenumber_fourier()
.Remove
diagnostics.falwa_hn2016()
andState.falwa_hn2016()
.Reimplement interpolation in
diagnostics.falwa()
anddiagnostics.fawa()
.The wavenumber in
diagnostics.filter_by_wavenumber()
is now determined by FWHM. Previously the wavelength corresponding to the given wavenumber determined the full width of the window. The change aligns the implementation with the original intention of filtering like Ghinassi et al. (2018, 2020). Things worked out before because the dominant wavenumber extracted from the meridional wind is half that of the corresponding FALWA field so the filter widths were sized as intended. Now the v-based wavenumber is doubled inState.falwa_filtered
before it is given todiagnostics.filter_by_wavenumber()
to compensate for the change.diagnostics.filter_by_wavenumber()
now accepts zonally symmetric wavenumber fields as 1-dimensional nlat-sized arrays and is faster as it omits computation of smoothed fields that are not required.
Package and documentation:
Move unit tests to pytest.
Move documentation to sphinx.
Add scipy as a non-optional dependency.
General improvements to documentation.
New example notebook that demonstrates wavenumber-based filtering.
Barotropic 2.0.1¶
Patch release, 12 Jul 2020.
Fix import of BarotropicField from hn2016_falwa.
Declare the public interface explicitly with __all__ in the __init__.py.
Improve consistency of docstrings and add missing docstrings.
Hide imported constants in submodules.
rhs.RHSSum
andrhs.RHSProduct
have been renamed and are now hidden.plot.reduce_vectors()
has different argument names.
Barotropic 2.0¶
Major release, 23 Apr 2020.
Note
This version is not backwards-compatible with v1.x.
New features:
Grid
exposes additional properties (nlon, nlat, dlon, dlat, phis, lams).Grid
is now able to compute gradients.The output of
Grid.zonalize_eqlat()
should have improved in terms of contour value sampling and computation time for the default arguments.Stationary wavenumber diagnostic, waveguide detection and plot preset.
New initial states
init.motionless()
andinit.zonally_symmetric()
have been added.Plot presets now allow selection of the latitude that is centered in maps.
The pseudo-orography term has been completely reimplemented and now provides more configuration options and the possiblity to load a gridded orography.
A new
io
submodule allows import of xarray datasets. However this functionality is not fully implemented yet.
Some functions and arguments have been renamed to achieve a more consistent naming throughout the code:
Initial states are now accessible from a new
barotropic.init
submodule instead of being staticmethods ofState
.BarotropicModel
now acceptsNone
for the RHS forcing.The diffusion_kappa parameter of
BarotropicModel
is now called diffusion_coeff.RHS PV tendencies are expected to be gridded instead of spectral.
The resolution of a
Grid
is now specified with the resolution argument (was named latlon_resolution).The properties latitudes and longitudes of
Grid
are now called lats and lons.The parameters to specify the properties of the gaussian_jet initial state and orographic forcing have been changed.
Plots are now accessible via a plot property of
State
instead of methods whose names start with plot_.
Documentation:
New example notebook recreating the experiments from Wirth (2020).
Barotropic 1.0¶
Initial release, 26 Nov 2019.