Version 1.0 Updates¶
Version 1.0.0¶
Deprecated features¶
The following deprecations have been introduced in this release:
Please note that the import paths for the deprecated functions have changed. See the next section for details.
Changed import paths¶
The deprecated functions listed above now have to be imported from the earthkit.meteo.vertical.array submodule. Previously they were available in the earthkit.meteo.vertical submodule.
Removed¶
The following functions have been removed:
earthkit.meteo.thermo.kelvin_to_celsius()earthkit.meteo.thermo.celsius_to_kelvin()
They can be both replaced by using the newly added T_C2K (273.15 K) constant.
High level interface¶
A unified high-level interface has been added across most modules, supporting array, Xarray and earthkit-data FieldList/Field input. The appropriate implementation is selected automatically based on the input type, so the same function names and call signatures work regardless of how the data is represented.
Note
Not all functions support every input type yet, and there may be minor API differences between implementations. Refer to each function’s documentation for details.
from earthkit.meteo import wind
# For array-based inputs
speed = wind.speed(u_array, v_array)
# For Xarray-based inputs
speed = wind.speed(u_xarray, v_xarray)
# For FieldList-based inputs
speed = wind.speed(u_fieldlist, v_fieldlist)
The actual implementations are now available in the array, xarray and fieldlist
submodules and can also be directly accessed bypassing the high level dispatch mechanism.
import earthkit.meteo.wind.array as array_wind
import earthkit.meteo.wind.xarray as xarray_wind
import earthkit.meteo.wind.fieldlist as fieldlist_wind
# For array-based inputs
speed = array_wind.speed(u_array, v_array)
# For Xarray-based inputs
speed = xarray_wind.speed(u_xarray, v_xarray)
# For FieldList-based inputs
speed = fieldlist_wind.speed(u_fieldlist, v_fieldlist)
Examples of using the high-level interface with various inputs can be found in the following notebook example:
New vertical methods¶
The following coordinate computing functions have been added for array and FieldList inputs (see: earthkit.meteo.vertical.array and earthkit.meteo.vertical.fieldlist):
hybrid_level_parameters
pressure_on_hybrid_levels
relative_geopotential_thickness_on_hybrid_levels_from_alpha_delta
relative_geopotential_thickness_on_hybrid_levels
geopotential_on_hybrid_levels
height_on_hybrid_levels
The following vertical interpolation functions have been added for array and FieldList inputs (see: earthkit.meteo.vertical.array and earthkit.meteo.vertical.fieldlist):
interpolate_hybrid_to_pressure_levels
interpolate_hybrid_to_height_levels
interpolate_pressure_to_height_levels
interpolate_monotonic
The following vertical interpolation functions have been added to the earthkit.meteo.vertical.xarray submodule for Xarray inputs:
interpolate_monotonic
interpolate_to_pressure_levels
interpolate_sleve_to_coord_levels
interpolate_sleve_to_theta_levels
See all notebook examples for vertical coordinate and interpolation functions in the Vertical tutorial section.
Regimes¶
Added new submodule earthkit.meteo.regimes with classes to define a weather regime classification based on patterns and functions to project anomaly fields onto these patterns to compute a regime index, following the approach of Michel and Rivière (2011).
See the notebook example: Regimes: year-round North Atlantic-European Weather Regimes
Bootstrap utilities¶
Added a new bootstrapping helper module earthkit.meteo.score.bootstrap
(#54) providing functions for statistical resampling and bootstrap
confidence interval estimation. Both array and xarray inputs are supported.
Key functions:
resample()— draw bootstrap samples from a dataset, with optional replacementbootstrap()— compute a statistic over bootstrap samples
New features¶
Added option “bolton43” to compute the equivalent potential temperature using equation (43) from [Bolton1980] (#128). See:
kge exposed at top-level score module¶
kge() (Kling–Gupta Efficiency) is now importable
directly from earthkit.meteo.score (#162).