diff --git a/docs/iris/src/whatsnew/1.12.rst b/docs/iris/src/whatsnew/1.12.rst index f878fe3575..59ea47d876 100644 --- a/docs/iris/src/whatsnew/1.12.rst +++ b/docs/iris/src/whatsnew/1.12.rst @@ -2,7 +2,7 @@ What's New in Iris 1.12 *********************** :Release: 1.12 -:Date: 2017-01-10 +:Date: 2017-01-30 This document explains the new/changed features of Iris in version 1.12 (:doc:`View all changes `.) @@ -11,27 +11,29 @@ Iris 1.12 Features ================== .. _showcase: -.. admonition:: Showcase Feature - New regridding schemes ... +.. admonition:: Showcase Feature: New regridding schemes A new regridding scheme, :class:`iris.analysis.UnstructuredNearest`, - performs nearest-neighbour regridding from "unstructured" onto "structured" grids. - Here, "unstructured" means that the data has X and Y coordinate values + performs nearest-neighbour regridding from "unstructured" onto "structured" + grids. Here, "unstructured" means that the data has X and Y coordinate values defined at each horizontal location, instead of the independent X and Y dimensions that constitute a structured grid. - For example, data sampled on a trajectory or a tripolar ocean grid would be unstructured. + For example, data sampled on a trajectory or a tripolar ocean grid would be + unstructured. - The essential purpose is the same as - :class:`iris.experimental.regrid.ProjectedUnstructuredNearest`. - This scheme, by comparison, is generally more accurate, but slower. + In addition, added experimental ProjectedUnstructured regridders which use + scipy.interpolate.griddata to regrid unstructured data + (see :class:`iris.experimental.regrid.ProjectedUnstructuredLinear` and + :class:`iris.experimental.regrid.ProjectedUnstructuredNearest`). The + essential purpose is the same as :class:`iris.analysis.UnstructuredNearest`. + This scheme, by comparison, is generally faster, but less accurate. - In addition : added experimental ProjectedUnstructured regridders which use scipy.interpolate.griddata to regrid unstructured data (see :class:`iris.experimental.regrid.ProjectedUnstructuredLinear` and :class:`iris.experimental.regrid.ProjectedUnstructuredNearest`) - -.. admonition:: Showcase Feature - Fast UM file loading +.. admonition:: Showcase Feature: Fast UM file loading Support has been added for accelerated loading of UM files (PP and Fieldsfile), when these have a suitable regular "structured" form. - A context manager is used to enable fast um loading in all the regular iris + A context manager is used to enable fast um loading in all the regular Iris load functions, such as :meth:`iris.load` and :meth:`iris.load_cube`, when loading data from UM file types. For example: @@ -102,9 +104,20 @@ Iris 1.12 Features loaded and returned. Previously, this simply resulted in an unrecoverable error. -* The transpose method of a Cube now results in a lazy transposed view of the original rather than realising the data then transposing it. +* The transpose method of a Cube now results in a lazy transposed view of the + original rather than realising the data then transposing it. + +* The :func:`iris.analysis.cartography.area_weights` function is now more + accurate for single precision input bounds. + +* Iris is now able to read seconds in datetimes provided in NAME trajectory + files. + +* Optimisations to trajectory interpolations have resulted in a significant + speed improvement. + +* Many new and updated translations between CF spec and STASH codes. -* The :func:`iris.analysis.cartography.area_weights` function is now more accurate for single precision input bounds. Deprecations ============ @@ -114,4 +127,5 @@ Deprecations Documentation Changes ===================== -* Corrected documentation of :class:`iris.analysis.AreaWeighted` scheme to make the usage scope clearer. +* Corrected documentation of :class:`iris.analysis.AreaWeighted` scheme to make + the usage scope clearer. diff --git a/docs/iris/src/whatsnew/contributions_1.12/deprecate_2016-Nov-09_experimental_fieldsfile.txt b/docs/iris/src/whatsnew/contributions_1.12/deprecate_2016-Nov-09_experimental_fieldsfile.txt deleted file mode 100644 index 78ef1db74d..0000000000 --- a/docs/iris/src/whatsnew/contributions_1.12/deprecate_2016-Nov-09_experimental_fieldsfile.txt +++ /dev/null @@ -1,3 +0,0 @@ -* The :mod:`iris.experimental.fieldsfile` has been deprecated, in favour of the - new fast-loading mechanism provided by - :meth:`iris.fileformats.um.structured_um_loading`. diff --git a/docs/iris/src/whatsnew/contributions_1.12/docchange_2016-Dec-12_areaweighted.txt b/docs/iris/src/whatsnew/contributions_1.12/docchange_2016-Dec-12_areaweighted.txt deleted file mode 100644 index b70e6206dc..0000000000 --- a/docs/iris/src/whatsnew/contributions_1.12/docchange_2016-Dec-12_areaweighted.txt +++ /dev/null @@ -1 +0,0 @@ -* Corrected documentation of :class:`iris.analysis.AreaWeighted` scheme to make the usage scope clearer. diff --git a/docs/iris/src/whatsnew/contributions_1.12/newfeature_2016-Dec-08_pp_lblrec_error.txt b/docs/iris/src/whatsnew/contributions_1.12/newfeature_2016-Dec-08_pp_lblrec_error.txt deleted file mode 100644 index e81b514b25..0000000000 --- a/docs/iris/src/whatsnew/contributions_1.12/newfeature_2016-Dec-08_pp_lblrec_error.txt +++ /dev/null @@ -1,5 +0,0 @@ -* Iris can now load PP files containing a PP field whose LBLREC value does not - match the field length recorded in the file. - A warning message is printed, and all fields up to the offending one are - loaded and returned. - Previously, this simply resulted in an unrecoverable error. diff --git a/docs/iris/src/whatsnew/contributions_1.12/newfeature_2016-May-20_lazy_cube_transpose.txt b/docs/iris/src/whatsnew/contributions_1.12/newfeature_2016-May-20_lazy_cube_transpose.txt deleted file mode 100644 index 79e95711bd..0000000000 --- a/docs/iris/src/whatsnew/contributions_1.12/newfeature_2016-May-20_lazy_cube_transpose.txt +++ /dev/null @@ -1 +0,0 @@ -* The transpose method of a Cube now results in a lazy transposed view of the original rather than realising the data then transposing it. diff --git a/docs/iris/src/whatsnew/contributions_1.12/newfeature_2016-Nov-09_structured_um_loading.txt b/docs/iris/src/whatsnew/contributions_1.12/newfeature_2016-Nov-09_structured_um_loading.txt deleted file mode 100644 index 344e7ae81c..0000000000 --- a/docs/iris/src/whatsnew/contributions_1.12/newfeature_2016-Nov-09_structured_um_loading.txt +++ /dev/null @@ -1,81 +0,0 @@ -* Support for "fast" loading of UM files has been added. - This can dramatically accelerate loading speeds of fieldsfiles and PP files, - if they meet certain common structural requirements, typical for these types - of datafile. - - See : :meth:`iris.fileformats.um.structured_um_loading`. - - .. Note: - - This updates and replaces the experimental code in - :mod:`iris.experimental.fieldsfile`, which is now deprecated in favour of - the new, supported facility. - - [[ - **NOTE TO RELEASE COMPILER** - This needs highlighting, and a better explanation than the plain reference - documentation. We probably want a "featured item" section in the whatsnew, - along the following lines ... - ]] - - Fast UM file loading: - --------------------- - Support has been added for accelerated loading of UM files (PP and - Fieldsfile), when these have a suitable regular 'structured' form. - - A context manager is used to enable fast um loading in all the regular iris - load functions, such as :meth:`iris.load` and :meth:`iris.load_cube`, - when loading data from UM file types. - For example: - - >>> import iris - >>> filepath = iris.sample_data_path('uk_hires.pp') - >>> from iris.fileformats.um import structured_um_loading - >>> with structured_um_loading(): - ... cube = iris.load_cube(filepath, 'air_potential_temperature') - - This approach can deliver loading which is 10 times faster or more. - For example : - - * a 78 Gb fieldsfile of 51,840 fields loads in about 13 rather than 190 - seconds. - * a set of 25 800Mb PP files loads in about 21 rather than 220 seconds. - - For full details, see : :meth:`iris.fileformats.um.structured_um_loading`. - - You can load data with structured loading and compare the results with those - from "normal" loading to check whether they are equivalent. - - * The results will normally differ, if at all, only in having dimensions in a - different order or a different choice of dimension coordinates. - **In these cases, structured loading can be used with confidence.** - - * Ordinary Fieldsfiles (i.e. model outputs) are generally suitable for - structured loading. Many PP files also are, especially if produced - directly from Fieldsfiles, and retaining the same field ordering. - - * Some inputs however (generally PP) will be unsuitable for structured - loading : For instance if a particular combination of vertical levels and - time has been omitted, or some fields appear out of order. - - * There are also some known unsupported cases, including data which is - produced on pseudo-levels. See the detail documentation on this. - - It is the user's responsibility to use structured loading only with suitable - inputs. Otherwise, odd behaviour and even incorrect loading can result, as - input files are not checked as fully as in a normal load. - - Although the user loading call for structured loading can be just the same, - and the returned results are also often identical, structured loading is not - in fact an exact *identical* replacement for normal loading: - - * results are often somewhat different, especially regarding the order - of dimensions and the choice of dimension coordinates. - - * although both constraints and user callbacks are supported, callback - routines will generally need to be re-written. This is because a - 'raw' cube in structured loading generally covers *multiple* PPfields, - which therefore need to be handled as a collection : A grouping object - containing them is passed to the callback 'field' argument. - An example showing callbacks suitable for both normal and structured - loading can be seen `here `_. diff --git a/docs/iris/src/whatsnew/contributions_1.12/newfeature_2017-Jan-05_experimental_scipy_regridder.txt b/docs/iris/src/whatsnew/contributions_1.12/newfeature_2017-Jan-05_experimental_scipy_regridder.txt deleted file mode 100644 index 5c6a6bc8b1..0000000000 --- a/docs/iris/src/whatsnew/contributions_1.12/newfeature_2017-Jan-05_experimental_scipy_regridder.txt +++ /dev/null @@ -1 +0,0 @@ -* Added experimental ProjectedUnstructured regridders which use scipy.interpolate.griddata to regrid unstructured data (see :class:`iris.experimental.regrid.ProjectedUnstructuredLinear` and :class:`iris.experimental.regrid.ProjectedUnstructuredNearest`) diff --git a/docs/iris/src/whatsnew/contributions_1.12/newfeature_2017-Jan-05_fields_file_skip.txt b/docs/iris/src/whatsnew/contributions_1.12/newfeature_2017-Jan-05_fields_file_skip.txt deleted file mode 100644 index 1e36c303d8..0000000000 --- a/docs/iris/src/whatsnew/contributions_1.12/newfeature_2017-Jan-05_fields_file_skip.txt +++ /dev/null @@ -1,6 +0,0 @@ -* A skip pattern is introduced to the fields file loader, such that fields - which cannot be turned into iris PPField instances are skipped and the - remaining fields are loaded. This especially applies to certain types of - files that can contain fields with a non-standard LBREL value : Iris can now - load such a file, skipping the unreadable field and printing a warning - message. diff --git a/docs/iris/src/whatsnew/contributions_1.12/newfeature_2017-Jan-09_unstructured_scheme.txt b/docs/iris/src/whatsnew/contributions_1.12/newfeature_2017-Jan-09_unstructured_scheme.txt deleted file mode 100644 index 2496a3f7e4..0000000000 --- a/docs/iris/src/whatsnew/contributions_1.12/newfeature_2017-Jan-09_unstructured_scheme.txt +++ /dev/null @@ -1,10 +0,0 @@ -* a new regridding scheme, :class:`iris.analysis.UnstructuredNearest`, - performs nearest-neighbour regridding from unstructured onto "normal" grids. - Here, "unstructured" means that the data has X and Y coordinate values - defined at each horizontal location, instead of on independent X and Y - dimensions. - For example, data sampled on a trajectory or a tripolar ocean grid. - - The essential purpose is the same as - :class:`iris.experimental.regrid.ProjectedUnstructuredNearest`. - This scheme, by comparison, is generally more accurate, but slower. diff --git a/lib/iris/__init__.py b/lib/iris/__init__.py index 013e74cd7b..7d997e77d4 100644 --- a/lib/iris/__init__.py +++ b/lib/iris/__init__.py @@ -122,7 +122,7 @@ def callback(cube, field, filename): # Iris revision. -__version__ = '1.12.0rc1' +__version__ = '1.12.0' # Restrict the names imported when using "from iris import *" __all__ = ['load', 'load_cube', 'load_cubes', 'load_raw',