cloudnetpy 1.85.2__py3-none-any.whl → 1.85.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -193,6 +193,12 @@ class HatproBin:
193
193
  self._add_zenith_angle()
194
194
 
195
195
  def screen_bad_profiles(self) -> None:
196
+ # In Limassol 2025-06-06 for instance, LWP is all zero but IWV has
197
+ # values.
198
+ if ma.all(self.data[self.variable] == 0):
199
+ self.data[self.variable][:] = ma.masked
200
+ return
201
+ # Screen by quality flag.
196
202
  is_bad = self.data["_quality_flag"] & 0b110 == self.QUALITY_LOW << 1
197
203
  n_bad = np.count_nonzero(is_bad)
198
204
  if n_bad == len(is_bad):
@@ -689,6 +689,9 @@ class Plot2D(Plot):
689
689
 
690
690
  class Plot1D(Plot):
691
691
  def plot(self, figure_data: FigureData, hacky_freq_ind: int | None = None) -> None:
692
+ if self._data.mask.all() and figure_data.options.raise_on_empty:
693
+ msg = "All data is masked"
694
+ raise PlottingError(msg)
692
695
  units = self._convert_units()
693
696
  self._mark_gaps(figure_data)
694
697
  self._ax.plot(
cloudnetpy/version.py CHANGED
@@ -1,4 +1,4 @@
1
1
  MAJOR = 1
2
2
  MINOR = 85
3
- PATCH = 2
3
+ PATCH = 4
4
4
  __version__ = f"{MAJOR}.{MINOR}.{PATCH}"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cloudnetpy
3
- Version: 1.85.2
3
+ Version: 1.85.4
4
4
  Summary: Python package for Cloudnet processing
5
5
  Author: Simo Tukiainen
6
6
  License: MIT License
@@ -9,7 +9,7 @@ cloudnetpy/metadata.py,sha256=CFpXmdEkVPzvLPv2xHIR-aMMQ-TR26KfESYw-98j7sk,7213
9
9
  cloudnetpy/output.py,sha256=0bybnILsgKHWIuw2GYkqTz2iMCJDZLUN25IQ9o_v3Cg,14968
10
10
  cloudnetpy/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
11
  cloudnetpy/utils.py,sha256=x3hukn7wuOyF3ctG8EOhvLbSUHOVKLW9ez2LzTjeolU,33110
12
- cloudnetpy/version.py,sha256=n8Y4NlhyE8jS82m6d9Bxhu9NW4bStS8hn1r3KqZrqfA,72
12
+ cloudnetpy/version.py,sha256=LUOGWnVi7vV8k73yGc-QF9Xywl4hMvUVTdIAxQgjskA,72
13
13
  cloudnetpy/categorize/__init__.py,sha256=gtvzWr0IDRn2oA6yHBvinEhTGTuub-JkrOv93lBsgrE,61
14
14
  cloudnetpy/categorize/atmos_utils.py,sha256=uWc9TABVYPI0sn4H5Az9Jf6NVRaWyEKIi17f0pAJQxE,10679
15
15
  cloudnetpy/categorize/attenuation.py,sha256=Y_-fzmQTltWTqIZTulJhovC7a6ifpMcaAazDJcnMIOc,990
@@ -54,7 +54,7 @@ cloudnetpy/instruments/pollyxt.py,sha256=IFq_RJrhgJ79OVyuo48PwYQK_zZ6VZFB_S5bEir
54
54
  cloudnetpy/instruments/radiometrics.py,sha256=QKfnrZlQ0sFcFjmv1ShnCMTJQv64w4akjK-JAIY4gCg,16116
55
55
  cloudnetpy/instruments/rain_e_h3.py,sha256=fjv3SgeUNx9GisYqLrBnX9AjnO17VtouyoPh12VE9uo,5465
56
56
  cloudnetpy/instruments/rpg.py,sha256=d7qlfez1Pe326d4xkQrTk2xRxvs3g68LEGehErdoBoc,19122
57
- cloudnetpy/instruments/rpg_reader.py,sha256=NaOtTxXx20PozNTj1xNvmbsEsAxuplFXRzBiM1_-Zg4,11651
57
+ cloudnetpy/instruments/rpg_reader.py,sha256=EcsUUyKNiZ-kEEz48zibs-uXH7CMNpedqlrfWOY4Dks,11899
58
58
  cloudnetpy/instruments/toa5.py,sha256=CfmmBMv5iMGaWHIGBK01Rw24cuXC1R1RMNTXkmsm340,1760
59
59
  cloudnetpy/instruments/vaisala.py,sha256=tu7aljkMKep0uCWz-Sd-GuBXF_Yy421a4nHy0ffpMoc,4725
60
60
  cloudnetpy/instruments/weather_station.py,sha256=mgjTBaJtevW_c3sv_-9jyFo5HXF-eeegXzbHBttxRyg,28845
@@ -104,7 +104,7 @@ cloudnetpy/model_evaluation/tests/unit/test_statistical_methods.py,sha256=Ra3r4V
104
104
  cloudnetpy/model_evaluation/tests/unit/test_tools.py,sha256=Ia_VrLdV2NstX5gbx_3AZTOAlrgLAy_xFZ8fHYVX0xI,3817
105
105
  cloudnetpy/plotting/__init__.py,sha256=lg9Smn4BI0dVBgnDLC3JVJ4GmwoSnO-qoSd4ApvwV6Y,107
106
106
  cloudnetpy/plotting/plot_meta.py,sha256=9d1OgPDysBDUUhncXdj-_EKmGdK7JutNBkzf8YV2lVg,18249
107
- cloudnetpy/plotting/plotting.py,sha256=8NBqYC0RnBQarjFAmqTPYnFcfyRejfJWZ4TcR7EqVUI,41426
107
+ cloudnetpy/plotting/plotting.py,sha256=ZmWddEZVw7xIbmivAH9t4BV_Dxz1du_MvsH6mBMT8MU,41575
108
108
  cloudnetpy/products/__init__.py,sha256=cBJdJBYltz5ZTKDqnRo-0StytAZK8gE3RYxxriFA4ak,295
109
109
  cloudnetpy/products/classification.py,sha256=6WxiGGJXqlAPgJ9hVNTKm3f7iGsqA7e3L3xqVxFFs7w,16894
110
110
  cloudnetpy/products/der.py,sha256=UXdAxmmwChVVWSI4QSGAXphfMnbymGRTtGdKWEvh-J4,13162
@@ -118,10 +118,10 @@ cloudnetpy/products/lwc.py,sha256=xsNiiG6dGKIkWaFk0xWTabc1bZ4ULf6SqcqHs7itAUk,19
118
118
  cloudnetpy/products/mie_lu_tables.nc,sha256=It4fYpqJXlqOgL8jeZ-PxGzP08PMrELIDVe55y9ob58,16637951
119
119
  cloudnetpy/products/mwr_tools.py,sha256=MMWnp68U7bv157-CPB2VeTQvaR6zl7sexbBT_kJ_pn8,6734
120
120
  cloudnetpy/products/product_tools.py,sha256=eyqIw_0KhlpmmYQE69RpGdRIAOW7JVPlEgkTBp2kdps,11302
121
- cloudnetpy-1.85.2.dist-info/licenses/LICENSE,sha256=wcZF72bdaoG9XugpyE95Juo7lBQOwLuTKBOhhtANZMM,1094
121
+ cloudnetpy-1.85.4.dist-info/licenses/LICENSE,sha256=wcZF72bdaoG9XugpyE95Juo7lBQOwLuTKBOhhtANZMM,1094
122
122
  docs/source/conf.py,sha256=IKiFWw6xhUd8NrCg0q7l596Ck1d61XWeVjIFHVSG9Og,1490
123
- cloudnetpy-1.85.2.dist-info/METADATA,sha256=0Hi0m1LJX0OWv2eGf1x4wQY4qiiqb2UxmBiA5BYStLQ,5836
124
- cloudnetpy-1.85.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
125
- cloudnetpy-1.85.2.dist-info/entry_points.txt,sha256=HhY7LwCFk4qFgDlXx_Fy983ZTd831WlhtdPIzV-Y3dY,51
126
- cloudnetpy-1.85.2.dist-info/top_level.txt,sha256=ibSPWRr6ojS1i11rtBFz2_gkIe68mggj7aeswYfaOo0,16
127
- cloudnetpy-1.85.2.dist-info/RECORD,,
123
+ cloudnetpy-1.85.4.dist-info/METADATA,sha256=pphHS172_hmq2kGCZQKFmcP9VnicMegTxXStqPgzwVA,5836
124
+ cloudnetpy-1.85.4.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
125
+ cloudnetpy-1.85.4.dist-info/entry_points.txt,sha256=HhY7LwCFk4qFgDlXx_Fy983ZTd831WlhtdPIzV-Y3dY,51
126
+ cloudnetpy-1.85.4.dist-info/top_level.txt,sha256=ibSPWRr6ojS1i11rtBFz2_gkIe68mggj7aeswYfaOo0,16
127
+ cloudnetpy-1.85.4.dist-info/RECORD,,