disdrodb 0.3.0__py3-none-any.whl → 0.4.0__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.
Files changed (198) hide show
  1. disdrodb/__init__.py +2 -0
  2. disdrodb/_config.py +1 -0
  3. disdrodb/_version.py +2 -2
  4. disdrodb/accessor/__init__.py +1 -0
  5. disdrodb/accessor/methods.py +1 -0
  6. disdrodb/api/checks.py +2 -4
  7. disdrodb/api/io.py +224 -24
  8. disdrodb/api/path.py +2 -4
  9. disdrodb/cli/disdrodb_check_metadata_archive.py +1 -0
  10. disdrodb/cli/disdrodb_check_products_options.py +1 -0
  11. disdrodb/cli/disdrodb_create_summary.py +6 -6
  12. disdrodb/cli/disdrodb_create_summary_station.py +2 -2
  13. disdrodb/cli/disdrodb_data_archive_directory.py +1 -0
  14. disdrodb/cli/disdrodb_download_archive.py +5 -6
  15. disdrodb/cli/disdrodb_download_metadata_archive.py +1 -0
  16. disdrodb/cli/disdrodb_download_station.py +2 -3
  17. disdrodb/cli/disdrodb_initialize_station.py +3 -3
  18. disdrodb/cli/disdrodb_metadata_archive_directory.py +1 -0
  19. disdrodb/cli/disdrodb_open_data_archive.py +1 -2
  20. disdrodb/cli/disdrodb_open_logs_directory.py +2 -3
  21. disdrodb/cli/disdrodb_open_metadata_archive.py +1 -2
  22. disdrodb/cli/disdrodb_open_metadata_directory.py +2 -3
  23. disdrodb/cli/disdrodb_open_product_directory.py +1 -2
  24. disdrodb/cli/disdrodb_open_readers_directory.py +1 -0
  25. disdrodb/cli/disdrodb_run.py +6 -6
  26. disdrodb/cli/disdrodb_run_l0.py +6 -6
  27. disdrodb/cli/disdrodb_run_l0_station.py +3 -3
  28. disdrodb/cli/disdrodb_run_l0a.py +6 -6
  29. disdrodb/cli/disdrodb_run_l0a_station.py +3 -3
  30. disdrodb/cli/disdrodb_run_l0b.py +6 -6
  31. disdrodb/cli/disdrodb_run_l0b_station.py +3 -3
  32. disdrodb/cli/disdrodb_run_l0c.py +6 -6
  33. disdrodb/cli/disdrodb_run_l0c_station.py +3 -3
  34. disdrodb/cli/disdrodb_run_l1.py +6 -6
  35. disdrodb/cli/disdrodb_run_l1_station.py +3 -3
  36. disdrodb/cli/disdrodb_run_l2e.py +6 -6
  37. disdrodb/cli/disdrodb_run_l2e_station.py +3 -3
  38. disdrodb/cli/disdrodb_run_l2m.py +6 -6
  39. disdrodb/cli/disdrodb_run_l2m_station.py +3 -3
  40. disdrodb/cli/disdrodb_run_station.py +3 -3
  41. disdrodb/cli/disdrodb_upload_archive.py +6 -7
  42. disdrodb/cli/disdrodb_upload_station.py +3 -4
  43. disdrodb/configs.py +7 -8
  44. disdrodb/constants.py +1 -0
  45. disdrodb/data_transfer/download_data.py +8 -8
  46. disdrodb/data_transfer/upload_data.py +6 -8
  47. disdrodb/data_transfer/zenodo.py +1 -1
  48. disdrodb/fall_velocity/__init__.py +1 -0
  49. disdrodb/fall_velocity/graupel.py +1 -0
  50. disdrodb/fall_velocity/hail.py +1 -0
  51. disdrodb/fall_velocity/rain.py +1 -0
  52. disdrodb/issue/checks.py +1 -0
  53. disdrodb/issue/reader.py +1 -0
  54. disdrodb/issue/writer.py +1 -2
  55. disdrodb/l0/__init__.py +1 -0
  56. disdrodb/l0/check_configs.py +21 -23
  57. disdrodb/l0/check_standards.py +0 -1
  58. disdrodb/l0/configs/LPM/l0a_encodings.yml +17 -17
  59. disdrodb/l0/configs/LPM/l0b_cf_attrs.yml +55 -55
  60. disdrodb/l0/configs/LPM/l0b_encodings.yml +17 -17
  61. disdrodb/l0/configs/LPM/raw_data_format.yml +17 -17
  62. disdrodb/l0/configs/LPM_V0/l0a_encodings.yml +2 -2
  63. disdrodb/l0/configs/LPM_V0/l0b_cf_attrs.yml +2 -2
  64. disdrodb/l0/configs/LPM_V0/l0b_encodings.yml +2 -2
  65. disdrodb/l0/configs/LPM_V0/raw_data_format.yml +2 -2
  66. disdrodb/l0/l0_reader.py +1 -0
  67. disdrodb/l0/l0a_processing.py +5 -5
  68. disdrodb/l0/l0b_nc_processing.py +1 -2
  69. disdrodb/l0/l0b_processing.py +1 -13
  70. disdrodb/l0/l0c_processing.py +2 -1
  71. disdrodb/l0/readers/LPM/ARM/ARM_LPM.py +1 -0
  72. disdrodb/l0/readers/LPM/AUSTRALIA/MELBOURNE_2007_LPM.py +17 -17
  73. disdrodb/l0/readers/LPM/BRAZIL/CHUVA_LPM.py +17 -17
  74. disdrodb/l0/readers/LPM/BRAZIL/GOAMAZON_LPM.py +17 -17
  75. disdrodb/l0/readers/LPM/GERMANY/DWD.py +55 -52
  76. disdrodb/l0/readers/LPM/ITALY/GID_LPM.py +18 -17
  77. disdrodb/l0/readers/LPM/ITALY/GID_LPM_AQ.py +277 -0
  78. disdrodb/l0/readers/LPM/ITALY/GID_LPM_PI.py +18 -17
  79. disdrodb/l0/readers/LPM/ITALY/GID_LPM_T.py +18 -17
  80. disdrodb/l0/readers/LPM/ITALY/GID_LPM_W.py +18 -18
  81. disdrodb/l0/readers/LPM/KIT/CHWALA.py +18 -17
  82. disdrodb/l0/readers/LPM/NETHERLANDS/DELFT_RWANDA_LPM_NC.py +17 -17
  83. disdrodb/l0/readers/LPM/NORWAY/HAUKELISETER_LPM.py +18 -17
  84. disdrodb/l0/readers/LPM/NORWAY/NMBU_LPM.py +18 -17
  85. disdrodb/l0/readers/LPM/SLOVENIA/ARSO.py +18 -17
  86. disdrodb/l0/readers/LPM/SLOVENIA/UL.py +18 -17
  87. disdrodb/l0/readers/LPM/SWITZERLAND/INNERERIZ_LPM.py +18 -17
  88. disdrodb/l0/readers/LPM/UK/WITHWORTH_LPM.py +18 -17
  89. disdrodb/l0/readers/LPM/USA/CHARLESTON.py +18 -17
  90. disdrodb/l0/readers/LPM/USA/DEVEX.py +255 -0
  91. disdrodb/l0/readers/LPM_V0/BELGIUM/ULIEGE.py +2 -2
  92. disdrodb/l0/readers/LPM_V0/ITALY/GID_LPM_V0.py +3 -2
  93. disdrodb/l0/readers/ODM470/OCEAN/OCEANRAIN.py +1 -0
  94. disdrodb/l0/readers/PARSIVEL/BASQUECOUNTRY/EUSKALMET_OTT.py +1 -0
  95. disdrodb/l0/readers/PARSIVEL/CHINA/CHONGQING.py +1 -0
  96. disdrodb/l0/readers/PARSIVEL/EPFL/ARCTIC_2021.py +1 -0
  97. disdrodb/l0/readers/PARSIVEL/EPFL/COMMON_2011.py +1 -0
  98. disdrodb/l0/readers/PARSIVEL/EPFL/DAVOS_2009_2011.py +1 -0
  99. disdrodb/l0/readers/PARSIVEL/EPFL/EPFL_2009.py +1 -0
  100. disdrodb/l0/readers/PARSIVEL/EPFL/EPFL_ROOF_2008.py +1 -0
  101. disdrodb/l0/readers/PARSIVEL/EPFL/EPFL_ROOF_2010.py +1 -0
  102. disdrodb/l0/readers/PARSIVEL/EPFL/EPFL_ROOF_2011.py +1 -0
  103. disdrodb/l0/readers/PARSIVEL/EPFL/EPFL_ROOF_2012.py +1 -0
  104. disdrodb/l0/readers/PARSIVEL/EPFL/GENEPI_2007.py +1 -0
  105. disdrodb/l0/readers/PARSIVEL/EPFL/GRAND_ST_BERNARD_2007.py +1 -0
  106. disdrodb/l0/readers/PARSIVEL/EPFL/GRAND_ST_BERNARD_2007_2.py +1 -0
  107. disdrodb/l0/readers/PARSIVEL/EPFL/HPICONET_2010.py +1 -0
  108. disdrodb/l0/readers/PARSIVEL/EPFL/HYMEX_LTE_SOP2.py +1 -0
  109. disdrodb/l0/readers/PARSIVEL/EPFL/HYMEX_LTE_SOP3.py +1 -0
  110. disdrodb/l0/readers/PARSIVEL/EPFL/HYMEX_LTE_SOP4.py +1 -0
  111. disdrodb/l0/readers/PARSIVEL/EPFL/PARADISO_2014.py +1 -0
  112. disdrodb/l0/readers/PARSIVEL/EPFL/PARSIVEL_2007.py +1 -0
  113. disdrodb/l0/readers/PARSIVEL/EPFL/RACLETS_2019.py +1 -0
  114. disdrodb/l0/readers/PARSIVEL/EPFL/RACLETS_2019_WJF.py +1 -0
  115. disdrodb/l0/readers/PARSIVEL/EPFL/RIETHOLZBACH_2011.py +1 -0
  116. disdrodb/l0/readers/PARSIVEL/EPFL/SAMOYLOV_2017.py +1 -0
  117. disdrodb/l0/readers/PARSIVEL/EPFL/SAMOYLOV_2019.py +1 -0
  118. disdrodb/l0/readers/PARSIVEL/EPFL/UNIL_2022.py +1 -0
  119. disdrodb/l0/readers/PARSIVEL/SLOVENIA/UL.py +1 -0
  120. disdrodb/l0/readers/PARSIVEL2/ARM/ARM_PARSIVEL2.py +1 -0
  121. disdrodb/l0/readers/PARSIVEL2/BASQUECOUNTRY/EUSKALMET_OTT2.py +1 -0
  122. disdrodb/l0/readers/PARSIVEL2/BELGIUM/ILVO.py +1 -0
  123. disdrodb/l0/readers/PARSIVEL2/DENMARK/EROSION_nc.py +1 -0
  124. disdrodb/l0/readers/PARSIVEL2/DENMARK/EROSION_raw.py +1 -0
  125. disdrodb/l0/readers/PARSIVEL2/FRANCE/ENPC_PARSIVEL2.py +1 -0
  126. disdrodb/l0/readers/PARSIVEL2/FRANCE/OSUG.py +1 -1
  127. disdrodb/l0/readers/PARSIVEL2/ITALY/HYDROX.py +1 -0
  128. disdrodb/l0/readers/PARSIVEL2/MEXICO/OH_IIUNAM_nc.py +1 -0
  129. disdrodb/l0/readers/PARSIVEL2/NCAR/FARM_PARSIVEL2.py +1 -0
  130. disdrodb/l0/readers/PARSIVEL2/NCAR/PERILS_MIPS.py +1 -0
  131. disdrodb/l0/readers/PARSIVEL2/NCAR/PERILS_PIPS.py +1 -0
  132. disdrodb/l0/readers/PARSIVEL2/NCAR/VORTEX_SE_2016_P1.py +1 -0
  133. disdrodb/l0/readers/PARSIVEL2/NCAR/VORTEX_SE_2016_PIPS.py +1 -0
  134. disdrodb/l0/readers/PARSIVEL2/PHILIPPINES/PAGASA.py +1 -0
  135. disdrodb/l0/readers/PARSIVEL2/SPAIN/GRANADA.py +1 -0
  136. disdrodb/l0/readers/PARSIVEL2/SWEDEN/SMHI.py +1 -0
  137. disdrodb/l0/readers/PARSIVEL2/USA/CW3E.py +1 -0
  138. disdrodb/l0/readers/PWS100/AUSTRIA/HOAL.py +1 -0
  139. disdrodb/l0/readers/PWS100/FRANCE/ENPC_PWS100.py +1 -0
  140. disdrodb/l0/readers/PWS100/FRANCE/ENPC_PWS100_SIRTA.py +1 -0
  141. disdrodb/l0/readers/RD80/NOAA/PSL_RD80.py +1 -0
  142. disdrodb/l0/readers/SWS250/BELGIUM/KMI.py +1 -0
  143. disdrodb/l0/readers/template_reader_raw_netcdf_data.py +1 -0
  144. disdrodb/l0/readers/template_reader_raw_text_data.py +1 -0
  145. disdrodb/l0/template_tools.py +6 -8
  146. disdrodb/l1/__init__.py +1 -0
  147. disdrodb/l1/classification.py +1 -0
  148. disdrodb/l1/resampling.py +5 -0
  149. disdrodb/l1_env/routines.py +1 -0
  150. disdrodb/l2/__init__.py +1 -0
  151. disdrodb/l2/empirical_dsd.py +1 -0
  152. disdrodb/l2/processing.py +1 -0
  153. disdrodb/metadata/checks.py +9 -10
  154. disdrodb/metadata/download.py +1 -0
  155. disdrodb/metadata/geolocation.py +2 -1
  156. disdrodb/metadata/info.py +2 -2
  157. disdrodb/metadata/search.py +0 -1
  158. disdrodb/physics/atmosphere.py +1 -0
  159. disdrodb/physics/water.py +1 -0
  160. disdrodb/physics/wrappers.py +1 -0
  161. disdrodb/psd/__init__.py +0 -1
  162. disdrodb/psd/fitting.py +1 -0
  163. disdrodb/psd/models.py +1 -0
  164. disdrodb/routines/__init__.py +1 -0
  165. disdrodb/routines/l0.py +13 -9
  166. disdrodb/routines/l1.py +17 -12
  167. disdrodb/routines/l2.py +4 -5
  168. disdrodb/routines/options.py +1 -0
  169. disdrodb/routines/options_validation.py +12 -12
  170. disdrodb/routines/wrappers.py +33 -33
  171. disdrodb/scattering/__init__.py +0 -1
  172. disdrodb/scattering/permittivity.py +1 -0
  173. disdrodb/scattering/routines.py +3 -3
  174. disdrodb/summary/routines.py +12 -5
  175. disdrodb/utils/archiving.py +2 -1
  176. disdrodb/utils/attrs.py +3 -2
  177. disdrodb/utils/compression.py +1 -2
  178. disdrodb/utils/coords.py +45 -0
  179. disdrodb/utils/dask.py +5 -2
  180. disdrodb/utils/dataframe.py +4 -3
  181. disdrodb/utils/decorators.py +2 -1
  182. disdrodb/utils/directories.py +2 -2
  183. disdrodb/utils/encoding.py +2 -1
  184. disdrodb/utils/manipulations.py +1 -0
  185. disdrodb/utils/pydantic.py +1 -0
  186. disdrodb/utils/routines.py +1 -0
  187. disdrodb/utils/time.py +3 -2
  188. disdrodb/utils/warnings.py +1 -0
  189. disdrodb/utils/writer.py +4 -0
  190. disdrodb/utils/xarray.py +1 -0
  191. disdrodb/viz/plots.py +1 -0
  192. {disdrodb-0.3.0.dist-info → disdrodb-0.4.0.dist-info}/METADATA +4 -3
  193. disdrodb-0.4.0.dist-info/RECORD +361 -0
  194. disdrodb-0.3.0.dist-info/RECORD +0 -358
  195. {disdrodb-0.3.0.dist-info → disdrodb-0.4.0.dist-info}/WHEEL +0 -0
  196. {disdrodb-0.3.0.dist-info → disdrodb-0.4.0.dist-info}/entry_points.txt +0 -0
  197. {disdrodb-0.3.0.dist-info → disdrodb-0.4.0.dist-info}/licenses/LICENSE +0 -0
  198. {disdrodb-0.3.0.dist-info → disdrodb-0.4.0.dist-info}/top_level.txt +0 -0
