Open bouweandela opened 5 years ago
@bouweandela I highly suspect that the generic core iris.analysis.Linear
interpolator scheme will not be performant enough for you. Not even close.
The attraction of python-stratify
is that it is cythonized, therefore closer to bare metal speed. However, you are right, it isn't lazy. I'm keen to do a couple of things here...
python-stratify
package from our experimental SciTools-incubator
organisation into our core SciTools
organisation, as it's stable an used in production code_vertical_interpolate
from esmvaltool
into the iris
core_vertical_interpolate
lazy_vertical_interpolate
is embarrassingly parallel, as each vertical column is completely independent, so investigate whether we can parallelize using dask
will this be included (or excluded) in iris=2.3
@bjlittle ? I am starting to think we should make a list of ESMValTool/Core iris
-related issues with fixes in 2.3 :beer:
noticed in #776 that stratify
accepts and works happily with cube.core_data()
- any way to make it fully lazy and output a lazy data array @bjlittle ? :beer:
It looks like iris supports vertical regridding: https://scitools.org.uk/iris/docs/latest/userguide/interpolation_and_regridding.html#interpolating-non-horizontal-coordinates
@bjlittle Do we still need python-stratify for vertical interpolation? Additionally, do we still need to do cube slicing if the levels are already available, is this shortcut not taken by the iris vertical interpolator?
There are two problems with python-stratify:
it cannot be installed from PyPI-> this is apparently solved, but see also https://github.com/SciTools-incubator/python-stratify/issues/25Here is a link to the relevant code: https://github.com/ESMValGroup/ESMValTool/blob/3e68d1593f544694618617368f8a3c88d0683f33/esmvaltool/preprocessor/_regrid.py#L327-L434