cloudnetpy 1.61.3__py3-none-any.whl → 1.61.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.
@@ -194,9 +194,13 @@ class Thies(Disdrometer):
194
194
 
195
195
  def _read_line(self, line: str, timestamp: datetime.datetime | None = None):
196
196
  raw_values = line.split(";")
197
- if len(raw_values) != 521:
197
+ # Support custom truncated format used in Leipzig LIM.
198
+ expected_columns = self.site_meta.get("truncate_columns", 521)
199
+ if len(raw_values) != expected_columns:
198
200
  return
199
201
  for i, key in TELEGRAM4:
202
+ if i >= expected_columns - 1:
203
+ break
200
204
  value: Any
201
205
  if key == "_date":
202
206
  value = _parse_date(raw_values[i])
@@ -227,11 +231,12 @@ class Thies(Disdrometer):
227
231
  else:
228
232
  value = int(raw_values[i])
229
233
  self.raw_data[key].append(value)
230
- self.raw_data["spectrum"].append(
231
- np.array(list(map(int, raw_values[79:-2])), dtype="i2").reshape(
232
- self.n_diameter, self.n_velocity
234
+ if expected_columns > 79:
235
+ self.raw_data["spectrum"].append(
236
+ np.array(list(map(int, raw_values[79:-2])), dtype="i2").reshape(
237
+ self.n_diameter, self.n_velocity
238
+ )
233
239
  )
234
- )
235
240
  if timestamp is not None:
236
241
  self.raw_data["time"].append(timestamp)
237
242
  else:
@@ -266,7 +271,9 @@ class Thies(Disdrometer):
266
271
 
267
272
  def _parse_date(date: str) -> datetime.date:
268
273
  day, month, year = map(int, date.split("."))
269
- return datetime.date(2000 + year, month, day)
274
+ if year < 100:
275
+ year += 2000
276
+ return datetime.date(year, month, day)
270
277
 
271
278
 
272
279
  def _parse_time(time: str) -> datetime.time:
cloudnetpy/version.py CHANGED
@@ -1,4 +1,4 @@
1
1
  MAJOR = 1
2
2
  MINOR = 61
3
- PATCH = 3
3
+ PATCH = 4
4
4
  __version__ = f"{MAJOR}.{MINOR}.{PATCH}"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudnetpy
3
- Version: 1.61.3
3
+ Version: 1.61.4
4
4
  Summary: Python package for Cloudnet processing
5
5
  Author: Simo Tukiainen
6
6
  License: MIT License
@@ -8,7 +8,7 @@ cloudnetpy/metadata.py,sha256=v_VDo2vbdTxB0zIsfP69IcrwSKiRlLpsGdq6JPI4CoA,5306
8
8
  cloudnetpy/output.py,sha256=WoVTNuxni0DUr163vZ-_mDr1brXhY15XSlGMrq9Aoqw,14700
9
9
  cloudnetpy/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
10
  cloudnetpy/utils.py,sha256=0TlHm71YtSrKXBsRKctitnhQrvZPE-ulEVeAQW-oK58,27398
11
- cloudnetpy/version.py,sha256=j5-CDdAsDSNeVW2c3qchPfFYzU-EbVus4d_rAbQtybY,72
11
+ cloudnetpy/version.py,sha256=e_eLbPeFYVSCx8YcbtXxBImBp3rQVNwG5SXDoE8Pkps,72
12
12
  cloudnetpy/categorize/__init__.py,sha256=gP5q3Vis1y9u9OWgA_idlbjfWXYN_S0IBSWdwBhL_uU,69
13
13
  cloudnetpy/categorize/atmos.py,sha256=fWW8ye_8HZASRAiYwURFKWzcGOYIA2RKeVxCq0lVOuM,12389
14
14
  cloudnetpy/categorize/atmos_utils.py,sha256=wndpwJxc2-QnNTkV8tc8I11Vs_WkNz9sVMX1fuGgUC4,3777
@@ -51,7 +51,7 @@ cloudnetpy/instruments/weather_station.py,sha256=gTY3Y5UATqJo9Gld4hm7WdsKBwcF8Wg
51
51
  cloudnetpy/instruments/disdrometer/__init__.py,sha256=lyjwttWvFvuwYxEkusoAvgRcbBmglmOp5HJOpXUqLWo,93
52
52
  cloudnetpy/instruments/disdrometer/common.py,sha256=g52iK2aNp3Z88kovUmGVpC54NZomPa9D871gzO0AmQ4,9267
53
53
  cloudnetpy/instruments/disdrometer/parsivel.py,sha256=WiL-vCjw9Gmb5irvW3AXddsyprp8MGOfqcVAlfy0zpc,25521
54
- cloudnetpy/instruments/disdrometer/thies.py,sha256=t0RtiDbWkco8I_oJcvlqOEbK3hVdppiD6DzYNpCsqrA,9748
54
+ cloudnetpy/instruments/disdrometer/thies.py,sha256=lNR5ahOKIsO_gcpmbYZwh2UP2aawpQ5J9RrrnPKFFIE,10046
55
55
  cloudnetpy/model_evaluation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
56
56
  cloudnetpy/model_evaluation/file_handler.py,sha256=oUGIblcEWLLv16YKUch-M5KA-dGRAcuHa-9anP3xtX4,6447
57
57
  cloudnetpy/model_evaluation/metadata.py,sha256=7ZL87iDbaQJIMu8wfnMvb01cGVPkl8RtvEm_tt9uIHE,8413
@@ -108,8 +108,8 @@ cloudnetpy/products/mie_lu_tables.nc,sha256=It4fYpqJXlqOgL8jeZ-PxGzP08PMrELIDVe5
108
108
  cloudnetpy/products/mwr_tools.py,sha256=PRm5aCULccUehU-Byk55wYhhEHseMjoAjGBu5TSyHao,4621
109
109
  cloudnetpy/products/product_tools.py,sha256=rhx_Ru9FLlQqCNM-awoiHx18-Aq1eBwL9LiUaQoJs6k,10412
110
110
  docs/source/conf.py,sha256=IKiFWw6xhUd8NrCg0q7l596Ck1d61XWeVjIFHVSG9Og,1490
111
- cloudnetpy-1.61.3.dist-info/LICENSE,sha256=wcZF72bdaoG9XugpyE95Juo7lBQOwLuTKBOhhtANZMM,1094
112
- cloudnetpy-1.61.3.dist-info/METADATA,sha256=dJ8xwncxh3pF3sT4uOHj8dnwHQ0XtJ29kSa2cUZbM2g,5784
113
- cloudnetpy-1.61.3.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
114
- cloudnetpy-1.61.3.dist-info/top_level.txt,sha256=ibSPWRr6ojS1i11rtBFz2_gkIe68mggj7aeswYfaOo0,16
115
- cloudnetpy-1.61.3.dist-info/RECORD,,
111
+ cloudnetpy-1.61.4.dist-info/LICENSE,sha256=wcZF72bdaoG9XugpyE95Juo7lBQOwLuTKBOhhtANZMM,1094
112
+ cloudnetpy-1.61.4.dist-info/METADATA,sha256=gM3zR9qeG2l3S744iQ035IAb7bxzONhHnegT14nGHfM,5784
113
+ cloudnetpy-1.61.4.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
114
+ cloudnetpy-1.61.4.dist-info/top_level.txt,sha256=ibSPWRr6ojS1i11rtBFz2_gkIe68mggj7aeswYfaOo0,16
115
+ cloudnetpy-1.61.4.dist-info/RECORD,,