@@ -160,7 +160,7 @@ def _define_creators_list(metadata):
160
160
 
161
161
  # Create info dictionary of each author
162
162
  list_creator_dict = []
163
- for name, identifier, affiliation in zip(list_names, list_identifier, list_affiliation):
163
+ for name, identifier, affiliation in zip(list_names, list_identifier, list_affiliation, strict=True):
164
164
  creator_dict = {}
165
165
  creator_dict["name"] = name.strip()
166
166
  creator_dict["orcid"] = identifier.strip()
@@ -15,6 +15,7 @@
15
15
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
16
16
  # -----------------------------------------------------------------------------.
17
17
  """DISDRODB fall velocity module."""
18
+
18
19
  from disdrodb.fall_velocity.graupel import (
19
20
  available_graupel_fall_velocity_models,
20
21
  get_graupel_fall_velocity,
@@ -15,6 +15,7 @@
15
15
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
16
16
  # -----------------------------------------------------------------------------.
17
17
  """Theoretical models to estimate the graupel fall velocity based on particle maximum diameter in mm."""
18
+
18
19
  import numpy as np
19
20
  import xarray as xr
20
21
 
@@ -15,6 +15,7 @@
15
15
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
16
16
  # -----------------------------------------------------------------------------.
17
17
  """Theoretical models to estimate hailstones fall velocity based on particle maximum diameter in mm."""
18
+
18
19
  import numpy as np
19
20
  import xarray as xr
20
21
 
@@ -15,6 +15,7 @@
15
15
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
16
16
  # -----------------------------------------------------------------------------.
17
17
  """Theoretical models to estimate the raindrop fall velocity based on drop diameter in mm."""
18
+
18
19
  import numpy as np
19
20
  import xarray as xr
20
21
 
disdrodb/issue/checks.py CHANGED
@@ -15,6 +15,7 @@
15
15
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
16
16
  # -----------------------------------------------------------------------------.
17
17
  """Checks for issue YAML files."""
18
+
18
19
  import logging
19
20
 
20
21
  import numpy as np
disdrodb/issue/reader.py CHANGED
@@ -15,6 +15,7 @@
15
15
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
16
16
  # -----------------------------------------------------------------------------.
17
17
  """Issue YAML File Reader."""
18
+
18
19
  import logging
19
20
 
20
21
  import yaml
disdrodb/issue/writer.py CHANGED
@@ -18,7 +18,6 @@
18
18
 
19
19
  import logging
20
20
  import os
21
- from typing import Optional
22
21
 
23
22
  import yaml
24
23
 
@@ -50,7 +49,7 @@ def _write_issue_docs(f):
50
49
  )
