CCRES code to convert data
Project description
CCRES Disdrometer processing
CCRES disdrometer processing
This code provides tools to process disdrometer data from ACTRIS-CCRES/ACTRIS-cloudnet to monitor the calibration of doppler cloud radars (13, 35, 94 Ghz).
Installation
pip install numpy wheels
pip install ccres_disdrometer_processing
[!WARNING] The code is not compatible with python 3.12 because of pytmatrix.
Usage
This code is only compatible with data of Doppler Cloud Radar (DCR), Disdrometer (DD) and weather station using cloudnet netCDF format.
Configuration file
A configuration file is needed to use the code. The configuration use toml
format and several examples are available in this project in the conf_stations
folder.
Here is an example of a configuration file:
title = "Configuration for the computation of the dcrcc monitoring (preprocessing and processing)"
[location]
SITE = "Jülich"
STATION = "JOYCE" # useful for plots
[methods]
FALL_SPEED_METHOD = "GunAndKinzer"
AXIS_RATIO_METHOD = "BeardChuang_PolynomialFit"
COMPUTE_MIE_METHOD = "pytmatrix"
REFRACTION_INDEX = [2.99645,1.54866] # complex index
RADAR_FREQUENCIES = [10.0e9, 24.0e9, 35.0e9, 94.0e9] # Hz
MAX_ALTITUDE_RADAR_DATA = 2500
[instrument_parameters]
DD_SAMPLING_AREA = 0.0054 # m^2 ; Parsivel2 sampling surface
DCR_DZ_RANGE = 150 # m ; height at which to compute Delta Z ; fill with the real value
RAIN_GAUGE_SAMPLING = 0 # mm ; default value ; no weather available at Juelich but this value is used by the code only if weather is available
DD_ORIENTATION = 0 # degree, from North ; fill with the real value
[plot_parameters]
DCR_PLOTTED_RANGES = [150, 200, 300] # fill with the good values
[thresholds]
MAX_RR = 3 # mm/h
MIN_RAINFALL_AMOUNT = 3 # mm/episode
MAX_MEAN_WS = 7 # m/s ; default value ; no weather available at Juelich but this value is used by the code only if weather is available
MAX_WS = 10 # m/s ; default value ; no weather available at Juelich but this value is used by the code only if weather is available
MIN_TEMP = 2 # °C ; default value ; no weather available at Juelich but this value is used by the code only if weather is available
MIN_HUR = 0 # min relative humidity : avoid cases with evaporation ; default value ; no weather available at Juelich but this value is used by the code only if weather is available
MAX_HUR = 100 # max relative humidity : avoid fog, ... ; default value ; no weather available at Juelich but this value is used by the code only if weather is available
DD_ANGLE = 45 # degree ; keep wind data at DD_ORIENTATION[pi] +- DD_ANGLE
MAX_INTERVAL = 60 # mn ; max interval between two tipping of the pluviometer, to "close" an event
MIN_DURATION = 180 # mn ; min duration of an event
PR_SAMPLING = 15 # mn ; ex CHUNK_THICKNESS ; period of averaging for AMS pr ; default value ; no weather available at Juelich but this value is used by the code only if weather is available
DD_RG_MAX_PR_ACC_RATIO = 0.3 # ex ACCUMULATION_RELATIVE_ERROR ; max relative error in rain accumulation measurement, DD vs Rain gauge ; default value ; no weather available at Juelich but this value is used by the code only if weather is available
DD_FALLSPEED_RATIO = 0.3 # ex FALLSPEED_RELATIVE_ERROR ; relative difference between "theoretical" and DD fall speed
[nc_meta]
title = ""
summary = ""
id = ""
naming_authority = ""
comment = ""
creator_name = "ACTRIS-CCRES"
creator_email = "ccres_contact@listes.ipsl.fr"
creator_url = "https://ccres.aeris-data.fr"
creator_type = "institution"
creator_institution = ""
institution = ""
project = ""
publisher_name = ""
publisher_email = ""
publisher_url = ""
publisher_type = ""
publisher_institution = ""
contributor_name = ""
contributor_role = ""
cdm_data_type = ""
metadata_link = ""
Preprocessing
This steps is used to preprocess the DCR and DD data.
ccres_disdrometer_processing preprocess \
--disdro-file path/to/disdro.nc \
--radar-file path/to/radar.nc \
--ws-file path/to/weather_station.nc \
--config-file path/to/config.toml \
path/to/preprocess_file.nc
Using the created netCDF, you can create vizualisation of the data.
ccres_disdrometer_processing preprocess-ql \
--config-file path/to/config.toml \
path/to/preprocess_file.nc \
path/to/weather_overview_ql.png \
path/to/zh_overview_ql.png
Processing
The processing step allow to identify rain events compatible with the checking of DCR calibration. To get the best results, this step needs the preprocess files of the day before and the day after the day to process.
ccres_disdrometer_processing process \
--config-file path/to/config.toml \
--yesterday path/to/yesterday_preprocess_file.nc \
--today path/to/today_preprocess_file.nc \
--tomorrow path/to/tomorrow_preprocess_file.nc \
path/to/process_file.nc
Using the created netCDF, you can create vizualisation of the data. As we don't know how many rain events are detected you need to provide prefix name of the output quicklook files.
ccres_disdrometer_processing process-ql \
--config-file path/to/config.toml \
--preprocess-yesterday path/to/yesterday_preprocess_file.nc \
--preprocess-today path/to/today_preprocess_file.nc \
--preprocess-tomorrow path/to/tomorrow_preprocess_file.nc \
--prefix-output-ql-summary path/to/summary_ql \
--prefix-output-ql-detailled path/to/detailled_ql \
path/to/process_file.nc
If at list one event is found in the process file, the script will created the files:
path/to/summary_ql_00.png
path/to/detailled_ql_00.png
License
- License: GNU Affero General Public License v3.0
- Documentation: https://ccres-disdrometer-processing.readthedocs.io.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ccres_disdrometer_processing-0.2.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | c24569ab3eb370cf1f989ba76c981fe26925f06cc2bf6657554f77fd12050d2d |
|
MD5 | 69f577bf700c15adb95e090c62e9e71a |
|
BLAKE2b-256 | 6bddb06803c028972f21b7a55d1897cedbb3ec42e9186e649bab9d3c0d26f6ce |
Hashes for ccres_disdrometer_processing-0.2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 15ed12902e48623ae8c5bbc414d121ff7fba467c8a16fced34ada8c34217a155 |
|
MD5 | e0b3593bf0918a5be602e7650a6aec62 |
|
BLAKE2b-256 | 3070e1b7106a733b004a941ea04966d9a8d5182f5c52e9544b1fd945a5410b09 |