Quicklooks crashes on all-NaN winds product
Quicklooks crashed when I processed a winds product file with all NaNs in wind speed and wind direction (using alpha18b2). I don't know if all-NaNs are to be expected or if this indicates a defective product, but regardless it would be good if quicklooks can handle this edge case gracefully.
The invocation (on espresso) was
aitf-ql /data/users/graemem/workspace/aitf_2_0_alpha18/aitf-smoke-0z-g17/output/s20210600011176/*DMW*s20210600006176*.nc
Note that the glob pattern matches 3 files, and the other two process fine when called individually. When I processed them together I got no outputs.
Here's the error:
2021-09-13 20:11:31.244 (INFO) : Plotting quicklooks for file: /data/users/graemem/workspace/aitf_2_0_alpha18/aitf-smoke-0z-g17/output/s20210600011176/CG_ABI-L2-DMWC-M6C07_G17_s20210600006176_e20210600008560_c20212532336200.nc
Traceback (most recent call last):
File "/home/graemem/workspace/aitf_2_0_alpha18/cspp-geo-aitf-2.0alpha18b/lib/python/ql/aitf_ql.py", line 754, in <module>
sys.exit(main())
File "/home/graemem/workspace/aitf_2_0_alpha18/cspp-geo-aitf-2.0alpha18b/lib/python/ql/aitf_ql.py", line 613, in main
_plot_winds(temp_path, version_msg, comment_msg, dpi_to_use, inch_dims,
File "/home/graemem/workspace/aitf_2_0_alpha18/cspp-geo-aitf-2.0alpha18b/lib/python/ql/aitf_ql.py", line 497, in _plot_winds
LOG.debug("Converted X data is in the range of " + str(numpy.min(x_data)) + " to " + str(numpy.max(x_data)))
File "<__array_function__ internals>", line 5, in amin
File "/home/graemem/workspace/aitf_2_0_alpha18/cspp-geo-aitf-2.0alpha18b/lib/ShellB3/lib/python3.8/site-packages/numpy/core/fromnumeric.py", line 2858, in amin
return _wrapreduction(a, np.minimum, 'min', axis, None, out,
File "/home/graemem/workspace/aitf_2_0_alpha18/cspp-geo-aitf-2.0alpha18b/lib/ShellB3/lib/python3.8/site-packages/numpy/core/fromnumeric.py", line 85, in _wrapreduction
return reduction(axis=axis, out=out, **passkwargs)
File "/home/graemem/workspace/aitf_2_0_alpha18/cspp-geo-aitf-2.0alpha18b/lib/ShellB3/lib/python3.8/site-packages/numpy/ma/core.py", line 5697, in min
result = self.filled(fill_value).min(
File "/home/graemem/workspace/aitf_2_0_alpha18/cspp-geo-aitf-2.0alpha18b/lib/ShellB3/lib/python3.8/site-packages/numpy/core/_methods.py", line 43, in _amin
return umr_minimum(a, axis, None, out, keepdims, initial, where)
ValueError: zero-size array to reduction operation minimum which has no identity