51
50
 
52
51
 
53
- def write_issue(filepath: str, timesteps: Optional[list] = None, time_periods: Optional[list] = None) -> None:
52
+ def write_issue(filepath: str, timesteps: list | None = None, time_periods: list | None = None) -> None:
54
53
  """Write the issue YAML file.
55
54
 
56
55
  Parameters
disdrodb/l0/__init__.py CHANGED
@@ -15,6 +15,7 @@
15
15
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
16
16
  # -----------------------------------------------------------------------------.
17
17
  """DISDRODB L0 software."""
18
+
18
19
  from disdrodb.l0.l0_reader import available_readers, get_reader, get_station_reader
19
20
  from disdrodb.l0.l0a_processing import generate_l0a
20
21
  from disdrodb.l0.l0b_nc_processing import generate_l0b_from_nc
@@ -17,7 +17,6 @@
17
17
  """Check configuration files."""
18
18
 
19
19
  import os
20
- from typing import Optional, Union
21
20
 
22
21
  import numpy as np
23
22
  from pydantic import Field, field_validator, model_validator
@@ -103,7 +102,7 @@ def check_variable_consistency(sensor_name: str) -> None:
103
102
  raise ValueError(msg)
104
103
 
105
104
 
106
- def _schema_error(object_to_validate: Union[str, list], schema: CustomBaseModel, message) -> bool:
105
+ def _schema_error(object_to_validate: str | list, schema: CustomBaseModel, message) -> bool:
107
106
  """Function that validate the schema of a given object with a given schema.
