cloudnetpy 1.69.7__tar.gz → 1.69.9__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-1.69.7/cloudnetpy.egg-info → cloudnetpy-1.69.9}/PKG-INFO +1 -1
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/exceptions.py +0 -7
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/rain_e_h3.py +0 -1
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/weather_station.py +90 -37
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/version.py +1 -1
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9/cloudnetpy.egg-info}/PKG-INFO +1 -1
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/LICENSE +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/MANIFEST.in +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/README.md +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/atmos_utils.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/attenuation.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/attenuations/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/attenuations/gas_attenuation.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/attenuations/liquid_attenuation.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/attenuations/melting_attenuation.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/attenuations/rain_attenuation.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/categorize.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/classify.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/containers.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/disdrometer.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/droplet.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/falling.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/freezing.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/insects.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/itu.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/lidar.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/melting.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/model.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/mwr.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/radar.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/cli.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/cloudnetarray.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/concat_lib.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/constants.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/datasource.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/basta.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/campbell_scientific.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/ceilo.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/ceilometer.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/cl61d.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/cloudnet_instrument.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/copernicus.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/disdrometer/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/disdrometer/common.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/disdrometer/parsivel.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/disdrometer/thies.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/galileo.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/hatpro.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/instruments.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/lufft.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/mira.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/mrr.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/nc_lidar.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/nc_radar.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/pollyxt.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/radiometrics.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/rpg.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/rpg_reader.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/toa5.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/instruments/vaisala.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/metadata.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/file_handler.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/metadata.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/model_metadata.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/plotting/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/plotting/plot_meta.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/plotting/plot_tools.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/plotting/plotting.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/products/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/products/advance_methods.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/products/grid_methods.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/products/model_products.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/products/observation_products.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/products/product_resampling.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/products/tools.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/statistics/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/statistics/statistical_methods.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/conftest.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_cf/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_cf/main.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_cf/tests.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_iwc/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_iwc/main.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_iwc/tests.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_lwc/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_lwc/main.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_lwc/tests.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/unit/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/unit/conftest.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/unit/test_advance_methods.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/unit/test_grid_methods.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/unit/test_model_products.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/unit/test_observation_products.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/unit/test_plot_tools.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/unit/test_plotting.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/unit/test_statistical_methods.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/unit/test_tools.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/utils.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/output.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/plotting/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/plotting/plot_meta.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/plotting/plotting.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/products/__init__.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/products/classification.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/products/der.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/products/drizzle.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/products/drizzle_error.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/products/drizzle_tools.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/products/ier.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/products/iwc.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/products/lwc.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/products/mie_lu_tables.nc +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/products/mwr_tools.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/products/product_tools.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/py.typed +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/utils.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy.egg-info/SOURCES.txt +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy.egg-info/dependency_links.txt +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy.egg-info/entry_points.txt +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy.egg-info/requires.txt +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy.egg-info/top_level.txt +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/docs/source/conf.py +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/pyproject.toml +0 -0
- {cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/setup.cfg +0 -0
@@ -30,13 +30,6 @@ class PlottingError(CloudnetException):
|
|
30
30
|
super().__init__(msg)
|
31
31
|
|
32
32
|
|
33
|
-
class WeatherStationDataError(CloudnetException):
|
34
|
-
"""Internal exception class."""
|
35
|
-
|
36
|
-
def __init__(self, msg: str = "Unable to read the file"):
|
37
|
-
super().__init__(msg)
|
38
|
-
|
39
|
-
|
40
33
|
class ModelDataError(CloudnetException):
|
41
34
|
"""Internal exception class."""
|
42
35
|
|
@@ -10,7 +10,7 @@ from cloudnetpy import output
|
|
10
10
|
from cloudnetpy.categorize import atmos_utils
|
11
11
|
from cloudnetpy.cloudnetarray import CloudnetArray
|
12
12
|
from cloudnetpy.constants import HPA_TO_PA, MM_H_TO_M_S, SEC_IN_HOUR
|
13
|
-
from cloudnetpy.exceptions import ValidTimeStampError
|
13
|
+
from cloudnetpy.exceptions import ValidTimeStampError
|
14
14
|
from cloudnetpy.instruments import instruments
|
15
15
|
from cloudnetpy.instruments.cloudnet_instrument import CSVFile
|
16
16
|
from cloudnetpy.instruments.toa5 import read_toa5
|
@@ -38,46 +38,44 @@ def ws2nc(
|
|
38
38
|
UUID of the generated file.
|
39
39
|
|
40
40
|
Raises:
|
41
|
-
WeatherStationDataError : Unable to read the file.
|
42
41
|
ValidTimeStampError: No valid timestamps found.
|
43
42
|
"""
|
44
43
|
if not isinstance(weather_station_file, list):
|
45
44
|
weather_station_file = [weather_station_file]
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
ws.
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
raise WeatherStationDataError from err
|
45
|
+
ws: WS
|
46
|
+
if site_meta["name"] == "Palaiseau":
|
47
|
+
ws = PalaiseauWS(weather_station_file, site_meta)
|
48
|
+
elif site_meta["name"] == "Bucharest":
|
49
|
+
ws = BucharestWS(weather_station_file, site_meta)
|
50
|
+
elif site_meta["name"] == "Granada":
|
51
|
+
ws = GranadaWS(weather_station_file, site_meta)
|
52
|
+
elif site_meta["name"] == "Kenttärova":
|
53
|
+
ws = KenttarovaWS(weather_station_file, site_meta)
|
54
|
+
elif site_meta["name"] == "Hyytiälä":
|
55
|
+
ws = HyytialaWS(weather_station_file, site_meta)
|
56
|
+
elif site_meta["name"] == "Galați":
|
57
|
+
ws = GalatiWS(weather_station_file, site_meta)
|
58
|
+
elif site_meta["name"] == "Jülich":
|
59
|
+
ws = JuelichWS(weather_station_file, site_meta)
|
60
|
+
elif site_meta["name"] == "Lampedusa":
|
61
|
+
ws = LampedusaWS(weather_station_file, site_meta)
|
62
|
+
else:
|
63
|
+
msg = "Unsupported site"
|
64
|
+
raise ValueError(msg)
|
65
|
+
if date is not None:
|
66
|
+
ws.screen_timestamps(date)
|
67
|
+
ws.convert_time()
|
68
|
+
ws.add_date()
|
69
|
+
ws.add_site_geolocation()
|
70
|
+
ws.add_data()
|
71
|
+
ws.convert_temperature_and_humidity()
|
72
|
+
ws.convert_pressure()
|
73
|
+
ws.convert_rainfall_rate()
|
74
|
+
ws.convert_rainfall_amount()
|
75
|
+
ws.normalize_rainfall_amount()
|
76
|
+
ws.calculate_rainfall_amount()
|
77
|
+
attributes = output.add_time_attribute({}, ws.date)
|
78
|
+
output.update_attributes(ws.data, attributes)
|
81
79
|
return output.save_level1b(ws, output_file, uuid)
|
82
80
|
|
83
81
|
|
@@ -486,3 +484,58 @@ class JuelichWS(WS):
|
|
486
484
|
data[keymap[key]].append(parsed)
|
487
485
|
|
488
486
|
return self.format_data(data)
|
487
|
+
|
488
|
+
|
489
|
+
class LampedusaWS(WS):
|
490
|
+
"""Read Lampedusa weather station data in ICOS format."""
|
491
|
+
|
492
|
+
def __init__(self, filenames: list[str], site_meta: dict):
|
493
|
+
super().__init__(site_meta)
|
494
|
+
self.filename = filenames[0]
|
495
|
+
self._data = self._read_data()
|
496
|
+
|
497
|
+
def _read_data(self) -> dict:
|
498
|
+
with open(self.filename, newline="") as f:
|
499
|
+
fields = [
|
500
|
+
"time",
|
501
|
+
"str1",
|
502
|
+
"str2",
|
503
|
+
"T",
|
504
|
+
"RH",
|
505
|
+
"Td",
|
506
|
+
"P",
|
507
|
+
"WSi",
|
508
|
+
"WDi",
|
509
|
+
"WS10m",
|
510
|
+
"WD10m",
|
511
|
+
"rain1m",
|
512
|
+
"rain2h",
|
513
|
+
"empty",
|
514
|
+
]
|
515
|
+
reader = csv.DictReader(f, fieldnames=fields)
|
516
|
+
raw_data: dict = {key: [] for key in fields}
|
517
|
+
for row in reader:
|
518
|
+
for key, value in row.items():
|
519
|
+
fixed_value = value.strip("\0")
|
520
|
+
parsed_value: float | datetime.datetime
|
521
|
+
if key == "time":
|
522
|
+
parsed_value = datetime.datetime.strptime(
|
523
|
+
fixed_value, "%y%m%d %H%M%S"
|
524
|
+
)
|
525
|
+
else:
|
526
|
+
try:
|
527
|
+
parsed_value = float(fixed_value)
|
528
|
+
except ValueError:
|
529
|
+
parsed_value = math.nan
|
530
|
+
raw_data[key].append(parsed_value)
|
531
|
+
|
532
|
+
data = {
|
533
|
+
"time": raw_data["time"],
|
534
|
+
"air_temperature": raw_data["T"],
|
535
|
+
"relative_humidity": raw_data["RH"],
|
536
|
+
"air_pressure": raw_data["P"],
|
537
|
+
"wind_speed": raw_data["WSi"],
|
538
|
+
"wind_direction": raw_data["WDi"],
|
539
|
+
"rainfall_rate": raw_data["rain1m"],
|
540
|
+
}
|
541
|
+
return self.format_data(data)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/attenuations/gas_attenuation.py
RENAMED
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/attenuations/liquid_attenuation.py
RENAMED
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/attenuations/melting_attenuation.py
RENAMED
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/categorize/attenuations/rain_attenuation.py
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
|
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
|
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
|
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
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/products/advance_methods.py
RENAMED
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/products/grid_methods.py
RENAMED
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/products/model_products.py
RENAMED
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/products/observation_products.py
RENAMED
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/products/product_resampling.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_cf/__init__.py
RENAMED
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_cf/main.py
RENAMED
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_cf/tests.py
RENAMED
File without changes
|
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_iwc/main.py
RENAMED
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_iwc/tests.py
RENAMED
File without changes
|
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_lwc/main.py
RENAMED
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/e2e/process_lwc/tests.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/unit/test_grid_methods.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/unit/test_plot_tools.py
RENAMED
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/unit/test_plotting.py
RENAMED
File without changes
|
File without changes
|
{cloudnetpy-1.69.7 → cloudnetpy-1.69.9}/cloudnetpy/model_evaluation/tests/unit/test_tools.py
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
|
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
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|