cloudnetpy 1.67.3__tar.gz → 1.67.4__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 (129) hide show
  1. {cloudnetpy-1.67.3/cloudnetpy.egg-info → cloudnetpy-1.67.4}/PKG-INFO +1 -1
  2. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/copernicus.py +6 -2
  3. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/galileo.py +6 -2
  4. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/mira.py +5 -1
  5. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/nc_radar.py +9 -4
  6. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/version.py +1 -1
  7. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4/cloudnetpy.egg-info}/PKG-INFO +1 -1
  8. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/LICENSE +0 -0
  9. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/MANIFEST.in +0 -0
  10. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/README.md +0 -0
  11. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/__init__.py +0 -0
  12. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/__init__.py +0 -0
  13. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/atmos_utils.py +0 -0
  14. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/attenuation.py +0 -0
  15. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/attenuations/__init__.py +0 -0
  16. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/attenuations/gas_attenuation.py +0 -0
  17. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/attenuations/liquid_attenuation.py +0 -0
  18. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/attenuations/melting_attenuation.py +0 -0
  19. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/attenuations/rain_attenuation.py +0 -0
  20. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/categorize.py +0 -0
  21. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/classify.py +0 -0
  22. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/containers.py +0 -0
  23. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/disdrometer.py +0 -0
  24. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/droplet.py +0 -0
  25. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/falling.py +0 -0
  26. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/freezing.py +0 -0
  27. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/insects.py +0 -0
  28. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/itu.py +0 -0
  29. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/lidar.py +0 -0
  30. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/melting.py +0 -0
  31. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/model.py +0 -0
  32. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/mwr.py +0 -0
  33. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/categorize/radar.py +0 -0
  34. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/cli.py +0 -0
  35. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/cloudnetarray.py +0 -0
  36. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/concat_lib.py +0 -0
  37. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/constants.py +0 -0
  38. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/datasource.py +0 -0
  39. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/exceptions.py +0 -0
  40. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/__init__.py +0 -0
  41. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/basta.py +0 -0
  42. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/campbell_scientific.py +0 -0
  43. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/ceilo.py +0 -0
  44. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/ceilometer.py +0 -0
  45. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/cl61d.py +0 -0
  46. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/cloudnet_instrument.py +0 -0
  47. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/disdrometer/__init__.py +0 -0
  48. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/disdrometer/common.py +0 -0
  49. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/disdrometer/parsivel.py +0 -0
  50. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/disdrometer/thies.py +0 -0
  51. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/hatpro.py +0 -0
  52. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/instruments.py +0 -0
  53. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/lufft.py +0 -0
  54. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/mrr.py +0 -0
  55. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/nc_lidar.py +0 -0
  56. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/pollyxt.py +0 -0
  57. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/radiometrics.py +0 -0
  58. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/rpg.py +0 -0
  59. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/rpg_reader.py +0 -0
  60. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/toa5.py +0 -0
  61. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/vaisala.py +0 -0
  62. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/instruments/weather_station.py +0 -0
  63. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/metadata.py +0 -0
  64. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/__init__.py +0 -0
  65. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/file_handler.py +0 -0
  66. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/metadata.py +0 -0
  67. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/model_metadata.py +0 -0
  68. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/plotting/__init__.py +0 -0
  69. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/plotting/plot_meta.py +0 -0
  70. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/plotting/plot_tools.py +0 -0
  71. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/plotting/plotting.py +0 -0
  72. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/products/__init__.py +0 -0
  73. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/products/advance_methods.py +0 -0
  74. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/products/grid_methods.py +0 -0
  75. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/products/model_products.py +0 -0
  76. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/products/observation_products.py +0 -0
  77. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/products/product_resampling.py +0 -0
  78. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/products/tools.py +0 -0
  79. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/statistics/__init__.py +0 -0
  80. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/statistics/statistical_methods.py +0 -0
  81. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/__init__.py +0 -0
  82. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/e2e/__init__.py +0 -0
  83. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/e2e/conftest.py +0 -0
  84. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/e2e/process_cf/__init__.py +0 -0
  85. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/e2e/process_cf/main.py +0 -0
  86. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/e2e/process_cf/tests.py +0 -0
  87. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/e2e/process_iwc/__init__.py +0 -0
  88. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/e2e/process_iwc/main.py +0 -0
  89. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/e2e/process_iwc/tests.py +0 -0
  90. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/e2e/process_lwc/__init__.py +0 -0
  91. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/e2e/process_lwc/main.py +0 -0
  92. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/e2e/process_lwc/tests.py +0 -0
  93. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/unit/__init__.py +0 -0
  94. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/unit/conftest.py +0 -0
  95. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/unit/test_advance_methods.py +0 -0
  96. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/unit/test_grid_methods.py +0 -0
  97. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/unit/test_model_products.py +0 -0
  98. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/unit/test_observation_products.py +0 -0
  99. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/unit/test_plot_tools.py +0 -0
  100. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/unit/test_plotting.py +0 -0
  101. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/unit/test_statistical_methods.py +0 -0
  102. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/tests/unit/test_tools.py +0 -0
  103. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/model_evaluation/utils.py +0 -0
  104. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/output.py +0 -0
  105. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/plotting/__init__.py +0 -0
  106. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/plotting/plot_meta.py +0 -0
  107. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/plotting/plotting.py +0 -0
  108. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/products/__init__.py +0 -0
  109. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/products/classification.py +0 -0
  110. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/products/der.py +0 -0
  111. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/products/drizzle.py +0 -0
  112. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/products/drizzle_error.py +0 -0
  113. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/products/drizzle_tools.py +0 -0
  114. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/products/ier.py +0 -0
  115. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/products/iwc.py +0 -0
  116. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/products/lwc.py +0 -0
  117. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/products/mie_lu_tables.nc +0 -0
  118. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/products/mwr_tools.py +0 -0
  119. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/products/product_tools.py +0 -0
  120. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/py.typed +0 -0
  121. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy/utils.py +0 -0
  122. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy.egg-info/SOURCES.txt +0 -0
  123. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy.egg-info/dependency_links.txt +0 -0
  124. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy.egg-info/entry_points.txt +0 -0
  125. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy.egg-info/requires.txt +0 -0
  126. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/cloudnetpy.egg-info/top_level.txt +0 -0
  127. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/docs/source/conf.py +0 -0
  128. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/pyproject.toml +0 -0
  129. {cloudnetpy-1.67.3 → cloudnetpy-1.67.4}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudnetpy
3
- Version: 1.67.3
3
+ Version: 1.67.4
4
4
  Summary: Python package for Cloudnet processing
5
5
  Author: Simo Tukiainen
6
6
  License: MIT License
@@ -91,15 +91,19 @@ def copernicus2nc(
91
91
  copernicus.mask_corrupted_values()
92
92
  copernicus.mask_first_range_gates()
93
93
  copernicus.mask_invalid_data()
94
- copernicus.add_time_and_range()
95
94
  copernicus.fix_range_offset(site_meta)
96
95
  copernicus.screen_negative_ranges()
97
96
  copernicus.add_radar_specific_variables()
98
97
  copernicus.add_nyquist_velocity(keymap)
99
98
  copernicus.add_site_geolocation()
100
- valid_indices = copernicus.add_zenith_and_azimuth_angles()
99
+ valid_indices = copernicus.add_zenith_and_azimuth_angles(
100
+ elevation_threshold=1,
101
+ elevation_diff_threshold=0.1,
102
+ azimuth_diff_threshold=0.1,
103
+ )
101
104
  copernicus.screen_time_indices(valid_indices)
102
105
  copernicus.add_height()
106
+ copernicus.test_if_all_masked()
103
107
  attributes = output.add_time_attribute(ATTRIBUTES, copernicus.date)
104
108
  output.update_attributes(copernicus.data, attributes)
105
109
  return output.save_level1b(copernicus, output_file, uuid)
@@ -89,13 +89,17 @@ def galileo2nc(
89
89
  galileo.screen_by_snr(snr_limit=snr_limit)
90
90
  galileo.mask_clutter()
91
91
  galileo.mask_invalid_data()
92
- galileo.add_time_and_range()
93
92
  galileo.add_radar_specific_variables()
94
93
  galileo.add_nyquist_velocity(keymap)
95
94
  galileo.add_site_geolocation()
96
- valid_indices = galileo.add_zenith_and_azimuth_angles()
95
+ valid_indices = galileo.add_zenith_and_azimuth_angles(
96
+ elevation_threshold=1,
97
+ elevation_diff_threshold=0.1,
98
+ azimuth_diff_threshold=0.1,
99
+ )
97
100
  galileo.screen_time_indices(valid_indices)
98
101
  galileo.add_height()
102
+ galileo.test_if_all_masked()
99
103
  attributes = output.add_time_attribute(ATTRIBUTES, galileo.date)
100
104
  output.update_attributes(galileo.data, attributes)
101
105
  return output.save_level1b(galileo, output_file, uuid)
@@ -80,7 +80,11 @@ def mira2nc(
80
80
  mira.add_time_and_range()
81
81
  mira.add_site_geolocation()
82
82
  mira.add_radar_specific_variables()
83
- valid_indices = mira.add_zenith_and_azimuth_angles()
83
+ valid_indices = mira.add_zenith_and_azimuth_angles(
84
+ elevation_threshold=1,
85
+ elevation_diff_threshold=1e-6,
86
+ azimuth_diff_threshold=1e-3,
87
+ )
84
88
  mira.screen_time_indices(valid_indices)
85
89
  mira.add_height()
86
90
  mira.test_if_all_masked()
@@ -90,7 +90,12 @@ class NcRadar(DataSource, CloudnetInstrument):
90
90
  if len(ind) > 0:
91
91
  self.data["v"].data[:, ind] = ma.masked
92
92
 
93
- def add_zenith_and_azimuth_angles(self) -> list:
93
+ def add_zenith_and_azimuth_angles(
94
+ self,
95
+ elevation_threshold: float,
96
+ elevation_diff_threshold: float,
97
+ azimuth_diff_threshold: float,
98
+ ) -> list:
94
99
  """Adds non-varying instrument zenith and azimuth angles and returns valid
95
100
  time indices.
96
101
  """
@@ -100,9 +105,9 @@ class NcRadar(DataSource, CloudnetInstrument):
100
105
  elevation_diff = ma.diff(elevation, prepend=elevation[1])
101
106
  azimuth_diff = ma.diff(azimuth, prepend=azimuth[1])
102
107
 
103
- is_stable = np.abs(elevation - 90) < 1
104
- is_stable &= np.abs(elevation_diff) < 1e-6
105
- is_stable &= np.abs(azimuth_diff) < 1e-3
108
+ is_stable = np.abs(elevation - 90) < elevation_threshold
109
+ is_stable &= np.abs(elevation_diff) < elevation_diff_threshold
110
+ is_stable &= np.abs(azimuth_diff) < azimuth_diff_threshold
106
111
 
107
112
  # If scanning unit is broken, data are missing
108
113
  # (assume it's vertically pointing)
@@ -1,4 +1,4 @@
1
1
  MAJOR = 1
2
2
  MINOR = 67
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.67.3
3
+ Version: 1.67.4
4
4
  Summary: Python package for Cloudnet processing
5
5
  Author: Simo Tukiainen
6
6
  License: MIT License
File without changes
File without changes
File without changes
File without changes
File without changes