108
107
 
109
108
  Parameters
@@ -129,10 +128,10 @@ class L0BEncodingSchema(CustomBaseModel):
129
128
  complevel: int
130
129
  shuffle: bool
131
130
  fletcher32: bool
132
- FillValue: Optional[Union[int, float]] = Field(default=None, alias="_FillValue")
133
- chunksizes: Optional[Union[int, list[int]]]
134
- add_offset: Optional[float] = None
135
- scale_factor: Optional[float] = None
131
+ FillValue: int | float | None = Field(default=None, alias="_FillValue")
132
+ chunksizes: int | list[int] | None
133
+ add_offset: float | None = None
134
+ scale_factor: float | None = None
136
135
 
137
136
  # if contiguous=False, chunksizes specified, otherwise should be not !
138
137
  @model_validator(mode="before")
@@ -198,16 +197,15 @@ class L0BEncodingSchema(CustomBaseModel):
198
197
  return values
199
198
 
200
199
  @model_validator(mode="after")
201
- def remove_offset_and_scale_if_not_int(cls, values):
200
+ def remove_offset_and_scale_if_not_int(self):
202
201
  """Ensure add_offset and scale_factor only apply to integer/uint dtypes."""
203
- integer_types = ["int8", "int16", "int32", "int64", "uint8", "uint16", "uint32", "uint64"]
202
+ integer_types = {"int8", "int16", "int32", "int64", "uint8", "uint16", "uint32", "uint64"}
204
203
 
