Changelog#
dev#
- Date:
TBA
TODO
2024-11#
- Date:
1 November 2024
Make aeolus compatible with iris>=3.10.
Improve
lfric.process_lfric
.Add an example notebook for regridding LFRic output.
2024-04#
- Date:
29 April 2024
Require iris>=3.9.
Add Python 3.12, drop 3.9.
Modify
precip_sum()
for missing data in LFRic outputAdd
plot.text.all_sim_file_label()
Add
lfric.replace_mesh()
.Remove
plot.pv.cube2d_to_polydata()
(Replaced byiris.experimental.geovista.cube_to_polydata()
).Add a run-time option to reduce image file size (
RUNTIME.figsave_reduce_size
), set toFalse
by default.Update dependencies.
0.4.18#
- Date:
22 September 2023
Re-fix the bug in day-night transmission spectra averaging.
Add
lfric
functions in a submodule with the same name.Add
esmf_regrid
as a dependency.Move
calc_derived_cubes
frompouch
, addair_pressure()
.Add various plotting utilities.
Add the
log
submodule withloguru
as a dependency.Add
proc_um_output
.Add the
RUNTIME
variable.Update dependencies.
0.4.17#
- Date:
14 April 2023
Add
lfric
name dictionary.Add
subset.CellMethodConstraint
.Update
pyvista
functions to be in step with the latestpyvista
version.Fix a bug in the
calc_transmission_spectrum()
(does not affect the results).
0.4.16#
- Date:
11 January 2023
Miscellaneous improvements.
0.4.15#
- Date:
22 April 2022
Patch the calculation of the day-night average transmission flux.
Update citation.
0.4.14#
- Date:
30 March 2022
Require iris 3.2 as a minimum.
Drop Python 3.7 support.
Add github action tests for Python 3.10 (for now excluding windows).
Add new model names.
Correct the calculation of
sigma_p
and remove its averaging.Make
calc.stats.time_mean()
be able to accept cubes or collections of cubes.Add the
structured_um_loading
option toio.load_data()
.Add
wind_rot_div()
to the diagnostics module and a relevant example notebook.Simplify
isel()
following suggestions from theiris
devs.
0.4.13#
- Date:
18 October 2021
Make the package compatible with iris v3.1 by using explicit imports
Refactor functions to calculate transmission spectrum.
Add
io.create_dummy_cube()
Add
synthobs.calc_transmission_spectrum()
Use
da.roll()
instead ofnp.roll
incoord.roll_*
functions.Fix a few minor bugs in synthobs.
0.4.12#
- Date:
29 July 2021
Add
coord_check
option toAtmoSim
andCoordContainer
to allow for non-checking of coordinates.Remove
MidpointNormalize
Add
plot.text.tex2cf_units()
andplot.text.unit_format()
Rewrite github actions
Add pre-commit hooks
0.4.11#
- Date:
08 June 2021
Add representations of
AtmoSim
Fix a bug with the
const_from_attrs
decoratorAdd contributor’s guide
Replace all autodoc function and class references by module references
0.4.10#
- Date:
07 June 2021
Add functions to calculate synthetic transmission spectrum. By Maria Zamyatina.
Replace
interp_to_pres_lev()
,interp_all_to_pres_lev()
andinterp_to_single_pres_lev()
withinterp_cube_from_height_to_pressure_levels()
andinterp_cubelist_from_height_to_pressure_levels()
with a better interfaceMove test data to a separate repository:
aeolus_data
Add more names to
model.base
Add an option for the
const_from_attrs()
decorator not to raise an error
0.4.9#
- Date:
12 April 2021
Add cached-property as a dependency
Rename
AtmosFlow
toAtmoSim
and create a base classAtmoSimBase
Add
extract()
method toAtmoSimBase
Add pressure coordinate to
DimConstr
Refactor
Run
and prepare for its deprecationAdd
load_data()
toio
Move
add_planet_conf_to_cubes()
to theconst
moduleDeprecate
ScalarCube
Add new variable names to
um
Refactor derived constants and add
planet_rotation_rate
to the recipesAdd an option not to broadcast the coordinate to the cube’s shape in
coord_to_cube()
Make
spatial()
,time_mean()
andvertical_mean()
return the input cube in case ofCoordinateCollapseError
Add
abs_coord_mean()
to average data over latitudes symmetric around the equatorAdd functions to calculate meridional and zonal streamfunctions
Improve docstrings
Add an example notebook for working with model names
0.4.8#
- Date:
25 January 2021
Adapt to iris v3.0
Add new meta decorators
Fix typos
0.4.7#
- Date:
03 December 2020
Move to conda-forge for building the package
Replace TravisCI with GitHub Actions
Restructure the package:
the library is now in
src/aeolus
tests are now in
tests/
Core classes:
Add
AtmosFlow
New
calc
functions:Add a decorator to update cube metadata,
update_metadata()
Add shortcut functions
spatial_mean()
andtime_mean()
Add
air_potential_temperature()
Add functions to rotate and regrid variables to “tidally-locked” coordinates
Add
wind_speed()
New
coord
functions:Add functions to interpolate cubes to pressure levels (depend on python-stratify package)
Add a function to interpolate one cube to another along the time dimension (
interp_to_cube_time
)Add a container to store common coordinates
Add
check_coords()
,get_xy_coords()
New
subset
functions:Add a function to filter out duplicated cubes from a cubelist:
unique_cubes()
Other changes:
Append names to
model.um
Add a function to load vertical levels data
Improve
interp_to_pres_lev()
Add
model
keyword toplot.pv
functionsRewrite
DimConstr
API
0.4.6#
- Date:
17 September 2020
New
calc
functions:Add convenience functions to
calculus
for doing simple derivativesAdd a function to calculate horizontal divergence in spherical coordinates
Add
air_density()
,air_temperature()
,dry_lapse_rate()
,flux()
andgeopotential_height
functionsAdd
horiz_wind_cmpnts()
helper functionAdd
normalize_cube()
Add
superrotation_index()
New
coord
functions:Add a function to emulate
xarray
’sisel()
method.Update
get_cube_datetimes()
and add a new function,get_cube_rel_days()
Add a function to broadcast coordinate deltas to a cube.
Add a function to calculate volume from a cube’s grid.
Other changes:
Append names to
model.um
Refactor surface and TOA energy balance calculation, and do not apply spatial averaging to P-E
Override
__repr__
ofmodel.base.Model
0.4.5#
- Date:
08 June 2020
API changes:
add
model
submodule for model-specific variable and coordinate namesreplace all
UM_*
variables with themodel
referencereplace all
DIM_CONSTR_*
by a classDimConstr
with each of the constraints as an attributereplace
coord.add_binned_lon_lat()
by a genericcoord.add_binned_coord()
function
Minor bug fixes and clean-up
0.4.4#
- Date:
04 May 2020
Add Python 3.8 to build matrix
API changes: merge
grid
intocoord
; movemisc
flux calculations tocalc
submodule, removeutil
folder by movingtext
toplot
.Add a function to attach non-Earth auxiliary time coordinates to a cube
Add Titan constants (some orbital parameters are those for Saturn for simplicity)
Fix a typo in Earth constants
Add a new function for matplotlib plots:
plot.add_custom_legend()
Minor fixes in the travis integration
0.4.3#
- Date:
30 March 2020
Add diagnostics:
vertical_mean()
,vertical_sum()
Improve diagnostics (
sfc_water_balance()
) and utilities (regrid3d()
)Allow for the initialisation of
Run
from a pre-processed dataAdd a method to
Run
to save processed cubelist to netCDFFix a few bugs
0.4.2#
- Date:
05 January 2020
Improve calculation of precipitation sums
Add a helper function to retrieve planet radius from a cube
Add
timestep
attribute toRun
Improve docstrings
Remove two functions from
pv
submodule (now inpyvista
library)Move documentation to github pages
Fix a few bugs
0.4.1#
- Date:
03 December 2019
Add a few standard constants
Improve units in metpy interface
0.4.0#
- Date:
28 November 2019
Add metpy-to-iris interface
Fix a few bugs
0.3.2#
- Date:
21 November 2019
Add basic examples as Jupyter Notebooks
Improve plotting functions and diags
Add test data
0.2#
- Date:
02 November 2019
Technical updates
0.1#
- Date:
31 October 2019
First packaged release