cloudnetpy-qc 1.26.3__tar.gz → 1.27.0__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.
- {cloudnetpy_qc-1.26.3/cloudnetpy_qc.egg-info → cloudnetpy_qc-1.27.0}/PKG-INFO +1 -1
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc/data/data_quality_config.ini +7 -1
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc/quality.py +9 -9
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc/version.py +2 -2
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0/cloudnetpy_qc.egg-info}/PKG-INFO +1 -1
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/LICENSE +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/MANIFEST.in +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/README.md +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc/__init__.py +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc/coverage.py +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc/data/area-type-table.xml +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc/data/cf-standard-name-table.xml +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc/data/standardized-region-list.xml +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc/py.typed +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc/utils.py +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc/variables.py +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc.egg-info/SOURCES.txt +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc.egg-info/dependency_links.txt +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc.egg-info/requires.txt +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc.egg-info/top_level.txt +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/pyproject.toml +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/setup.cfg +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/tests/test_qc.py +0 -0
- {cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/tests/test_utils.py +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
[
|
|
1
|
+
[defaults]
|
|
2
2
|
Z = -100, 50
|
|
3
3
|
Zh = -100, 50
|
|
4
4
|
v = -20, 20
|
|
@@ -58,3 +58,9 @@ air_temperature = 184.0, 329.85
|
|
|
58
58
|
relative_humidity = 0, 1.05
|
|
59
59
|
wind_speed = 0, 100
|
|
60
60
|
wind_direction = 0, 360
|
|
61
|
+
[mwr-single]
|
|
62
|
+
relative_humidity = -0.2, 2
|
|
63
|
+
[mwr-multi]
|
|
64
|
+
relative_humidity = -0.2, 2
|
|
65
|
+
[radar]
|
|
66
|
+
wind_direction = -0.1, 360.1
|
|
@@ -165,11 +165,6 @@ class Test:
|
|
|
165
165
|
def _add_error(self, message: str | list):
|
|
166
166
|
self._add_message(message, ErrorLevel.ERROR)
|
|
167
167
|
|
|
168
|
-
def _read_config_keys(self, config_section: str) -> np.ndarray:
|
|
169
|
-
field = "all" if "attr" in config_section else self.product.value
|
|
170
|
-
keys = METADATA_CONFIG[config_section][field].split(",")
|
|
171
|
-
return np.char.strip(keys)
|
|
172
|
-
|
|
173
168
|
def _get_required_variables(self) -> dict:
|
|
174
169
|
return {
|
|
175
170
|
name: var
|
|
@@ -241,9 +236,13 @@ class FindVariableOutliers(Test):
|
|
|
241
236
|
pressure = utils.calc_pressure(np.mean(self.nc["altitude"][:]))
|
|
242
237
|
max_diff = pressure * 0.05
|
|
243
238
|
return (pressure - max_diff, pressure + max_diff)
|
|
244
|
-
if
|
|
239
|
+
if DATA_CONFIG.has_option(self.product.value, key):
|
|
240
|
+
section = self.product.value
|
|
241
|
+
elif DATA_CONFIG.has_option("defaults", key):
|
|
242
|
+
section = "defaults"
|
|
243
|
+
else:
|
|
245
244
|
return None
|
|
246
|
-
limit_min, limit_max = DATA_CONFIG.get(
|
|
245
|
+
limit_min, limit_max = DATA_CONFIG.get(section, key).split(",", maxsplit=1)
|
|
247
246
|
return (float(limit_min), float(limit_max))
|
|
248
247
|
|
|
249
248
|
def _get_data(self, key: str) -> np.ndarray:
|
|
@@ -455,6 +454,7 @@ class TestGlobalAttributes(Test):
|
|
|
455
454
|
and name in ("initialization_time", "institution")
|
|
456
455
|
)
|
|
457
456
|
or (self._instrument_product(product) and name == "serial_number")
|
|
457
|
+
or (product == Product.MWR_L1C and name in ("source_file_uuids",))
|
|
458
458
|
)
|
|
459
459
|
|
|
460
460
|
def run(self):
|
|
@@ -815,7 +815,7 @@ class TestCoordinates(Test):
|
|
|
815
815
|
|
|
816
816
|
def run(self):
|
|
817
817
|
required_vars = {"latitude", "longitude"}
|
|
818
|
-
if self.
|
|
818
|
+
if self.product != Product.MODEL and LEVELS[self.product] != "3":
|
|
819
819
|
required_vars.add("altitude")
|
|
820
820
|
for key in required_vars:
|
|
821
821
|
if key not in self.nc.variables:
|
|
@@ -891,7 +891,7 @@ class TestCoordinates(Test):
|
|
|
891
891
|
return np.array(naive_dt, dtype="datetime64[s]")
|
|
892
892
|
|
|
893
893
|
def _calc_max_dist(self, latitude, longitude):
|
|
894
|
-
if self.
|
|
894
|
+
if self.product == Product.MODEL:
|
|
895
895
|
mean_lat = np.mean(latitude)
|
|
896
896
|
mean_lon = np.mean(longitude)
|
|
897
897
|
angle = 1 # Model resolution should be at least 1 degrees.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cloudnetpy_qc-1.26.3 → cloudnetpy_qc-1.27.0}/cloudnetpy_qc/data/standardized-region-list.xml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|