205
- if values.dtype not in integer_types:
206
- # drop those keys to keep model clean
207
- values.add_offset = None
208
- values.scale_factor = None
204
+ if self.dtype not in integer_types:
205
+ self.add_offset = None
206
+ self.scale_factor = None
209
207
 
210
- return values
208
+ return self
211
209
 
212
210
 
213
211
  def check_l0b_encoding(sensor_name: str) -> None:
@@ -255,16 +253,16 @@ def check_l0a_encoding(sensor_name: str) -> None:
255
253
  class RawDataFormatSchema(CustomBaseModel):
256
254
  """Pydantic model for the DISDRODB RAW Data Format YAML files."""
257
255
 
258
- n_digits: Optional[int]
259
- n_characters: Optional[int]
260
- n_decimals: Optional[int]
261
- n_naturals: Optional[int]
262
- data_range: Optional[list[float]]
263
- nan_flags: Optional[Union[int, float, str]] = None
264
- valid_values: Optional[list[float]] = None
265
- dimension_order: Optional[list[str]] = None
266
- n_values: Optional[int] = None
267
- field_number: Optional[str] = None
256
+ n_digits: int | None
257
+ n_characters: int | None
258
+ n_decimals: int | None
259
+ n_naturals: int | None
260
+ data_range: list[float] | None
261
+ nan_flags: int | float | str | None = None
262
+ valid_values: list[float] | None = None
263
+ dimension_order: list[str] | None = None
264
+ n_values: int | None = None
265
+ field_number: str | None = None
268
266
 
269
267
  @field_validator("data_range")
270
268
  def check_list_length(cls, value):
@@ -16,7 +16,6 @@
16
16
  # -----------------------------------------------------------------------------.
17
17
  """Check data standards."""
18
18
 
19
-
20
19
  import logging
21
20
 
22
21
  import numpy as np
@@ -53,23 +53,23 @@ number_particles_min_diameter_internal_data: "float32"
53
53
  number_particles_no_hydrometeor: "float32" # 'uint16'
54
54
  number_particles_no_hydrometeor_internal_data: "float32"
55
55
  number_particles_unknown_classification: "float32" # 'uint16'
56
- number_particles_unknown_classification_internal_data: "float32"
57
- number_particles_class_1: "float32" # 'uint16'
58
- number_particles_class_1_internal_data: "float32"
59
- number_particles_class_2: "float32" # 'uint16'
60
- number_particles_class_2_internal_data: "float32"
61
- number_particles_class_3: "float32" # 'uint16'
62
- number_particles_class_3_internal_data: "float32"
63
- number_particles_class_4: "float32" # 'uint16'
64
- number_particles_class_4_internal_data: "float32"
65
- number_particles_class_5: "float32" # 'uint16'
66
- number_particles_class_5_internal_data: "float32"
67
- number_particles_class_6: "float32" # 'uint16'
68
- number_particles_class_6_internal_data: "float32"
69
- number_particles_class_7: "float32" # 'uint16'
70
- number_particles_class_7_internal_data: "float32"
71
- number_particles_class_8: "float32" # 'uint16'
72
- number_particles_class_8_internal_data: "float32"
56
+ total_gross_volume_unknown_classification: "float32"
57
+ number_particles_hail: "float32" # 'uint16'
58
+ total_gross_volume_hail: "float32"
59
+ number_particles_solid_precipitation: "float32" # 'uint16'
60
+ total_gross_volume_solid_precipitation: "float32"
61
+ number_particles_large_pellet: "float32" # 'uint16'
62
+ total_gross_volume_large_pellet: "float32"
63
+ number_particles_small_pellet: "float32" # 'uint16'
64
+ total_gross_volume_small_pellet: "float32"
65
+ number_particles_snowgrain: "float32" # 'uint16'
66
+ total_gross_volume_snowgrain: "float32"
67
+ number_particles_rain: "float32" # 'uint16'
68
+ total_gross_volume_rain: "float32"
69
+ number_particles_small_rain: "float32" # 'uint16'
70
+ total_gross_volume_small_rain: "float32"
71
+ number_particles_drizzle: "float32" # 'uint16'
72
+ total_gross_volume_drizzle: "float32"
73
73
  number_particles_class_9: "float32" # 'uint16'
74
74
  number_particles_class_9_internal_data: "float32"
75
75
  raw_drop_number: "str"
@@ -224,81 +224,81 @@ number_particles_unknown_classification:
224
224
  description: Number of particles with unknown classification
225
225
  long_name: Number of particles with unknown classification
226
226
  units: ""
227
- number_particles_unknown_classification_internal_data:
228
- description: Total volume (gross) of this class
229
- long_name: Number of particles with unknown classification internal data
227
+ total_gross_volume_unknown_classification:
228
+ description: Total (gross) volume of particles classified as unknown
229
+ long_name: Total (gross) volume of particles classified as unknown
230
230
  units: ""
231
- number_particles_class_1:
232
- description: Number of particles class 1
233
- long_name: Number of particles class 1
231
+ number_particles_hail:
232
+ description: Number of particles classified as hail
233
+ long_name: Number of particles classified as hail
234
234
  units: ""
235
- number_particles_class_1_internal_data:
236
- description: Total volume (gross) of class 1
237
- long_name: Total volume of class 1
235
+ total_gross_volume_hail:
236
+ description: Total (gross) volume of particles classified as hail
237
+ long_name: Total (gross) volume of particles classified as hail
238
238
  units: ""
239
- number_particles_class_2:
240
- description: Number of particles class 2
241
- long_name: Number of particles class 2
239
+ number_particles_solid_precipitation:
240
+ description: Number of particles classified as solid precipitation
241
+ long_name: Number of particles classified as solid precipitation
242
242
  units: ""
