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.regionandgrid.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.regionandgrid.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
Gridconstructor.Rename
Grid.ddphi()toGrid.derivative_meridional().Rename
Grid.zonalize_eqlat()toGrid.zonalize().Fix
Grid.quad_boxcount().Merge quadrature functions into
Grid.quad().Add
Grid.fcorand rename old fcor to fcor2.Perform more
Statecomputations in spectral space to improve accuracy.Always send PV field through spectral space to ensure consistency in
Stateconstructor.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.diagnosticsmodule 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_filteredbefore 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.RHSSumandrhs.RHSProducthave 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:
Gridexposes additional properties (nlon, nlat, dlon, dlat, phis, lams).Gridis 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
iosubmodule 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.initsubmodule instead of being staticmethods ofState.BarotropicModelnow acceptsNonefor the RHS forcing.The diffusion_kappa parameter of
BarotropicModelis now called diffusion_coeff.RHS PV tendencies are expected to be gridded instead of spectral.
The resolution of a
Gridis now specified with the resolution argument (was named latlon_resolution).The properties latitudes and longitudes of
Gridare 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
Stateinstead 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.