cloudnetpy 1.47.1__tar.gz → 1.47.2__tar.gz

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.
Files changed (116) hide show
  1. {cloudnetpy-1.47.1/cloudnetpy.egg-info → cloudnetpy-1.47.2}/PKG-INFO +1 -1
  2. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/lufft.py +13 -7
  3. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/version.py +1 -1
  4. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2/cloudnetpy.egg-info}/PKG-INFO +1 -1
  5. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/pyproject.toml +1 -17
  6. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/LICENSE +0 -0
  7. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/MANIFEST.in +0 -0
  8. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/README.md +0 -0
  9. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/__init__.py +0 -0
  10. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/__init__.py +0 -0
  11. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/atmos.py +0 -0
  12. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/atmos_utils.py +0 -0
  13. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/categorize.py +0 -0
  14. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/classify.py +0 -0
  15. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/containers.py +0 -0
  16. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/droplet.py +0 -0
  17. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/falling.py +0 -0
  18. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/freezing.py +0 -0
  19. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/insects.py +0 -0
  20. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/lidar.py +0 -0
  21. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/melting.py +0 -0
  22. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/model.py +0 -0
  23. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/mwr.py +0 -0
  24. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/categorize/radar.py +0 -0
  25. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/cloudnetarray.py +0 -0
  26. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/concat_lib.py +0 -0
  27. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/constants.py +0 -0
  28. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/datasource.py +0 -0
  29. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/exceptions.py +0 -0
  30. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/__init__.py +0 -0
  31. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/basta.py +0 -0
  32. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/ceilo.py +0 -0
  33. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/ceilometer.py +0 -0
  34. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/cl61d.py +0 -0
  35. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/cloudnet_instrument.py +0 -0
  36. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/copernicus.py +0 -0
  37. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/disdrometer/__init__.py +0 -0
  38. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/disdrometer/common.py +0 -0
  39. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/disdrometer/parsivel.py +0 -0
  40. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/disdrometer/thies.py +0 -0
  41. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/galileo.py +0 -0
  42. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/hatpro.py +0 -0
  43. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/instruments.py +0 -0
  44. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/mira.py +0 -0
  45. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/nc_lidar.py +0 -0
  46. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/nc_radar.py +0 -0
  47. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/pollyxt.py +0 -0
  48. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/radiometrics.py +0 -0
  49. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/rpg.py +0 -0
  50. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/rpg_reader.py +0 -0
  51. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/vaisala.py +0 -0
  52. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/instruments/weather_station.py +0 -0
  53. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/metadata.py +0 -0
  54. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/__init__.py +0 -0
  55. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/file_handler.py +0 -0
  56. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/metadata.py +0 -0
  57. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/model_metadata.py +0 -0
  58. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/plotting/__init__.py +0 -0
  59. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/plotting/plot_meta.py +0 -0
  60. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/plotting/plot_tools.py +0 -0
  61. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/plotting/plotting.py +0 -0
  62. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/products/__init__.py +0 -0
  63. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/products/advance_methods.py +0 -0
  64. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/products/grid_methods.py +0 -0
  65. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/products/model_products.py +0 -0
  66. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/products/observation_products.py +0 -0
  67. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/products/product_resampling.py +0 -0
  68. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/products/tools.py +0 -0
  69. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/statistics/__init__.py +0 -0
  70. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/statistics/statistical_methods.py +0 -0
  71. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/__init__.py +0 -0
  72. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/e2e/__init__.py +0 -0
  73. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/e2e/conftest.py +0 -0
  74. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/e2e/process_cf/__init__.py +0 -0
  75. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/e2e/process_cf/main.py +0 -0
  76. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/e2e/process_cf/tests.py +0 -0
  77. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/e2e/process_iwc/__init__.py +0 -0
  78. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/e2e/process_iwc/main.py +0 -0
  79. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/e2e/process_iwc/tests.py +0 -0
  80. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/e2e/process_lwc/__init__.py +0 -0
  81. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/e2e/process_lwc/main.py +0 -0
  82. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/e2e/process_lwc/tests.py +0 -0
  83. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/unit/__init__.py +0 -0
  84. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/unit/conftest.py +0 -0
  85. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/unit/test_advance_methods.py +0 -0
  86. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/unit/test_grid_methods.py +0 -0
  87. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/unit/test_model_products.py +0 -0
  88. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/unit/test_observation_products.py +0 -0
  89. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/unit/test_plot_tools.py +0 -0
  90. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/unit/test_plotting.py +0 -0
  91. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/unit/test_statistical_methods.py +0 -0
  92. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/tests/unit/test_tools.py +0 -0
  93. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/model_evaluation/utils.py +0 -0
  94. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/output.py +0 -0
  95. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/plotting/__init__.py +0 -0
  96. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/plotting/plot_meta.py +0 -0
  97. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/plotting/plotting.py +0 -0
  98. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/products/__init__.py +0 -0
  99. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/products/classification.py +0 -0
  100. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/products/der.py +0 -0
  101. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/products/drizzle.py +0 -0
  102. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/products/drizzle_error.py +0 -0
  103. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/products/drizzle_tools.py +0 -0
  104. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/products/ier.py +0 -0
  105. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/products/iwc.py +0 -0
  106. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/products/lwc.py +0 -0
  107. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/products/mie_lu_tables.nc +0 -0
  108. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/products/product_tools.py +0 -0
  109. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/py.typed +0 -0
  110. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy/utils.py +0 -0
  111. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy.egg-info/SOURCES.txt +0 -0
  112. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy.egg-info/dependency_links.txt +0 -0
  113. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy.egg-info/requires.txt +0 -0
  114. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/cloudnetpy.egg-info/top_level.txt +0 -0
  115. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/docs/source/conf.py +0 -0
  116. {cloudnetpy-1.47.1 → cloudnetpy-1.47.2}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudnetpy
3
- Version: 1.47.1
3
+ Version: 1.47.2
4
4
  Summary: Python package for Cloudnet processing
5
5
  Author: Simo Tukiainen
6
6
  License: MIT License
@@ -12,6 +12,8 @@ from cloudnetpy.instruments.nc_lidar import NcLidar
12
12
  class LufftCeilo(NcLidar):
13
13
  """Class for Lufft chm15k ceilometer."""
14
14
 
15
+ serial_number: str | None
16
+
15
17
  def __init__(
16
18
  self, file_name: str, site_meta: dict, expected_date: str | None = None
17
19
  ):
@@ -19,12 +21,13 @@ class LufftCeilo(NcLidar):
19
21
  self.file_name = file_name
20
22
  self.site_meta = site_meta
21
23
  self.expected_date = expected_date
22
- self.instrument = self._get_chm_model()
24
+ self.serial_number = None
23
25
 
24
26
  def read_ceilometer_file(self, calibration_factor: float | None = None) -> None:
25
27
  """Reads data and metadata from Jenoptik netCDF file."""
26
28
  with netCDF4.Dataset(self.file_name) as dataset:
27
29
  self.dataset = dataset
30
+ self._fetch_attributes()
28
31
  self._fetch_range(reference="upper")
29
32
  self._fetch_beta_raw(calibration_factor)
30
33
  self._fetch_time_and_date()
@@ -77,9 +80,12 @@ class LufftCeilo(NcLidar):
77
80
  return var[0] if utils.isscalar(var) else var[:]
78
81
  raise ValueError("Unknown variable")
79
82
 
80
- def _get_chm_model(self):
81
- with netCDF4.Dataset(self.file_name) as nc:
82
- source = getattr(nc, "source", "")[:3].lower()
83
- if source == "chx":
84
- return instruments.CHM15KX
85
- return instruments.CHM15K
83
+ def _fetch_attributes(self):
84
+ self.serial_number = getattr(self.dataset, "device_name", None)
85
+ if self.serial_number is None:
86
+ self.serial_number = getattr(self.dataset, "source")
87
+ self.instrument = (
88
+ instruments.CHM15KX
89
+ if self.serial_number.startswith("CHX")
90
+ else instruments.CHM15K
91
+ )
@@ -1,4 +1,4 @@
1
1
  MAJOR = 1
2
2
  MINOR = 47
3
- PATCH = 1
3
+ PATCH = 2
4
4
  __version__ = f"{MAJOR}.{MINOR}.{PATCH}"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudnetpy
3
- Version: 1.47.1
3
+ Version: 1.47.2
4
4
  Summary: Python package for Cloudnet processing
5
5
  Author: Simo Tukiainen
6
6
  License: MIT License
@@ -46,23 +46,7 @@ changelog = "https://github.com/actris-cloudnet/cloudnetpy/blob/main/CHANGELOG.m
46
46
  check_untyped_defs = true
47
47
 
48
48
  [[tool.mypy.overrides]]
49
- module = "scipy.*"
50
- ignore_missing_imports = true
51
-
52
- [[tool.mypy.overrides]]
53
- module = "skimage.*"
54
- ignore_missing_imports = true
55
-
56
- [[tool.mypy.overrides]]
57
- module = "netCDF4.*"
58
- ignore_missing_imports = true
59
-
60
- [[tool.mypy.overrides]]
61
- module = "matplotlib.*"
62
- ignore_missing_imports = true
63
-
64
- [[tool.mypy.overrides]]
65
- module = "mpl_toolkits.*"
49
+ module = ["matplotlib.*", "mpl_toolkits.*", "netCDF4.*", "scipy.*", "skimage.*"]
66
50
  ignore_missing_imports = true
67
51
 
68
52
  [tool.setuptools.dynamic]
File without changes
File without changes
File without changes
File without changes