243
- number_particles_class_2_internal_data:
244
- description: Total volume (gross) of class 2
245
- long_name: Total volume of class 2
243
+ total_gross_volume_solid_precipitation:
244
+ description: Total (gross) volume of particles classified as solid precipitation
245
+ long_name: Total (gross) volume of particles classified as solid precipitation
246
246
  units: ""
247
- number_particles_class_3:
248
- description: Number of particles class 3
249
- long_name: Number of particles class 3
247
+ number_particles_large_pellet:
248
+ description: Number of particles classified as great pellet
249
+ long_name: Number of particles classified as great pellet
250
250
  units: ""
251
- number_particles_class_3_internal_data:
252
- description: Total volume (gross) of class 3
253
- long_name: Total volume of class 3
251
+ total_gross_volume_large_pellet:
252
+ description: Total (gross) volume of particles classified as great pellet
253
+ long_name: Total (gross) volume of particles classified as great pellet
254
254
  units: ""
255
- number_particles_class_4:
256
- description: Number of particles class 4
257
- long_name: Number of particles class 4
255
+ number_particles_small_pellet:
256
+ description: Number of particles classified as small pellet
257
+ long_name: Number of particles classified as small pellet
258
258
  units: ""
259
- number_particles_class_4_internal_data:
260
- description: Total volume (gross) of class 4
261
- long_name: Total volume of class 4
259
+ total_gross_volume_small_pellet:
260
+ description: Total (gross) volume of particles classified as small pellet
261
+ long_name: Total (gross) volume of particles classified as small pellet
262
262
  units: ""
263
- number_particles_class_5:
264
- description: Number of particles class 5
265
- long_name: Number of particles class 5
263
+ number_particles_snowgrain:
264
+ description: Number of particles classified as snowgrain
265
+ long_name: Number of particles classified as snowgrain
266
266
  units: ""
267
- number_particles_class_5_internal_data:
268
- description: Total volume (gross) of class 5
269
- long_name: Total volume of class 5
267
+ total_gross_volume_snowgrain:
268
+ description: Total (gross) volume of particles classified as snowgrain
269
+ long_name: Total (gross) volume of particles classified as snowgrain
270
270
  units: ""
271
- number_particles_class_6:
272
- description: Number of particles class 6
273
- long_name: Number of particles class 6
271
+ number_particles_rain:
272
+ description: Number of particles classified as rain
273
+ long_name: Number of particles classified as rain
274
274
  units: ""
275
- number_particles_class_6_internal_data:
276
- description: Total volume (gross) of class 6
277
- long_name: Total volume of class 6
275
+ total_gross_volume_rain:
276
+ description: Total (gross) volume of particles classified as rain
277
+ long_name: Total (gross) volume of particles classified as rain
278
278
  units: ""
279
- number_particles_class_7:
280
- description: Number of particles class 7
281
- long_name: Number of particles class 7
279
+ number_particles_small_rain:
280
+ description: Number of particles classified as small rain
281
+ long_name: Number of particles classified as small rain
282
282
  units: ""
283
- number_particles_class_7_internal_data:
284
- description: Total volume (gross) of class 7
285
- long_name: Total volume of class 7
283
+ total_gross_volume_small_rain:
284
+ description: Total (gross) volume of particles classified as small rain
285
+ long_name: Total (gross) volume of particles classified as small rain
286
286
  units: ""
287
- number_particles_class_8:
288
- description: Number of particles class 8
289
- long_name: Number of particles class 8
287
+ number_particles_drizzle:
288
+ description: Number of particles classified as drizzle
289
+ long_name: Number of particles classified as drizzle
290
290
  units: ""
291
- number_particles_class_8_internal_data:
292
- description: Total volume (gross) of class 8
293
- long_name: Total volume of class 8
291
+ total_gross_volume_drizzle:
292
+ description: Total (gross) volume of particles classified as drizzle
293
+ long_name: Total (gross) volume of particles classified as drizzle
294
294
  units: ""
295
295
  number_particles_class_9:
296
- description: Number of particles class 9
297
- long_name: Number of particles class 9
296
+ description: Number of particles for reserved class 9
297
+ long_name: Number of particles for reserved class 9
298
298
  units: ""
299
299
  number_particles_class_9_internal_data:
300
- description: Total volume (gross) of class 9
301
- long_name: Total volume of class 9
300
+ description: Total volume (gross) for reserved class 9
301
+ long_name: Total volume of reserved class 9
302
302
  units: ""
303
303
  raw_drop_number:
304
304
  description: Precipitation spectrum
@@ -520,7 +520,7 @@ number_particles_unknown_classification:
520
520
  contiguous: false
521
521
  chunksizes: 5000
522
522
  _FillValue: 65535
523
- number_particles_unknown_classification_internal_data:
523
+ total_gross_volume_unknown_classification:
524
524
  dtype: float32
525
525
  zlib: true
526
526
  complevel: 3
@@ -528,7 +528,7 @@ number_particles_unknown_classification_internal_data:
528
528
  fletcher32: false
529
529
  contiguous: false
530
530
  chunksizes: 5000
531
- number_particles_class_1:
531
+ number_particles_hail:
532
532
  dtype: uint16
533
533
  zlib: true
534
534
  complevel: 3
@@ -537,7 +537,7 @@ number_particles_class_1:
537
537
  contiguous: false
538
538
  chunksizes: 5000
539
539
  _FillValue: 65535
540
- number_particles_class_1_internal_data:
540
+ total_gross_volume_hail:
541
541
  dtype: float32
542
542
  zlib: true
543
543
  complevel: 3
@@ -545,7 +545,7 @@ number_particles_class_1_internal_data:
545
545
  fletcher32: false
