disdrodb 0.1.4__tar.gz → 0.1.5__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.
- {disdrodb-0.1.4/disdrodb.egg-info → disdrodb-0.1.5}/PKG-INFO +2 -1
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/_version.py +3 -3
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/api/create_directories.py +0 -2
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_create_summary.py +10 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_create_summary_station.py +10 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/constants.py +1 -1
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/etc/products/L1/global.yaml +1 -1
- disdrodb-0.1.5/disdrodb/etc/products/L2E/5MIN.yaml +1 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/etc/products/L2E/global.yaml +1 -1
- disdrodb-0.1.5/disdrodb/etc/products/L2M/GAMMA_GS_ND_MAE.yaml +6 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/etc/products/L2M/GAMMA_ML.yaml +1 -1
- disdrodb-0.1.5/disdrodb/etc/products/L2M/LOGNORMAL_GS_LOG_ND_MAE.yaml +6 -0
- disdrodb-0.1.5/disdrodb/etc/products/L2M/LOGNORMAL_GS_ND_MAE.yaml +6 -0
- disdrodb-0.1.5/disdrodb/etc/products/L2M/LOGNORMAL_ML.yaml +8 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/etc/products/L2M/global.yaml +11 -3
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/check_configs.py +49 -16
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/LPM/l0a_encodings.yml +2 -2
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/LPM/l0b_cf_attrs.yml +2 -2
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/LPM/l0b_encodings.yml +2 -2
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/LPM/raw_data_format.yml +2 -2
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PWS100/l0b_encodings.yml +1 -0
- disdrodb-0.1.5/disdrodb/l0/configs/SWS250/bins_diameter.yml +108 -0
- disdrodb-0.1.5/disdrodb/l0/configs/SWS250/bins_velocity.yml +83 -0
- disdrodb-0.1.5/disdrodb/l0/configs/SWS250/l0a_encodings.yml +18 -0
- disdrodb-0.1.5/disdrodb/l0/configs/SWS250/l0b_cf_attrs.yml +72 -0
- disdrodb-0.1.5/disdrodb/l0/configs/SWS250/l0b_encodings.yml +155 -0
- disdrodb-0.1.5/disdrodb/l0/configs/SWS250/raw_data_format.yml +148 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/l0b_processing.py +70 -15
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/LPM/ARM/ARM_LPM.py +1 -1
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/LPM/AUSTRALIA/MELBOURNE_2007_LPM.py +2 -2
- disdrodb-0.1.5/disdrodb/l0/readers/LPM/BELGIUM/ULIEGE.py +256 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/LPM/BRAZIL/CHUVA_LPM.py +2 -2
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/LPM/BRAZIL/GOAMAZON_LPM.py +2 -2
- disdrodb-0.1.5/disdrodb/l0/readers/LPM/GERMANY/DWD.py +491 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/LPM/ITALY/GID_LPM.py +2 -2
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/LPM/ITALY/GID_LPM_W.py +2 -2
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/LPM/KIT/CHWALA.py +2 -2
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/LPM/SLOVENIA/ARSO.py +107 -12
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/LPM/SLOVENIA/UL.py +3 -3
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/LPM/SWITZERLAND/INNERERIZ_LPM.py +2 -2
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/NCAR/VORTEX2_2010.py +5 -14
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/NCAR/VORTEX2_2010_UF.py +5 -14
- disdrodb-0.1.5/disdrodb/l0/readers/PARSIVEL/SLOVENIA/UL.py +230 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/BRAZIL/CHUVA_PARSIVEL2.py +10 -14
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/BRAZIL/GOAMAZON_PARSIVEL2.py +10 -14
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/DENMARK/DTU.py +8 -14
- disdrodb-0.1.5/disdrodb/l0/readers/PARSIVEL2/DENMARK/EROSION_raw.py +382 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/FINLAND/FMI_PARSIVEL2.py +4 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/FRANCE/OSUG.py +1 -1
- disdrodb-0.1.5/disdrodb/l0/readers/PARSIVEL2/GREECE/NOA.py +127 -0
- disdrodb-0.1.5/disdrodb/l0/readers/PARSIVEL2/ITALY/HYDROX.py +239 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/NCAR/FARM_PARSIVEL2.py +5 -11
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/NCAR/PERILS_MIPS.py +4 -17
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/NCAR/RELAMPAGO_PARSIVEL2.py +5 -14
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/NCAR/SNOWIE_PJ.py +10 -13
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/NCAR/SNOWIE_SB.py +10 -13
- disdrodb-0.1.5/disdrodb/l0/readers/PARSIVEL2/PHILIPPINES/PANGASA.py +232 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/SPAIN/CENER.py +6 -18
- disdrodb-0.1.4/disdrodb/l0/readers/PARSIVEL/SLOVENIA/UL.py → disdrodb-0.1.5/disdrodb/l0/readers/PARSIVEL2/SPAIN/GRANADA.py +35 -36
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/USA/C3WE.py +7 -25
- disdrodb-0.1.5/disdrodb/l0/readers/PWS100/AUSTRIA/HOAL.py +321 -0
- disdrodb-0.1.5/disdrodb/l0/readers/SW250/BELGIUM/KMI.py +239 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l1/beard_model.py +31 -129
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l1/fall_velocity.py +136 -83
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l1/filters.py +25 -28
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l1/processing.py +11 -13
- disdrodb-0.1.5/disdrodb/l1_env/routines.py +82 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l2/empirical_dsd.py +6 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l2/processing.py +2 -2
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/metadata/geolocation.py +0 -2
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/psd/fitting.py +16 -13
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/routines/l2.py +35 -23
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/routines/wrappers.py +5 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/scattering/axis_ratio.py +90 -84
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/scattering/permittivity.py +6 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/summary/routines.py +38 -12
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/attrs.py +2 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/encoding.py +5 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/time.py +2 -2
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/viz/plots.py +24 -1
- {disdrodb-0.1.4 → disdrodb-0.1.5/disdrodb.egg-info}/PKG-INFO +2 -1
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb.egg-info/SOURCES.txt +20 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb.egg-info/requires.txt +1 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/pyproject.toml +2 -1
- disdrodb-0.1.4/disdrodb/l1_env/routines.py +0 -53
- {disdrodb-0.1.4 → disdrodb-0.1.5}/.codebeatignore +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/.coveragerc +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/.gitignore +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/.pre-commit-config.yaml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/.readthedocs.yaml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/AUTHORS.md +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/CHANGELOG.md +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/CODE_OF_CONDUCT.md +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/CONTRIBUTING.rst +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/LICENSE +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/MANIFEST.in +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/Makefile +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/README.md +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/SECURITY.md +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/_config.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/accessor/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/accessor/methods.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/api/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/api/checks.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/api/configs.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/api/info.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/api/io.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/api/path.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/api/search.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_check_metadata_archive.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_data_archive_directory.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_download_archive.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_download_metadata_archive.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_download_station.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_initialize_station.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_metadata_archive_directory.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_open_data_archive.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_open_logs_directory.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_open_metadata_archive.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_open_metadata_directory.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_open_product_directory.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_open_readers_directory.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_run_l0.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_run_l0_station.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_run_l0a.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_run_l0a_station.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_run_l0b.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_run_l0b_station.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_run_l0c.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_run_l0c_station.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_run_l1.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_run_l1_station.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_run_l2e.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_run_l2e_station.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_run_l2m.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_run_l2m_station.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_upload_archive.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/cli/disdrodb_upload_station.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/configs.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/data_transfer/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/data_transfer/download_data.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/data_transfer/upload_data.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/data_transfer/zenodo.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/docs.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/etc/configs/attributes.yaml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/etc/configs/encodings.yaml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/etc/products/L2E/10MIN.yaml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/etc/products/L2E/1MIN.yaml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/etc/products/L2M/10MIN.yaml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/etc/products/L2M/NGAMMA_GS_LOG_ND_MAE.yaml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/etc/products/L2M/NGAMMA_GS_ND_MAE.yaml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/etc/products/L2M/NGAMMA_GS_Z_MAE.yaml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/issue/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/issue/checks.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/issue/reader.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/issue/writer.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/check_standards.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/LPM/bins_diameter.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/LPM/bins_velocity.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PARSIVEL/bins_diameter.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PARSIVEL/bins_velocity.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PARSIVEL/l0a_encodings.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PARSIVEL/l0b_cf_attrs.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PARSIVEL/l0b_encodings.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PARSIVEL/raw_data_format.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PARSIVEL2/bins_diameter.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PARSIVEL2/bins_velocity.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PARSIVEL2/l0a_encodings.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PARSIVEL2/l0b_cf_attrs.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PARSIVEL2/l0b_encodings.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PARSIVEL2/raw_data_format.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PWS100/bins_diameter.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PWS100/bins_velocity.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PWS100/l0a_encodings.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PWS100/l0b_cf_attrs.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/PWS100/raw_data_format.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/RD80/bins_diameter.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/RD80/bins_velocity.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/RD80/l0a_encodings.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/RD80/l0b_cf_attrs.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/RD80/l0b_encodings.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/configs/RD80/raw_data_format.yml +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/l0_reader.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/l0a_processing.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/l0b_nc_processing.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/l0c_processing.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/manuals/LPM.pdf +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/manuals/ODM470.pdf +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/manuals/PARSIVEL.pdf +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/manuals/PARSIVEL2.pdf +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/manuals/PWS100.pdf +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/manuals/RD80.pdf +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/manuals/SWS250.pdf +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/manuals/VPF730.pdf +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/manuals/VPF750.pdf +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/LPM/NETHERLANDS/DELFT_LPM_NC.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/LPM/UK/DIVEN.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/AUSTRALIA/MELBOURNE_2007_PARSIVEL.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/CHINA/CHONGQING.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/ARCTIC_2021.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/COMMON_2011.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/DAVOS_2009_2011.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/EPFL_2009.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/EPFL_ROOF_2008.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/EPFL_ROOF_2010.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/EPFL_ROOF_2011.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/EPFL_ROOF_2012.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/GENEPI_2007.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/GRAND_ST_BERNARD_2007.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/GRAND_ST_BERNARD_2007_2.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/HPICONET_2010.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/HYMEX_LTE_SOP2.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/HYMEX_LTE_SOP3.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/HYMEX_LTE_SOP4.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/LOCARNO_2018.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/LOCARNO_2019.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/PARADISO_2014.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/PARSIVEL_2007.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/PLATO_2019.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/RACLETS_2019.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/RACLETS_2019_WJF.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/RIETHOLZBACH_2011.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/SAMOYLOV_2017.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/SAMOYLOV_2019.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/EPFL/UNIL_2022.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/GPM/IFLOODS.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/GPM/LPVEX.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/GPM/MC3E.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/GPM/PIERS.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/JAPAN/JMA.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/NCAR/CCOPE_2015.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/NCAR/OWLES_MIPS.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/NCAR/PECAN_MOBILE.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/NCAR/PLOWS_MIPS.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL/NCAR/VORTEX2_2009.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/ARM/ARM_PARSIVEL2.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/BELGIUM/ILVO.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/CANADA/UQAM_NC.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/DENMARK/EROSION_nc.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/FRANCE/ENPC_PARSIVEL2.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/FRANCE/SIRTA_PARSIVEL2.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/GPM/GCPEX.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/GPM/NSSTC.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/ITALY/GID_PARSIVEL2.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/KIT/BURKINA_FASO.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/KIT/TEAMX.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/MEXICO/OH_IIUNAM_nc.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/MPI/BCO_PARSIVEL2.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/MPI/BOWTIE.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/NASA/APU.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/NASA/LPVEX.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/NCAR/PECAN_FP3.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/NCAR/PECAN_MIPS.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/NCAR/PERILS_PIPS.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/NCAR/VORTEX_SE_2016_P1.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/NCAR/VORTEX_SE_2016_P2.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/NCAR/VORTEX_SE_2016_PIPS.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/NETHERLANDS/DELFT_NC.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/SPAIN/CR1000DL.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PARSIVEL2/SPAIN/LIAISE.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PWS100/FRANCE/ENPC_PWS100.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/PWS100/FRANCE/ENPC_PWS100_SIRTA.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/RD80/BRAZIL/CHUVA_RD80.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/RD80/BRAZIL/GOAMAZON_RD80.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/RD80/NCAR/CINDY_2011_RD80.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/RD80/NCAR/RELAMPAGO_RD80.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/RD80/NOAA/PSL_RD80.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/template_reader_raw_netcdf_data.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/readers/template_reader_raw_text_data.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/standards.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l0/template_tools.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l1/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l1/resampling.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l1_env/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/l2/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/metadata/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/metadata/checks.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/metadata/download.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/metadata/info.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/metadata/manipulation.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/metadata/reader.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/metadata/search.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/metadata/standards.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/metadata/writer.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/psd/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/psd/models.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/routines/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/routines/l0.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/routines/l1.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/scattering/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/scattering/routines.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/summary/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/archiving.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/cli.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/compression.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/dask.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/dataframe.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/decorators.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/directories.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/event.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/list.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/logger.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/manipulations.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/routines.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/subsetting.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/warnings.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/writer.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/xarray.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/utils/yaml.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb/viz/__init__.py +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb.egg-info/dependency_links.txt +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb.egg-info/entry_points.txt +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/disdrodb.egg-info/top_level.txt +0 -0
- {disdrodb-0.1.4 → disdrodb-0.1.5}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: disdrodb
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.5
|
|
4
4
|
Summary: disdrodb provides tools to download, standardize, share and analyze global disdrometer data.
|
|
5
5
|
Author: Gionata Ghiggi
|
|
6
6
|
Project-URL: homepage, https://github.com/ltelab/disdrodb
|
|
@@ -33,6 +33,7 @@ Requires-Dist: numpy
|
|
|
33
33
|
Requires-Dist: scipy
|
|
34
34
|
Requires-Dist: dask[distributed]
|
|
35
35
|
Requires-Dist: xarray
|
|
36
|
+
Requires-Dist: bottleneck
|
|
36
37
|
Requires-Dist: matplotlib
|
|
37
38
|
Provides-Extra: dev
|
|
38
39
|
Requires-Dist: jupyter; extra == "dev"
|
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.1.
|
|
32
|
-
__version_tuple__ = version_tuple = (0, 1,
|
|
31
|
+
__version__ = version = '0.1.5'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 1, 5)
|
|
33
33
|
|
|
34
|
-
__commit_id__ = commit_id = '
|
|
34
|
+
__commit_id__ = commit_id = 'g71d96e131'
|
|
@@ -85,8 +85,6 @@ def create_l0_directory_structure(
|
|
|
85
85
|
``product = "L0A"`` will call ``run_l0a``.
|
|
86
86
|
``product = "L0B"`` will call ``run_l0b_nc``.
|
|
87
87
|
"""
|
|
88
|
-
from disdrodb.configs import get_data_archive_dir, get_metadata_archive_dir
|
|
89
|
-
|
|
90
88
|
# Retrieve the DISDRODB Metadata Archive directory
|
|
91
89
|
data_archive_dir = get_data_archive_dir(data_archive_dir)
|
|
92
90
|
metadata_archive_dir = get_metadata_archive_dir(metadata_archive_dir)
|
|
@@ -39,6 +39,14 @@ sys.tracebacklimit = 0 # avoid full traceback error if occur
|
|
|
39
39
|
@click_data_archive_dir_option
|
|
40
40
|
@click_metadata_archive_dir_option
|
|
41
41
|
@click.option("-p", "--parallel", type=bool, show_default=True, default=False, help="Read files in parallel")
|
|
42
|
+
@click.option(
|
|
43
|
+
"-t",
|
|
44
|
+
"--temporal_resolution",
|
|
45
|
+
type=str,
|
|
46
|
+
show_default=True,
|
|
47
|
+
default="1MIN",
|
|
48
|
+
help="Temporal resolution of the L2E product to be used for the summary.",
|
|
49
|
+
)
|
|
42
50
|
def disdrodb_create_summary(
|
|
43
51
|
# Stations options
|
|
44
52
|
data_sources: Optional[str] = None,
|
|
@@ -46,6 +54,7 @@ def disdrodb_create_summary(
|
|
|
46
54
|
station_names: Optional[str] = None,
|
|
47
55
|
# Processing options:
|
|
48
56
|
parallel=False,
|
|
57
|
+
temporal_resolution="1MIN",
|
|
49
58
|
# DISDRODB root directories
|
|
50
59
|
data_archive_dir: Optional[str] = None,
|
|
51
60
|
metadata_archive_dir: Optional[str] = None,
|
|
@@ -92,6 +101,7 @@ def disdrodb_create_summary(
|
|
|
92
101
|
station_names=station_names,
|
|
93
102
|
# Options
|
|
94
103
|
parallel=parallel,
|
|
104
|
+
temporal_resolution=temporal_resolution,
|
|
95
105
|
# DISDRODB root directory
|
|
96
106
|
data_archive_dir=data_archive_dir,
|
|
97
107
|
metadata_archive_dir=metadata_archive_dir,
|
|
@@ -36,6 +36,14 @@ sys.tracebacklimit = 0 # avoid full traceback error if occur
|
|
|
36
36
|
@click_station_arguments
|
|
37
37
|
@click_data_archive_dir_option
|
|
38
38
|
@click.option("-p", "--parallel", type=bool, show_default=True, default=False, help="Read files in parallel")
|
|
39
|
+
@click.option(
|
|
40
|
+
"-t",
|
|
41
|
+
"--temporal_resolution",
|
|
42
|
+
type=str,
|
|
43
|
+
show_default=True,
|
|
44
|
+
default="1MIN",
|
|
45
|
+
help="Temporal resolution of the L2E product to be used for the summary.",
|
|
46
|
+
)
|
|
39
47
|
def disdrodb_create_summary_station(
|
|
40
48
|
# Station arguments
|
|
41
49
|
data_source: str,
|
|
@@ -43,6 +51,7 @@ def disdrodb_create_summary_station(
|
|
|
43
51
|
station_name: str,
|
|
44
52
|
# Processing options:
|
|
45
53
|
parallel=False,
|
|
54
|
+
temporal_resolution="1MIN",
|
|
46
55
|
# DISDRODB root directories
|
|
47
56
|
data_archive_dir: Optional[str] = None,
|
|
48
57
|
):
|
|
@@ -81,6 +90,7 @@ def disdrodb_create_summary_station(
|
|
|
81
90
|
station_name=station_name,
|
|
82
91
|
# Options
|
|
83
92
|
parallel=parallel,
|
|
93
|
+
temporal_resolution=temporal_resolution,
|
|
84
94
|
# DISDRODB root directory
|
|
85
95
|
data_archive_dir=data_archive_dir,
|
|
86
96
|
)
|
|
@@ -41,7 +41,7 @@ COORDINATES = [
|
|
|
41
41
|
"time",
|
|
42
42
|
"sample_interval",
|
|
43
43
|
]
|
|
44
|
-
OPTICAL_SENSORS = ["PARSIVEL", "PARSIVEL2", "LPM", "PWS100"]
|
|
44
|
+
OPTICAL_SENSORS = ["PARSIVEL", "PARSIVEL2", "LPM", "PWS100", "SWS250"]
|
|
45
45
|
IMPACT_SENSORS = ["RD80"]
|
|
46
46
|
|
|
47
47
|
PRODUCTS = ["RAW", "L0A", "L0B", "L0C", "L1", "L2E", "L2M"]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
radar_enabled: True
|
|
@@ -1,12 +1,20 @@
|
|
|
1
|
-
temporal_resolutions: ["1MIN"
|
|
2
|
-
models:
|
|
1
|
+
temporal_resolutions: ["1MIN"] #, "5MIN", "10MIN"]
|
|
2
|
+
models:
|
|
3
|
+
[
|
|
4
|
+
"GAMMA_ML",
|
|
5
|
+
"GAMMA_GS_ND_MAE",
|
|
6
|
+
"NGAMMA_GS_LOG_ND_MAE",
|
|
7
|
+
"NGAMMA_GS_ND_MAE",
|
|
8
|
+
"LOGNORMAL_ML",
|
|
9
|
+
"LOGNORMAL_GS_ND_MAE",
|
|
10
|
+
]
|
|
3
11
|
archive_options:
|
|
4
12
|
strategy: time_block
|
|
5
13
|
strategy_options:
|
|
6
14
|
freq: month
|
|
7
15
|
folder_partitioning: ""
|
|
8
16
|
product_options:
|
|
9
|
-
|
|
17
|
+
fall_velocity_model: "Beard1976"
|
|
10
18
|
diameter_min: 0
|
|
11
19
|
diameter_max: 10
|
|
12
20
|
diameter_spacing: 0.05
|
|
@@ -22,7 +22,7 @@ import os
|
|
|
22
22
|
from typing import Optional, Union
|
|
23
23
|
|
|
24
24
|
import numpy as np
|
|
25
|
-
from pydantic import BaseModel, ValidationError, field_validator, model_validator
|
|
25
|
+
from pydantic import BaseModel, Field, ValidationError, field_validator, model_validator
|
|
26
26
|
|
|
27
27
|
from disdrodb.api.configs import available_sensor_names, get_sensor_configs_dir, read_config_file
|
|
28
28
|
from disdrodb.l0.standards import (
|
|
@@ -47,7 +47,7 @@ CONFIG_FILES_LIST = [
|
|
|
47
47
|
]
|
|
48
48
|
|
|
49
49
|
|
|
50
|
-
def
|
|
50
|
+
def check_yaml_files_exists(sensor_name: str) -> None:
|
|
51
51
|
"""Check if all L0 config YAML files exist.
|
|
52
52
|
|
|
53
53
|
Parameters
|
|
@@ -64,7 +64,7 @@ def _check_yaml_files_exists(sensor_name: str) -> None:
|
|
|
64
64
|
raise FileNotFoundError(f"Missing YAML files {missing_keys_text} in {config_dir} for sensor {sensor_name}.")
|
|
65
65
|
|
|
66
66
|
|
|
67
|
-
def
|
|
67
|
+
def check_variable_consistency(sensor_name: str) -> None:
|
|
68
68
|
"""
|
|
69
69
|
Check variable consistency across config files.
|
|
70
70
|
|
|
@@ -126,7 +126,7 @@ def _schema_error(object_to_validate: Union[str, list], schema: BaseModel, messa
|
|
|
126
126
|
|
|
127
127
|
|
|
128
128
|
class L0BEncodingSchema(BaseModel):
|
|
129
|
-
"""Pydantic model for DISDRODB
|
|
129
|
+
"""Pydantic model for DISDRODB netCDF encodings."""
|
|
130
130
|
|
|
131
131
|
contiguous: bool
|
|
132
132
|
dtype: str
|
|
@@ -134,7 +134,7 @@ class L0BEncodingSchema(BaseModel):
|
|
|
134
134
|
complevel: int
|
|
135
135
|
shuffle: bool
|
|
136
136
|
fletcher32: bool
|
|
137
|
-
|
|
137
|
+
FillValue: Optional[Union[int, float]] = Field(default=None, alias="_FillValue")
|
|
138
138
|
chunksizes: Optional[Union[int, list[int]]]
|
|
139
139
|
|
|
140
140
|
# if contiguous=False, chunksizes specified, otherwise should be not !
|
|
@@ -167,6 +167,39 @@ class L0BEncodingSchema(BaseModel):
|
|
|
167
167
|
raise ValueError("'fletcher32' must be set to False if 'contiguous' is True")
|
|
168
168
|
return values
|
|
169
169
|
|
|
170
|
+
# if dtype is integer/unsigned integer, _FillValue must be specified and valid
|
|
171
|
+
@model_validator(mode="before")
|
|
172
|
+
def check_integer_fillvalue(cls, values):
|
|
173
|
+
"""Check that integer dtypes have valid _FillValue."""
|
|
174
|
+
dtype = values.get("dtype")
|
|
175
|
+
fill_value = values.get("_FillValue", None)
|
|
176
|
+
integer_types = ["int8", "int16", "int32", "int64", "uint8", "uint16", "uint32", "uint64"]
|
|
177
|
+
# Check if dtype is an integer type
|
|
178
|
+
if dtype in integer_types:
|
|
179
|
+
# _FillValue must be specified for integer types
|
|
180
|
+
if fill_value is None:
|
|
181
|
+
raise ValueError(f"'_FillValue' must be specified for integer dtype '{dtype}'")
|
|
182
|
+
|
|
183
|
+
# Check that _FillValue is within valid range for the dtype
|
|
184
|
+
dtype_info = np.iinfo(dtype)
|
|
185
|
+
max_value = dtype_info.max
|
|
186
|
+
# min_value = dtype_info.min
|
|
187
|
+
|
|
188
|
+
# if not (min_value <= fill_value <= max_value):
|
|
189
|
+
# raise ValueError(
|
|
190
|
+
# f"'_FillValue' ({fill_value}) is out of range for dtype '{dtype}'. "
|
|
191
|
+
# f"Valid range is [{min_value}, {max_value}]",
|
|
192
|
+
# )
|
|
193
|
+
|
|
194
|
+
# Check that _FillValue corresponds to the maximum allowed value
|
|
195
|
+
if fill_value != max_value:
|
|
196
|
+
raise ValueError(
|
|
197
|
+
f"'_FillValue' ({fill_value}) should be set to the maximum allowed value "
|
|
198
|
+
f"({max_value}) for integer dtype '{dtype}'",
|
|
199
|
+
)
|
|
200
|
+
|
|
201
|
+
return values
|
|
202
|
+
|
|
170
203
|
|
|
171
204
|
def check_l0b_encoding(sensor_name: str) -> None:
|
|
172
205
|
"""Check ``l0b_encodings.yml`` file based on the schema defined in the class ``L0BEncodingSchema``.
|
|
@@ -176,7 +209,7 @@ def check_l0b_encoding(sensor_name: str) -> None:
|
|
|
176
209
|
sensor_name : str
|
|
177
210
|
Name of the sensor.
|
|
178
211
|
"""
|
|
179
|
-
data = read_config_file(sensor_name, product="
|
|
212
|
+
data = read_config_file(sensor_name, product="L0B", filename="l0b_encodings.yml")
|
|
180
213
|
|
|
181
214
|
# check that the second level of the dictionary match the schema
|
|
182
215
|
for key, value in data.items():
|
|
@@ -234,7 +267,7 @@ class RawDataFormatSchema(BaseModel):
|
|
|
234
267
|
return None
|
|
235
268
|
|
|
236
269
|
|
|
237
|
-
def
|
|
270
|
+
def check_raw_data_format(sensor_name: str) -> None:
|
|
238
271
|
"""Check ``raw_data_format.yml`` file based on the schema defined in the class ``RawDataFormatSchema``.
|
|
239
272
|
|
|
240
273
|
Parameters
|
|
@@ -253,7 +286,7 @@ def _check_raw_data_format(sensor_name: str) -> None:
|
|
|
253
286
|
)
|
|
254
287
|
|
|
255
288
|
|
|
256
|
-
def
|
|
289
|
+
def check_cf_attributes(sensor_name: str) -> None:
|
|
257
290
|
"""Check that the ``l0b_cf_attrs.yml`` description, long_name and units values are strings.
|
|
258
291
|
|
|
259
292
|
Parameters
|
|
@@ -268,7 +301,7 @@ def _check_cf_attributes(sensor_name: str) -> None:
|
|
|
268
301
|
raise ValueError(f"Wrong value for {key} in {var} for sensor {sensor_name}.")
|
|
269
302
|
|
|
270
303
|
|
|
271
|
-
def
|
|
304
|
+
def check_bin_consistency(sensor_name: str) -> None:
|
|
272
305
|
"""Check bin consistency from config file.
|
|
273
306
|
|
|
274
307
|
Do not check the first and last bin !
|
|
@@ -313,7 +346,7 @@ def _check_bin_consistency(sensor_name: str) -> None:
|
|
|
313
346
|
)
|
|
314
347
|
|
|
315
348
|
|
|
316
|
-
def
|
|
349
|
+
def check_raw_array(sensor_name: str) -> None:
|
|
317
350
|
"""Check raw array consistency from config file.
|
|
318
351
|
|
|
319
352
|
Parameters
|
|
@@ -363,14 +396,14 @@ def check_sensor_configs(sensor_name: str) -> None:
|
|
|
363
396
|
sensor_name : str
|
|
364
397
|
Name of the sensor.
|
|
365
398
|
"""
|
|
366
|
-
|
|
367
|
-
|
|
399
|
+
check_yaml_files_exists(sensor_name)
|
|
400
|
+
check_variable_consistency(sensor_name)
|
|
368
401
|
check_l0b_encoding(sensor_name=sensor_name)
|
|
369
402
|
check_l0a_encoding(sensor_name=sensor_name)
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
403
|
+
check_raw_data_format(sensor_name=sensor_name)
|
|
404
|
+
check_cf_attributes(sensor_name=sensor_name)
|
|
405
|
+
check_bin_consistency(sensor_name=sensor_name)
|
|
406
|
+
check_raw_array(sensor_name=sensor_name)
|
|
374
407
|
|
|
375
408
|
|
|
376
409
|
def check_all_sensors_configs() -> None:
|
|
@@ -15,7 +15,7 @@ reflectivity: "float32"
|
|
|
15
15
|
quality_index: "float32" # 'uint8'
|
|
16
16
|
max_hail_diameter: "float32"
|
|
17
17
|
laser_status: "float32" # 'uint8'
|
|
18
|
-
|
|
18
|
+
static_signal_status: "float32" # 'uint8'
|
|
19
19
|
laser_temperature_analog_status: "float32" # 'uint8'
|
|
20
20
|
laser_temperature_digital_status: "float32" # 'uint8'
|
|
21
21
|
laser_current_analog_status: "float32" # 'uint8'
|
|
@@ -29,7 +29,7 @@ current_heating_house_status: "float32" # 'uint8'
|
|
|
29
29
|
current_heating_heads_status: "float32" # 'uint8'
|
|
30
30
|
current_heating_carriers_status: "float32" # 'uint8'
|
|
31
31
|
control_output_laser_power_status: "float32" # 'uint8'
|
|
32
|
-
|
|
32
|
+
reserved_status: "float32" # 'uint8'
|
|
33
33
|
temperature_interior: "float32" # 'uint16'
|
|
34
34
|
laser_temperature: "float32" # 'uint16'
|
|
35
35
|
laser_current_average: "float32" # 'uint16'
|
|
@@ -66,7 +66,7 @@ laser_status:
|
|
|
66
66
|
description: Status Laser (OK/on:0, off:1)
|
|
67
67
|
long_name: Status laser
|
|
68
68
|
units: ""
|
|
69
|
-
|
|
69
|
+
static_signal_status:
|
|
70
70
|
description: Static signal (OK:0, Error:1)
|
|
71
71
|
long_name: Static signal
|
|
72
72
|
units: ""
|
|
@@ -122,7 +122,7 @@ control_output_laser_power_status:
|
|
|
122
122
|
description: Status Control output laser power (OK:0, warning:1)
|
|
123
123
|
long_name: Status control output laser
|
|
124
124
|
units: ""
|
|
125
|
-
|
|
125
|
+
reserved_status:
|
|
126
126
|
description: Reserve Status (0)
|
|
127
127
|
long_name: Reserve status
|
|
128
128
|
units: ""
|
|
@@ -184,7 +184,7 @@ laser_status:
|
|
|
184
184
|
contiguous: false
|
|
185
185
|
chunksizes: 5000
|
|
186
186
|
_FillValue: 255
|
|
187
|
-
|
|
187
|
+
static_signal_status:
|
|
188
188
|
dtype: uint8
|
|
189
189
|
zlib: true
|
|
190
190
|
complevel: 3
|
|
@@ -310,7 +310,7 @@ control_output_laser_power_status:
|
|
|
310
310
|
contiguous: false
|
|
311
311
|
chunksizes: 5000
|
|
312
312
|
_FillValue: 255
|
|
313
|
-
|
|
313
|
+
reserved_status:
|
|
314
314
|
dtype: uint8
|
|
315
315
|
zlib: true
|
|
316
316
|
complevel: 3
|
|
@@ -213,7 +213,7 @@ laser_status:
|
|
|
213
213
|
- 0
|
|
214
214
|
- 1
|
|
215
215
|
field_number: "22"
|
|
216
|
-
|
|
216
|
+
static_signal_status:
|
|
217
217
|
n_digits: 1
|
|
218
218
|
n_characters: 1
|
|
219
219
|
n_decimals: 1
|
|
@@ -389,7 +389,7 @@ control_output_laser_power_status:
|
|
|
389
389
|
- 0
|
|
390
390
|
- 1
|
|
391
391
|
field_number: "36"
|
|
392
|
-
|
|
392
|
+
reserved_status:
|
|
393
393
|
n_digits: 1
|
|
394
394
|
n_characters: 1
|
|
395
395
|
n_decimals: 1
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
center:
|
|
2
|
+
0: 0.2
|
|
3
|
+
1: 0.45
|
|
4
|
+
2: 0.55
|
|
5
|
+
3: 0.65
|
|
6
|
+
4: 0.75
|
|
7
|
+
5: 0.85
|
|
8
|
+
6: 0.95
|
|
9
|
+
7: 1.05
|
|
10
|
+
8: 1.15
|
|
11
|
+
9: 1.25
|
|
12
|
+
10: 1.35
|
|
13
|
+
11: 1.5
|
|
14
|
+
12: 1.75
|
|
15
|
+
13: 2.08
|
|
16
|
+
14: 2.475
|
|
17
|
+
15: 2.945
|
|
18
|
+
16: 3.5
|
|
19
|
+
17: 4.16
|
|
20
|
+
18: 4.95
|
|
21
|
+
19: 5.89
|
|
22
|
+
20: 6.7
|
|
23
|
+
bounds:
|
|
24
|
+
0:
|
|
25
|
+
- 0.0
|
|
26
|
+
- 0.4
|
|
27
|
+
1:
|
|
28
|
+
- 0.4
|
|
29
|
+
- 0.5
|
|
30
|
+
2:
|
|
31
|
+
- 0.5
|
|
32
|
+
- 0.6
|
|
33
|
+
3:
|
|
34
|
+
- 0.6
|
|
35
|
+
- 0.7
|
|
36
|
+
4:
|
|
37
|
+
- 0.7
|
|
38
|
+
- 0.8
|
|
39
|
+
5:
|
|
40
|
+
- 0.8
|
|
41
|
+
- 0.9
|
|
42
|
+
6:
|
|
43
|
+
- 0.9
|
|
44
|
+
- 1.0
|
|
45
|
+
7:
|
|
46
|
+
- 1.0
|
|
47
|
+
- 1.1
|
|
48
|
+
8:
|
|
49
|
+
- 1.1
|
|
50
|
+
- 1.2
|
|
51
|
+
9:
|
|
52
|
+
- 1.2
|
|
53
|
+
- 1.3
|
|
54
|
+
10:
|
|
55
|
+
- 1.3
|
|
56
|
+
- 1.4
|
|
57
|
+
11:
|
|
58
|
+
- 1.4
|
|
59
|
+
- 1.6
|
|
60
|
+
12:
|
|
61
|
+
- 1.6
|
|
62
|
+
- 1.9
|
|
63
|
+
13:
|
|
64
|
+
- 1.9
|
|
65
|
+
- 2.26
|
|
66
|
+
14:
|
|
67
|
+
- 2.26
|
|
68
|
+
- 2.69
|
|
69
|
+
15:
|
|
70
|
+
- 2.69
|
|
71
|
+
- 3.2
|
|
72
|
+
16:
|
|
73
|
+
- 3.2
|
|
74
|
+
- 3.8
|
|
75
|
+
17:
|
|
76
|
+
- 3.8
|
|
77
|
+
- 4.52
|
|
78
|
+
18:
|
|
79
|
+
- 4.52
|
|
80
|
+
- 5.38
|
|
81
|
+
19:
|
|
82
|
+
- 5.38
|
|
83
|
+
- 6.4
|
|
84
|
+
20:
|
|
85
|
+
- 6.4
|
|
86
|
+
- 7.0
|
|
87
|
+
width:
|
|
88
|
+
0: 0.4
|
|
89
|
+
1: 0.1
|
|
90
|
+
2: 0.1
|
|
91
|
+
3: 0.1
|
|
92
|
+
4: 0.1
|
|
93
|
+
5: 0.1
|
|
94
|
+
6: 0.1
|
|
95
|
+
7: 0.1
|
|
96
|
+
8: 0.1
|
|
97
|
+
9: 0.1
|
|
98
|
+
10: 0.1
|
|
99
|
+
11: 0.2
|
|
100
|
+
12: 0.3
|
|
101
|
+
13: 0.36
|
|
102
|
+
14: 0.43
|
|
103
|
+
15: 0.51
|
|
104
|
+
16: 0.6
|
|
105
|
+
17: 0.72
|
|
106
|
+
18: 0.86
|
|
107
|
+
19: 1.02
|
|
108
|
+
20: 0.6
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
center:
|
|
2
|
+
0: 0.55
|
|
3
|
+
1: 0.95
|
|
4
|
+
2: 1.41
|
|
5
|
+
3: 1.84
|
|
6
|
+
4: 2.465
|
|
7
|
+
5: 3.27
|
|
8
|
+
6: 4.01
|
|
9
|
+
7: 4.625
|
|
10
|
+
8: 5.275
|
|
11
|
+
9: 6.325
|
|
12
|
+
10: 7.63
|
|
13
|
+
11: 9.51
|
|
14
|
+
12: 11.745
|
|
15
|
+
13: 14.14
|
|
16
|
+
14: 17.775
|
|
17
|
+
15: 22.5
|
|
18
|
+
bounds:
|
|
19
|
+
0:
|
|
20
|
+
- 0.40
|
|
21
|
+
- 0.70
|
|
22
|
+
1:
|
|
23
|
+
- 0.70
|
|
24
|
+
- 1.20
|
|
25
|
+
2:
|
|
26
|
+
- 1.20
|
|
27
|
+
- 1.62
|
|
28
|
+
3:
|
|
29
|
+
- 1.62
|
|
30
|
+
- 2.06
|
|
31
|
+
4:
|
|
32
|
+
- 2.06
|
|
33
|
+
- 2.87
|
|
34
|
+
5:
|
|
35
|
+
- 2.87
|
|
36
|
+
- 3.67
|
|
37
|
+
6:
|
|
38
|
+
- 3.67
|
|
39
|
+
- 4.35
|
|
40
|
+
7:
|
|
41
|
+
- 4.35
|
|
42
|
+
- 4.90
|
|
43
|
+
8:
|
|
44
|
+
- 4.90
|
|
45
|
+
- 5.65
|
|
46
|
+
9:
|
|
47
|
+
- 5.65
|
|
48
|
+
- 7.00
|
|
49
|
+
10:
|
|
50
|
+
- 7.00
|
|
51
|
+
- 8.26
|
|
52
|
+
11:
|
|
53
|
+
- 8.26
|
|
54
|
+
- 10.76
|
|
55
|
+
12:
|
|
56
|
+
- 10.76
|
|
57
|
+
- 12.73
|
|
58
|
+
13:
|
|
59
|
+
- 12.73
|
|
60
|
+
- 15.55
|
|
61
|
+
14:
|
|
62
|
+
- 15.55
|
|
63
|
+
- 20.00
|
|
64
|
+
15:
|
|
65
|
+
- 20.00
|
|
66
|
+
- 25.00
|
|
67
|
+
width:
|
|
68
|
+
0: 0.3
|
|
69
|
+
1: 0.5
|
|
70
|
+
2: 0.42
|
|
71
|
+
3: 0.44
|
|
72
|
+
4: 0.81
|
|
73
|
+
5: 0.8
|
|
74
|
+
6: 0.68
|
|
75
|
+
7: 0.55
|
|
76
|
+
8: 0.75
|
|
77
|
+
9: 1.35
|
|
78
|
+
10: 1.26
|
|
79
|
+
11: 2.5
|
|
80
|
+
12: 1.97
|
|
81
|
+
13: 2.82
|
|
82
|
+
14: 4.45
|
|
83
|
+
15: 5.0
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
precipitation_rate: "float32"
|
|
2
|
+
precipitation_accumulated: "float32"
|
|
3
|
+
weather_code_synop_4680: "float32" # 'uint16'
|
|
4
|
+
weather_code_metar_4678: "str"
|
|
5
|
+
past_weather1: "str"
|
|
6
|
+
past_weather2: "str"
|
|
7
|
+
mor_visibility_5min: "float32"
|
|
8
|
+
mor_visibility: "float32" # 'uint16'
|
|
9
|
+
number_particles: "float32" # 'uint32'
|
|
10
|
+
sensor_temperature: "float32" # 'uint16'
|
|
11
|
+
obstruction_status: "str"
|
|
12
|
+
total_extinction_coefficient: "float32"
|
|
13
|
+
transmissometer_extinction_coefficient: "float32"
|
|
14
|
+
back_scatter_extinction_coefficient: "float32"
|
|
15
|
+
ambient_light_sensor_signal: "float32"
|
|
16
|
+
sensor_status: "str" #
|
|
17
|
+
ambient_light_sensor_signal_status: "str"
|
|
18
|
+
raw_drop_number: "str"
|