cloudnetpy-qc 1.20.0__py3-none-any.whl → 1.22.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.
- cloudnetpy_qc/data/area-type-table.xml +23 -5
- cloudnetpy_qc/data/cf-standard-name-table.xml +4456 -11658
- cloudnetpy_qc/data/standardized-region-list.xml +8 -2
- cloudnetpy_qc/quality.py +23 -2
- cloudnetpy_qc/variables.py +29 -0
- cloudnetpy_qc/version.py +1 -1
- {cloudnetpy_qc-1.20.0.dist-info → cloudnetpy_qc-1.22.0.dist-info}/METADATA +2 -1
- cloudnetpy_qc-1.22.0.dist-info/RECORD +15 -0
- {cloudnetpy_qc-1.20.0.dist-info → cloudnetpy_qc-1.22.0.dist-info}/WHEEL +1 -1
- cloudnetpy_qc-1.20.0.dist-info/RECORD +0 -15
- {cloudnetpy_qc-1.20.0.dist-info → cloudnetpy_qc-1.22.0.dist-info}/LICENSE +0 -0
- {cloudnetpy_qc-1.20.0.dist-info → cloudnetpy_qc-1.22.0.dist-info}/top_level.txt +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<?xml version="1.0"?>
|
|
2
2
|
<standardized_region_list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="region-list-1.1.xsd">
|
|
3
3
|
<title>Standardized Region List</title>
|
|
4
|
-
<version_number>
|
|
5
|
-
<date>
|
|
4
|
+
<version_number>5</version_number>
|
|
5
|
+
<date>12 November 2024</date>
|
|
6
6
|
<institution>Centre for Environmental Data Analysis</institution>
|
|
7
7
|
<contact>support@ceda.ac.uk</contact>
|
|
8
8
|
<entry id="africa">
|
|
@@ -176,6 +176,9 @@
|
|
|
176
176
|
<entry id="north_sea">
|
|
177
177
|
<description></description>
|
|
178
178
|
</entry>
|
|
179
|
+
<entry id="northern_hemisphere">
|
|
180
|
+
<description></description>
|
|
181
|
+
</entry>
|
|
179
182
|
<entry id="norwegian_sea">
|
|
180
183
|
<description></description>
|
|
181
184
|
</entry>
|
|
@@ -206,6 +209,9 @@
|
|
|
206
209
|
<entry id="south_china_sea">
|
|
207
210
|
<description></description>
|
|
208
211
|
</entry>
|
|
212
|
+
<entry id="southern_hemisphere">
|
|
213
|
+
<description></description>
|
|
214
|
+
</entry>
|
|
209
215
|
<entry id="southern_ocean">
|
|
210
216
|
<description></description>
|
|
211
217
|
</entry>
|
cloudnetpy_qc/quality.py
CHANGED
|
@@ -437,13 +437,14 @@ class TestGlobalAttributes(Test):
|
|
|
437
437
|
Product.MWR_SINGLE,
|
|
438
438
|
Product.MWR_MULTI,
|
|
439
439
|
Product.DOPPLER_LIDAR_WIND,
|
|
440
|
+
Product.EPSILON_LIDAR,
|
|
440
441
|
)
|
|
441
442
|
|
|
442
443
|
def _required_attrs(self, product: Product):
|
|
443
444
|
attrs = set(self.REQUIRED_ATTRS)
|
|
444
445
|
if product == Product.MWR_L1C:
|
|
445
446
|
attrs.add("mwrpy_coefficients")
|
|
446
|
-
if product in (Product.MWR_SINGLE, Product.MWR_MULTI):
|
|
447
|
+
if product in (Product.MWR_SINGLE, Product.MWR_MULTI, Product.EPSILON_LIDAR):
|
|
447
448
|
attrs.add("source_file_uuids")
|
|
448
449
|
if product != Product.MODEL:
|
|
449
450
|
attrs.add(
|
|
@@ -657,6 +658,17 @@ class TestRainfallConsistency(Test):
|
|
|
657
658
|
# -------------------- #
|
|
658
659
|
|
|
659
660
|
|
|
661
|
+
class TestDataModel(Test):
|
|
662
|
+
name = "Data model"
|
|
663
|
+
description = "Test netCDF data model."
|
|
664
|
+
|
|
665
|
+
def run(self):
|
|
666
|
+
expected = "NETCDF4_CLASSIC"
|
|
667
|
+
received = self.nc.data_model
|
|
668
|
+
if expected != received:
|
|
669
|
+
self._add_error(utils.create_expected_received_msg(expected, received))
|
|
670
|
+
|
|
671
|
+
|
|
660
672
|
class TestBrightnessTemperature(Test):
|
|
661
673
|
name = "Brightness temperature"
|
|
662
674
|
description = "Test that brightness temperature data are valid."
|
|
@@ -989,7 +1001,16 @@ class TestInstrumentPid(Test):
|
|
|
989
1001
|
"https://vocabulary.actris.nilu.no/actris_vocab/ThiesLPM",
|
|
990
1002
|
],
|
|
991
1003
|
"Thies Clima LPM": ["https://vocabulary.actris.nilu.no/actris_vocab/ThiesLPM"],
|
|
1004
|
+
"Vaisala WindCube WLS70": [
|
|
1005
|
+
"https://vocabulary.actris.nilu.no/actris_vocab/VaisalaWindCubeWLS70"
|
|
1006
|
+
],
|
|
1007
|
+
"Vaisala WindCube WLS100S": [
|
|
1008
|
+
"https://vocabulary.actris.nilu.no/actris_vocab/VaisalaWindCube100S"
|
|
1009
|
+
],
|
|
992
1010
|
"Vaisala WindCube WLS200S": [
|
|
993
|
-
"https://vocabulary.actris.nilu.no/
|
|
1011
|
+
"https://vocabulary.actris.nilu.no/actris_vocab/VaisalaWindCube200S"
|
|
1012
|
+
],
|
|
1013
|
+
"Vaisala WindCube WLS400S": [
|
|
1014
|
+
"https://vocabulary.actris.nilu.no/actris_vocab/VaisalaWindCube400S"
|
|
994
1015
|
],
|
|
995
1016
|
}
|
cloudnetpy_qc/variables.py
CHANGED
|
@@ -36,6 +36,7 @@ class Product(Enum):
|
|
|
36
36
|
DRIZZLE = "drizzle"
|
|
37
37
|
MWR_SINGLE = "mwr-single"
|
|
38
38
|
MWR_MULTI = "mwr-multi"
|
|
39
|
+
EPSILON_LIDAR= "epsilon-lidar"
|
|
39
40
|
# Level 3
|
|
40
41
|
L3_CF = "l3-cf"
|
|
41
42
|
L3_IWC = "l3-iwc"
|
|
@@ -72,6 +73,7 @@ LEVELS: dict[Product, Level] = {
|
|
|
72
73
|
Product.DRIZZLE: "2",
|
|
73
74
|
Product.MWR_SINGLE: "2",
|
|
74
75
|
Product.MWR_MULTI: "2",
|
|
76
|
+
Product.EPSILON_LIDAR: "2",
|
|
75
77
|
Product.L3_CF: "3",
|
|
76
78
|
Product.L3_IWC: "3",
|
|
77
79
|
Product.L3_LWC: "3",
|
|
@@ -890,6 +892,23 @@ VARIABLES = {
|
|
|
890
892
|
dtype=Dtype.FLOAT,
|
|
891
893
|
required=[Product.CPR],
|
|
892
894
|
),
|
|
895
|
+
# ----------------------------------------
|
|
896
|
+
# Required in Epsilon (lidar)
|
|
897
|
+
# ----------------------------------------
|
|
898
|
+
"epsilon": Variable(
|
|
899
|
+
long_name="Dissipation rate of turbulent kinetic energy",
|
|
900
|
+
units="m2 s-3",
|
|
901
|
+
required=[
|
|
902
|
+
Product.EPSILON_LIDAR,
|
|
903
|
+
],
|
|
904
|
+
),
|
|
905
|
+
"rolling_window_period": Variable(
|
|
906
|
+
long_name="Rolling window period",
|
|
907
|
+
units="s",
|
|
908
|
+
required=[
|
|
909
|
+
Product.EPSILON_LIDAR,
|
|
910
|
+
],
|
|
911
|
+
),
|
|
893
912
|
# -------------------------
|
|
894
913
|
# Required in several files
|
|
895
914
|
# -------------------------
|
|
@@ -1659,6 +1678,16 @@ VARIABLES = {
|
|
|
1659
1678
|
"polariser_bleed_through": Variable(
|
|
1660
1679
|
long_name="Polariser bleed-through",
|
|
1661
1680
|
),
|
|
1681
|
+
"pulses_per_ray": Variable(
|
|
1682
|
+
long_name="Pulses per ray",
|
|
1683
|
+
units="1",
|
|
1684
|
+
dtype=Dtype.INT
|
|
1685
|
+
),
|
|
1686
|
+
"ray_accumulation_time": Variable(
|
|
1687
|
+
long_name="Ray accumulation time",
|
|
1688
|
+
units="s",
|
|
1689
|
+
dtype=Dtype.FLOAT
|
|
1690
|
+
),
|
|
1662
1691
|
"lifted_index": Variable(
|
|
1663
1692
|
long_name="Lifted index",
|
|
1664
1693
|
),
|
cloudnetpy_qc/version.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: cloudnetpy_qc
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.22.0
|
|
4
4
|
Summary: Quality control routines for CloudnetPy products
|
|
5
5
|
Author-email: Finnish Meteorological Institute <actris-cloudnet@fmi.fi>
|
|
6
6
|
License: MIT License
|
|
@@ -136,6 +136,7 @@ print(json_object)
|
|
|
136
136
|
| `TestCFConvention` | Test compliance with the CF metadata conventions. |
|
|
137
137
|
| `TestComment` | Check that variables have expected comments. |
|
|
138
138
|
| `TestDataCoverage` | Test that file contains enough data. |
|
|
139
|
+
| `TestDataModel` | Test netCDF data model. |
|
|
139
140
|
| `TestDataTypes` | Check that variables have expected data types. |
|
|
140
141
|
| `TestFillValue` | Test that fill value is explicitly set for variables with missing data. |
|
|
141
142
|
| `TestFloatingPointValues` | Test for special floating-point values which may indicate problems with the processing. |
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
cloudnetpy_qc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
+
cloudnetpy_qc/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
|
+
cloudnetpy_qc/quality.py,sha256=8rn2Rf6_SpZtGSFD8HKi4NIJNTsOiz3_YN9dgrUOaK0,34737
|
|
4
|
+
cloudnetpy_qc/utils.py,sha256=ssRqu8Auz7YpfZ79mTKmms4DkP9_ExLthbIpQGNq4jc,3270
|
|
5
|
+
cloudnetpy_qc/variables.py,sha256=xDNjk2urxULN8cbTlOCDysgtaqt4tzVouBC0adyFDWc,50862
|
|
6
|
+
cloudnetpy_qc/version.py,sha256=tPPWkvK9wfbVke3_M0r3FdTi01ZTbCHkiVoDRPqrbPw,102
|
|
7
|
+
cloudnetpy_qc/data/area-type-table.xml,sha256=F3lzCQR5LjmsB7qhlBt3CpZRNAH3UZoYJs6fmkvmCCM,17203
|
|
8
|
+
cloudnetpy_qc/data/cf-standard-name-table.xml,sha256=BO6fEXQB6SRDeyP0wb7nyv3koKflM1s-0dIlgNF0KAI,4374043
|
|
9
|
+
cloudnetpy_qc/data/data_quality_config.ini,sha256=URRc93Du2_YFX6Q7GxMHptKIVl6kwxXw-kVyftmsEJk,1242
|
|
10
|
+
cloudnetpy_qc/data/standardized-region-list.xml,sha256=gLRE2G7RQLD9hmvW5dTzyK7XPhORxWv2bfbrvAp5Uto,6426
|
|
11
|
+
cloudnetpy_qc-1.22.0.dist-info/LICENSE,sha256=P0wszB7Cq2M390SKaqT4DGvECfwGOMdTTdxsWBpEUUc,1094
|
|
12
|
+
cloudnetpy_qc-1.22.0.dist-info/METADATA,sha256=IIJcwKxdKddViufkf0iJDVxFw68eQS5FDAEA1Tfa98s,7820
|
|
13
|
+
cloudnetpy_qc-1.22.0.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
|
|
14
|
+
cloudnetpy_qc-1.22.0.dist-info/top_level.txt,sha256=shrf8A1KyrrnhbHocc4gHmTl38YY-DHflgf-gXiKnKs,14
|
|
15
|
+
cloudnetpy_qc-1.22.0.dist-info/RECORD,,
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
cloudnetpy_qc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
cloudnetpy_qc/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
|
-
cloudnetpy_qc/quality.py,sha256=T3uVWjxoOoF_1Z2FwDL2HDaU1ZfLDj4FX4JkH-WFsjk,33997
|
|
4
|
-
cloudnetpy_qc/utils.py,sha256=ssRqu8Auz7YpfZ79mTKmms4DkP9_ExLthbIpQGNq4jc,3270
|
|
5
|
-
cloudnetpy_qc/variables.py,sha256=Jg1H-4yrqzuE0YLuj6PJI1NKIzKbyCnPyUcFePTN9Qs,50055
|
|
6
|
-
cloudnetpy_qc/version.py,sha256=G702fy-w_yPEuiP1RRs38W3bUgcPUvkxr9MuDE_cvNI,102
|
|
7
|
-
cloudnetpy_qc/data/area-type-table.xml,sha256=ePvw1b95ng3rNSQ7rDQFWtWjhJvMgCkkz53LRN-NVMo,14435
|
|
8
|
-
cloudnetpy_qc/data/cf-standard-name-table.xml,sha256=X_gbS481eXsxydGEsdYDYkU-idiB02GqpXloR5YfgF4,4135875
|
|
9
|
-
cloudnetpy_qc/data/data_quality_config.ini,sha256=URRc93Du2_YFX6Q7GxMHptKIVl6kwxXw-kVyftmsEJk,1242
|
|
10
|
-
cloudnetpy_qc/data/standardized-region-list.xml,sha256=65RqAqEFLwC01iAwkFEitPbAPEnjaCMcKYg2utjttls,6274
|
|
11
|
-
cloudnetpy_qc-1.20.0.dist-info/LICENSE,sha256=P0wszB7Cq2M390SKaqT4DGvECfwGOMdTTdxsWBpEUUc,1094
|
|
12
|
-
cloudnetpy_qc-1.20.0.dist-info/METADATA,sha256=uIY7mftgbkMVkV5fNKSvS8Cmn-tcgFUVsAx5pD6up_I,7698
|
|
13
|
-
cloudnetpy_qc-1.20.0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
14
|
-
cloudnetpy_qc-1.20.0.dist-info/top_level.txt,sha256=shrf8A1KyrrnhbHocc4gHmTl38YY-DHflgf-gXiKnKs,14
|
|
15
|
-
cloudnetpy_qc-1.20.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|