546
546
  contiguous: false
547
547
  chunksizes: 5000
548
- number_particles_class_2:
548
+ number_particles_solid_precipitation:
549
549
  dtype: uint16
550
550
  zlib: true
551
551
  complevel: 3
@@ -554,7 +554,7 @@ number_particles_class_2:
554
554
  contiguous: false
555
555
  chunksizes: 5000
556
556
  _FillValue: 65535
557
- number_particles_class_2_internal_data:
557
+ total_gross_volume_solid_precipitation:
558
558
  dtype: float32
559
559
  zlib: true
560
560
  complevel: 3
@@ -562,7 +562,7 @@ number_particles_class_2_internal_data:
562
562
  fletcher32: false
563
563
  contiguous: false
564
564
  chunksizes: 5000
565
- number_particles_class_3:
565
+ number_particles_large_pellet:
566
566
  dtype: uint16
567
567
  zlib: true
568
568
  complevel: 3
@@ -571,7 +571,7 @@ number_particles_class_3:
571
571
  contiguous: false
572
572
  chunksizes: 5000
573
573
  _FillValue: 65535
574
- number_particles_class_3_internal_data:
574
+ total_gross_volume_large_pellet:
575
575
  dtype: float32
576
576
  zlib: true
577
577
  complevel: 3
@@ -579,7 +579,7 @@ number_particles_class_3_internal_data:
579
579
  fletcher32: false
580
580
  contiguous: false
581
581
  chunksizes: 5000
582
- number_particles_class_4:
582
+ number_particles_small_pellet:
583
583
  dtype: uint16
584
584
  zlib: true
585
585
  complevel: 3
@@ -588,7 +588,7 @@ number_particles_class_4:
588
588
  contiguous: false
589
589
  chunksizes: 5000
590
590
  _FillValue: 65535
591
- number_particles_class_4_internal_data:
591
+ total_gross_volume_small_pellet:
592
592
  dtype: float32
593
593
  zlib: true
594
594
  complevel: 3
@@ -596,7 +596,7 @@ number_particles_class_4_internal_data:
596
596
  fletcher32: false
597
597
  contiguous: false
598
598
  chunksizes: 5000
599
- number_particles_class_5:
599
+ number_particles_snowgrain:
600
600
  dtype: uint16
601
601
  zlib: true
602
602
  complevel: 3
@@ -605,7 +605,7 @@ number_particles_class_5:
605
605
  contiguous: false
606
606
  chunksizes: 5000
607
607
  _FillValue: 65535
608
- number_particles_class_5_internal_data:
608
+ total_gross_volume_snowgrain:
609
609
  dtype: float32
610
610
  zlib: true
611
611
  complevel: 3
@@ -613,7 +613,7 @@ number_particles_class_5_internal_data:
613
613
  fletcher32: false
614
614
  contiguous: false
615
615
  chunksizes: 5000
616
- number_particles_class_6:
616
+ number_particles_rain:
617
617
  dtype: uint16
618
618
  zlib: true
619
619
  complevel: 3
@@ -622,7 +622,7 @@ number_particles_class_6:
622
622
  contiguous: false
623
623
  chunksizes: 5000
624
624
  _FillValue: 65535
625
- number_particles_class_6_internal_data:
625
+ total_gross_volume_rain:
626
626
  dtype: float32
627
627
  zlib: true
628
628
  complevel: 3
@@ -630,7 +630,7 @@ number_particles_class_6_internal_data:
630
630
  fletcher32: false
631
631
  contiguous: false
632
632
  chunksizes: 5000
633
- number_particles_class_7:
633
+ number_particles_small_rain:
634
634
  dtype: uint16
635
635
  zlib: true
636
636
  complevel: 3
@@ -639,7 +639,7 @@ number_particles_class_7:
639
639
  contiguous: false
640
640
  chunksizes: 5000
641
641
  _FillValue: 65535
642
- number_particles_class_7_internal_data:
642
+ total_gross_volume_small_rain:
643
643
  dtype: float32
644
644
  zlib: true
645
645
  complevel: 3
@@ -647,7 +647,7 @@ number_particles_class_7_internal_data:
647
647
  fletcher32: false
648
648
  contiguous: false
649
649
  chunksizes: 5000
650
- number_particles_class_8:
650
+ number_particles_drizzle:
651
651
  dtype: uint16
652
652
  zlib: true
653
653
  complevel: 3
@@ -656,7 +656,7 @@ number_particles_class_8:
656
656
  contiguous: false
657
657
  chunksizes: 5000
658
658
  _FillValue: 65535
659
- number_particles_class_8_internal_data:
659
+ total_gross_volume_drizzle:
660
660
  dtype: float32
661
661
  zlib: true
662
662
  complevel: 3
@@ -626,7 +626,7 @@ number_particles_unknown_classification:
626
626
  - 99999
627
627
  nan_flags: null
628
628
  field_number: "61"
629
- number_particles_unknown_classification_internal_data:
629
+ total_gross_volume_unknown_classification:
630
630
  n_digits: 8
631
631
  n_characters: 9
632
632
  n_decimals: 5
@@ -636,7 +636,7 @@ number_particles_unknown_classification_internal_data:
636
636
  - 99999.999
637
637
  nan_flags: null
638
638
  field_number: "62"
639
- number_particles_class_1:
639
+ number_particles_hail:
640
640
  n_digits: 5
641
641
  n_characters: 5
642
642
  n_decimals: 5
@@ -646,7 +646,7 @@ number_particles_class_1:
646
646
  - 99999
647
647
  nan_flags: null
648
648
  field_number: "63"
649
- number_particles_class_1_internal_data:
649
+ total_gross_volume_hail:
650
650
  n_digits: 8
