cloudnetpy 1.80.0__py3-none-any.whl → 1.80.1__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.
- cloudnetpy/instruments/ceilo.py +1 -0
- cloudnetpy/instruments/ceilometer.py +18 -0
- cloudnetpy/version.py +1 -1
- {cloudnetpy-1.80.0.dist-info → cloudnetpy-1.80.1.dist-info}/METADATA +1 -1
- {cloudnetpy-1.80.0.dist-info → cloudnetpy-1.80.1.dist-info}/RECORD +9 -9
- {cloudnetpy-1.80.0.dist-info → cloudnetpy-1.80.1.dist-info}/WHEEL +0 -0
- {cloudnetpy-1.80.0.dist-info → cloudnetpy-1.80.1.dist-info}/entry_points.txt +0 -0
- {cloudnetpy-1.80.0.dist-info → cloudnetpy-1.80.1.dist-info}/licenses/LICENSE +0 -0
- {cloudnetpy-1.80.0.dist-info → cloudnetpy-1.80.1.dist-info}/top_level.txt +0 -0
cloudnetpy/instruments/ceilo.py
CHANGED
@@ -121,6 +121,7 @@ def ceilo2nc(
|
|
121
121
|
ceilo_obj.data["depolarisation"].mask = ceilo_obj.data["beta"].mask
|
122
122
|
ceilo_obj.screen_depol()
|
123
123
|
ceilo_obj.screen_invalid_values()
|
124
|
+
ceilo_obj.screen_sunbeam()
|
124
125
|
ceilo_obj.prepare_data()
|
125
126
|
ceilo_obj.data_to_cloudnet_arrays()
|
126
127
|
ceilo_obj.add_site_geolocation()
|
@@ -137,6 +137,24 @@ class Ceilometer:
|
|
137
137
|
msg = f"Invalid beta_raw shape: {beta_raw.shape}"
|
138
138
|
raise ValidTimeStampError(msg)
|
139
139
|
|
140
|
+
def screen_sunbeam(self) -> None:
|
141
|
+
high_alt_mask = self.data["range"] > 10000
|
142
|
+
if not np.any(high_alt_mask):
|
143
|
+
return
|
144
|
+
|
145
|
+
is_data = ~self.data["beta"][:, high_alt_mask].mask
|
146
|
+
n_bins = 20
|
147
|
+
|
148
|
+
n_profiles, n_heights = is_data.shape
|
149
|
+
bin_size = n_heights // n_bins
|
150
|
+
reshaped = is_data[:, : bin_size * n_bins].reshape(n_profiles, n_bins, bin_size)
|
151
|
+
|
152
|
+
valid_profiles = np.any(reshaped, axis=2).sum(axis=1) < 15
|
153
|
+
|
154
|
+
for key, value in self.data.items():
|
155
|
+
if key == "time" or (isinstance(value, np.ndarray) and value.ndim == 2):
|
156
|
+
self.data[key] = value[valid_profiles]
|
157
|
+
|
140
158
|
|
141
159
|
class NoisyData:
|
142
160
|
def __init__(
|
cloudnetpy/version.py
CHANGED
@@ -9,7 +9,7 @@ cloudnetpy/metadata.py,sha256=lO7BCbVAzFoH3Nq-VuezYX0f7MnbG1Zp11g5GSiuQwM,6189
|
|
9
9
|
cloudnetpy/output.py,sha256=gupxt4f_-eUrFsWMto8tnknoV-p9QauC9L6CJAqBILU,15988
|
10
10
|
cloudnetpy/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
11
11
|
cloudnetpy/utils.py,sha256=WczDeGN408XSgGeaRLXFmlLjgAS67lK1osV0YEuKmwo,32027
|
12
|
-
cloudnetpy/version.py,sha256=
|
12
|
+
cloudnetpy/version.py,sha256=3m_TWVm1w7D_LWUssqw3Dz6luV3AUQL5hIn7k2KVs78,72
|
13
13
|
cloudnetpy/categorize/__init__.py,sha256=s-SJaysvVpVVo5kidiruWQO6p3gv2TXwY1wEHYO5D6I,44
|
14
14
|
cloudnetpy/categorize/atmos_utils.py,sha256=RcmbKxm2COkE7WEya0mK3yX5rzUbrewRVh3ekm01RtM,10598
|
15
15
|
cloudnetpy/categorize/attenuation.py,sha256=Y_-fzmQTltWTqIZTulJhovC7a6ifpMcaAazDJcnMIOc,990
|
@@ -35,8 +35,8 @@ cloudnetpy/categorize/attenuations/rain_attenuation.py,sha256=qazJzRyXf9vbjJhh4y
|
|
35
35
|
cloudnetpy/instruments/__init__.py,sha256=PEgrrQNoiOuN_ctYilmt4LV2QCLg1likPjJdWtuGlLs,528
|
36
36
|
cloudnetpy/instruments/basta.py,sha256=Lb_EhQTI93S5Bd9osDbCE_tC8gZreRsHz7D2_dFOjmE,3793
|
37
37
|
cloudnetpy/instruments/bowtie.py,sha256=EyE8HAE8rjO7JelJDbQte_rnwE3VoVJVc6TBpSNK3IU,3930
|
38
|
-
cloudnetpy/instruments/ceilo.py,sha256=
|
39
|
-
cloudnetpy/instruments/ceilometer.py,sha256=
|
38
|
+
cloudnetpy/instruments/ceilo.py,sha256=arXI7i8UiTVIk4N1P8Mnpgs_oXN79ReeBjpYuqqwL04,10473
|
39
|
+
cloudnetpy/instruments/ceilometer.py,sha256=8DzOUC7PUZYLfCC9t9LA5YSsF78xs4B4VjBLx6S-wDE,12980
|
40
40
|
cloudnetpy/instruments/cl61d.py,sha256=0QMqXHIy0hn2mksAwTdaKMOaEWjsZmj7QZ8hCbcHwxE,2225
|
41
41
|
cloudnetpy/instruments/cloudnet_instrument.py,sha256=SGPsRYYoGPoRoDY7hHJcKUVX0A23X0Telc00Fu01PnY,4495
|
42
42
|
cloudnetpy/instruments/copernicus.py,sha256=hCphEKyFCc3f1uLRdjL2435kuh64M5q-V1bI68bzGbA,6528
|
@@ -117,10 +117,10 @@ cloudnetpy/products/lwc.py,sha256=sl6Al2tuH3KkCBrPbWTmuz3jlD5UQJ4D6qBsn1tt2CQ,18
|
|
117
117
|
cloudnetpy/products/mie_lu_tables.nc,sha256=It4fYpqJXlqOgL8jeZ-PxGzP08PMrELIDVe55y9ob58,16637951
|
118
118
|
cloudnetpy/products/mwr_tools.py,sha256=8HPZpQMTojKZP1JS1S83IE0sxmbDE9bxlaWoqmGnUZE,6199
|
119
119
|
cloudnetpy/products/product_tools.py,sha256=uu4l6reuGbPcW3TgttbaSrqIKbyYGhBVTdnC7opKvmg,11101
|
120
|
-
cloudnetpy-1.80.
|
120
|
+
cloudnetpy-1.80.1.dist-info/licenses/LICENSE,sha256=wcZF72bdaoG9XugpyE95Juo7lBQOwLuTKBOhhtANZMM,1094
|
121
121
|
docs/source/conf.py,sha256=IKiFWw6xhUd8NrCg0q7l596Ck1d61XWeVjIFHVSG9Og,1490
|
122
|
-
cloudnetpy-1.80.
|
123
|
-
cloudnetpy-1.80.
|
124
|
-
cloudnetpy-1.80.
|
125
|
-
cloudnetpy-1.80.
|
126
|
-
cloudnetpy-1.80.
|
122
|
+
cloudnetpy-1.80.1.dist-info/METADATA,sha256=to7qpA_egtY91A4EKfa0SckgPWNMr2AkbZ2iWM8VYzA,5803
|
123
|
+
cloudnetpy-1.80.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
124
|
+
cloudnetpy-1.80.1.dist-info/entry_points.txt,sha256=HhY7LwCFk4qFgDlXx_Fy983ZTd831WlhtdPIzV-Y3dY,51
|
125
|
+
cloudnetpy-1.80.1.dist-info/top_level.txt,sha256=ibSPWRr6ojS1i11rtBFz2_gkIe68mggj7aeswYfaOo0,16
|
126
|
+
cloudnetpy-1.80.1.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|