651
651
  n_characters: 9
652
652
  n_decimals: 5
@@ -656,7 +656,7 @@ number_particles_class_1_internal_data:
656
656
  - 99999.999
657
657
  nan_flags: null
658
658
  field_number: "64"
659
- number_particles_class_2:
659
+ number_particles_solid_precipitation:
660
660
  n_digits: 5
661
661
  n_characters: 5
662
662
  n_decimals: 5
@@ -666,7 +666,7 @@ number_particles_class_2:
666
666
  - 99999
667
667
  nan_flags: null
668
668
  field_number: "65"
669
- number_particles_class_2_internal_data:
669
+ total_gross_volume_solid_precipitation:
670
670
  n_digits: 8
671
671
  n_characters: 9
672
672
  n_decimals: 5
@@ -676,7 +676,7 @@ number_particles_class_2_internal_data:
676
676
  - 99999.999
677
677
  nan_flags: null
678
678
  field_number: "66"
679
- number_particles_class_3:
679
+ number_particles_large_pellet:
680
680
  n_digits: 5
681
681
  n_characters: 5
682
682
  n_decimals: 5
@@ -686,7 +686,7 @@ number_particles_class_3:
686
686
  - 99999
687
687
  nan_flags: null
688
688
  field_number: "67"
689
- number_particles_class_3_internal_data:
689
+ total_gross_volume_large_pellet:
690
690
  n_digits: 8
691
691
  n_characters: 9
692
692
  n_decimals: 5
@@ -696,7 +696,7 @@ number_particles_class_3_internal_data:
696
696
  - 99999.999
697
697
  nan_flags: null
698
698
  field_number: "68"
699
- number_particles_class_4:
699
+ number_particles_small_pellet:
700
700
  n_digits: 5
701
701
  n_characters: 5
702
702
  n_decimals: 5
@@ -706,7 +706,7 @@ number_particles_class_4:
706
706
  - 99999
707
707
  nan_flags: null
708
708
  field_number: "69"
709
- number_particles_class_4_internal_data:
709
+ total_gross_volume_small_pellet:
710
710
  n_digits: 8
711
711
  n_characters: 9
712
712
  n_decimals: 5
@@ -716,7 +716,7 @@ number_particles_class_4_internal_data:
716
716
  - 99999.999
717
717
  nan_flags: null
718
718
  field_number: "70"
719
- number_particles_class_5:
719
+ number_particles_snowgrain:
720
720
  n_digits: 5
721
721
  n_characters: 5
722
722
  n_decimals: 5
@@ -726,7 +726,7 @@ number_particles_class_5:
726
726
  - 99999
727
727
  nan_flags: null
728
728
  field_number: "71"
729
- number_particles_class_5_internal_data:
729
+ total_gross_volume_snowgrain:
730
730
  n_digits: 8
731
731
  n_characters: 9
732
732
  n_decimals: 5
@@ -736,7 +736,7 @@ number_particles_class_5_internal_data:
736
736
  - 99999.999
737
737
  nan_flags: null
738
738
  field_number: "72"
739
- number_particles_class_6:
739
+ number_particles_rain:
740
740
  n_digits: 5
741
741
  n_characters: 5
742
742
  n_decimals: 5
@@ -746,7 +746,7 @@ number_particles_class_6:
746
746
  - 99999
747
747
  nan_flags: null
748
748
  field_number: "73"
749
- number_particles_class_6_internal_data:
749
+ total_gross_volume_rain:
750
750
  n_digits: 8
751
751
  n_characters: 9
752
752
  n_decimals: 5
@@ -756,7 +756,7 @@ number_particles_class_6_internal_data:
756
756
  - 99999.999
757
757
  nan_flags: null
758
758
  field_number: "74"
759
- number_particles_class_7:
759
+ number_particles_small_rain:
760
760
  n_digits: 5
761
761
  n_characters: 5
762
762
  n_decimals: 5
@@ -766,7 +766,7 @@ number_particles_class_7:
766
766
  - 99999
767
767
  nan_flags: null
768
768
  field_number: "75"
769
- number_particles_class_7_internal_data:
769
+ total_gross_volume_small_rain:
770
770
  n_digits: 8
771
771
  n_characters: 9
772
772
  n_decimals: 5
@@ -776,7 +776,7 @@ number_particles_class_7_internal_data:
776
776
  - 99999.999
777
777
  nan_flags: null
778
778
  field_number: "76"
779
- number_particles_class_8:
779
+ number_particles_drizzle:
780
780
  n_digits: 5
781
781
  n_characters: 5
782
782
  n_decimals: 5
@@ -786,7 +786,7 @@ number_particles_class_8:
786
786
  - 99999
787
787
  nan_flags: null
788
788
  field_number: "77"
789
- number_particles_class_8_internal_data:
789
+ total_gross_volume_drizzle:
790
790
  n_digits: 8
791
791
  n_characters: 9
792
792
  n_decimals: 5
@@ -26,8 +26,8 @@ number_particles_hail: "float32" # 'uint16'
26
26
  total_gross_volume_hail: "float32"
27
27
  number_particles_solid_precipitation: "float32" # 'uint16'
28
28
  total_gross_volume_solid_precipitation: "float32"
29
- number_particles_great_pellet: "float32" # 'uint16'
30
- total_gross_volume_great_pellet: "float32"
29
+ number_particles_large_pellet: "float32" # 'uint16'
30
+ total_gross_volume_large_pellet: "float32"
31
31
  number_particles_small_pellet: "float32" # 'uint16'
32
32
  total_gross_volume_small_pellet: "float32"
33
33
  number_particles_snowgrain: "float32" # 'uint16'