List of pyrad input data descriptors#

General#

CF1#

description

Reads polar radar data in the CF1 NetCDF format. See the data descriptor ODIM for usage and example as it works exactly in the same way.

usage

CF1:datatype,dataset See the data descriptor ODIM for usage info as it works exactly in the same way.

example
Zg STRUCT 3
        type STRING RAW
        datatype STRING CF1:Zg,D{}-F{%Y%m%d_%H%M}
        products STRUCT 1
                BSCOPE STRUCT 5
                        type STRING BSCOPE_IMAGE
                        voltype STRING Zg
                        ray_dim STRING time
                        xaxis_rng INT 0
                        anglenr INT 0

CFRADIAL#

description

Reads polar radar data in the CFRadial-1 NetCDF format. See the data descriptor ODIM for usage and example as it works exactly in the same way.

usage

CFRADIAL:datatype,dataset See the data descriptor ODIM for usage info as it works exactly in the same way.

CFRADIAL2#

description

Reads polar radar data in the CFRadial-2 NetCDF format. See the data descriptor ODIM for usage and example as it works exactly in the same way.

usage

CFRADIAL2:datatype,dataset See the data descriptor ODIM for usage info as it works exactly in the same way.

example
wind_raw STRUCT 4
        type STRING RAW
        datatype STRARR 1
                CFRADIAL2:wind_vel_rad,D{%Y-%m-%d}-F{%Y-%m-%d_%H-%M-%S}
        products STRUCT 1
                SAVESTATE STRUCT 2
                        type STRING SAVESTATE
                        voltype STRING wind_vel_rad
        MAKE_GLOBAL INT 1

CFRADIALPYRAD#

description

Reads pyrad outputs in the netCDF CFRadial format previously generated with the SAVEVOL or SAVEALL product types. This data descriptor can be used to reuse data generated in pyrad workflow A within pyrad workflow B, in order to divide complex processing tasks in multiple product configuration files. This data descriptor relies on the keywords loadbasepath and loadname in the main configuration file. loadbasepath is used to specify the root directory from where to read the pyrad outputs (usually this corresponds to the saveimgbasepath key of pyrad workflow A) and loadname to the output name of the pyrad workflow from where to reuse the outputs (this corresponds to the main name key of pyrad workflow A).

usage

CFRADIALPYRAD:datatype,dataset,product

where
  • datatype is a pyrad variable name as listed here

  • dataset is the name of the pyrad dataset for which the SAVEVOL or SAVEALL product has been generated

  • product is the name of the SAVEVOL or SAVEALL product

example

CFRADIALPYRAD:KDPc,KDPc_Vulpiani,SAVEVOL_KDPc will read the corrected KDP generated by the product SAVEVOL_KDPc within the dataset KDPc_Vulpiani. This will in fact read the file loadbasepath/loadname/YYYY-mm-dd/dataset/product/YYYYmmddHHMMSS_savevol_dataset_datatype.nc. For example in pyrad workflow A, this dataset could look like this

KDPc_Vulpiani STRUCT 9
type STRING PHIDP_KDP_VULPIANI
datatype STRARR 1
    PROC:PhiDPc
rwind FLOAT 1000.
n_iter INT 6
interp INT 0
parallel INT 0
get_phidp INT 0
MAKE_GLOBAL INT 1
products STRUCT 3
  EL001 STRUCT 3
     type  STRING PPI_IMAGE
     anglenr INT 2
     voltype STRING KDPc
  AZ093 STRUCT 4
     type  STRING PSEUDORHI_IMAGE
     angle FLOAT 93.
     AziTol FLOAT 1.
     voltype STRING KDPc
  SAVEVOL_KDPc STRUCT 2
        type   STRING SAVEVOL
        voltype STRING KDPc

CSV#

description

Reads CSV outputs previously generated by pyrad. See the data descriptor PYRADGRID for usage and example as it works exactly in the same way.

DEM#

description

Reads visibility data saved in Rainbow file format. For this to work you will need to define the variable dempath in the main pyrad configuration file.

usage

DEM:VIS

example
DX50_PLD_coloc_gates STRUCT 13
        type STRING COLOCATED_GATES
        datatype STRARR 4
                RADAR001:dBZ
                RADAR001:DEM:VIS
                RADAR002:RAD4ALP:dBZ
                RADAR002:RAD4ALPDEM:VIS
        h_tol FLOAT 100.
        latlon_tol FLOAT 0.005  # approx. 500 m tolerance
        vol_d_tol FLOAT 100.
        vismin FLOAT 99.

GAMIC#

description

Reads polar radar data in GAMIC proprietary radar format. See the data descriptor ODIM for usage and example as it works exactly in the same way.

GECSX#

description

Reads outputs of the GECSX visibility algorithms generated by pyrad

usage

GECSX:datatype,dataset,product

where
  • datatype is a pyrad variable name as listed here

  • dataset is the name of the GECSX pyrad dataset for which the SAVEVOL or SAVEALL product has been generated

  • product is the name of the SAVEVOL or SAVEALL product

Note that this works exactly as the CFRADIALPYRAD data descriptor, the only exception is that it does completely ignore any reference to time within the retrieved files as the GECSX outputs are supposed to be static (dates within directories and time within filenames are ignored). Moreover, it relies on the keys gecsxbasepath and gecsxname in the main config file instead as loadbasepath and loadname.

example

GECSX:visibility_polar,gecsx_50DX,visibility will read the visibility_polar field generated by the product visibility within the dataset gecsx_50DX. This will in fact read the file gecsxbasepath/gecsxname/dataset/product/savevol_dataset_datatype.nc (notice the absence of time reference). For example in the GECSX workflow used to generate this file, the gecsx_50DX could look like this.

gecsx_DX50 STRUCT 13
type STRING GECSX
datatype STRING dBZ
demfile STRING swisstopo_DHM25_50m.rst
demproj STRING 21781 # EPSG code, a OGC WKT or Proj4 string, required if projection is not available in demfile metadata
az_discretization    FLOAT 5   # numerical step in azimuth in Cartesian visibility estimation [degree]
range_discretization FLOAT 1000   # numerical step in range in Cartesian visibility estimation [m]
do_range_weighting INT 1
raster_oversampling INT 0
verbose INT 1
clip INT 1
sigma0_method STRING Gabella
antenna_elevations FLTARR 2 # You can choose here to use only a subset of all available antenna elevations from the radar file (to save time and because you are likely not interested in high elevations, where ivsibility should be good anyway)
 1.
 1.8
products STRUCT 3
    visibility STRUCT 2
        voltype STRING visibility_polar
        type STRING SAVEVOL
    NC_POL STRUCT 1
        type STRING SAVEALL_VOL
    NC_CART STRUCT 1
        type STRING SAVEALL_GRID

NETCDFSPECTRA#

description

Reads pyrad netCDF spectra outputs previously generated with the SAVEVOL or SAVEALL product types (when the dataset is of spectra type and file_type h5 is specified). See the data descriptor PYRADGRID for usage and example as it works exactly in the same way.

NEXRADII#

description

Reads polar radar data from the NEXRAD radar network. See the data descriptor ODIM for usage and example as it works exactly in the same way.

ODIM#

description

Reads polar radar data in the ODIM HDF5 format.

usage

ODIM:datatype,dataset

where
  • datatype is a pyrad variable name as listed here

  • dataset is an optional descriptor used to describe where the data is stored, it has the format “D{time_descr_folder}-F{time_descr_file}”, where time_descr_folder is a datetime descriptor used to name the parent directory of the radar files, and time_descr_file is a datetime descriptor used to name the radar files. time_descr_folder can be left empty if wanted.

The ODIM reader and all similar readers (e.g. CFRADIAL) assume that the names within the files are the standard names. If this is not the case, you can use the structure DataTypeIDInFiles in the loc files to provide explicitely the mapping between the pyrad variable names and the variable names within your files.

example

ODIM:ZDR,D{%Y%m%d}-F{%Y%m%d%H%M00} will attempt to read the differential reflectivity from the h5 file located under datapath/ScanList/day_dir/filename where datapath and ScanList are as defined in the main and loc configuration files and day_dir contains the datetime format string %Y%m%d and filename contains the datetime format %Y%m%d%H%M00.

ODIM:dBZ,D{}-F{%Y%m%d%H%} will attempt to read the horizontal reflectivity from the h5 file located under datapath/ScanList/filename where filename contains the datetime format %Y%m%d%H%M00 (notice the omission of the day_dir folder which is expected not to be present.

An example of use is the following dataset:

dBuZ STRUCT 3
        type STRING RAW
        datatype STRING ODIM:dBuZ,D{%Y%m%d????00}-F{%Y%m%d%H%M00}
        products STRUCT 1
                PPI_EL00 STRUCT 3
                        type STRING PPI_IMAGE
                        voltype STRING dBuZ
                        anglenr INT 0

ODIMBIRDS#

description

Reads VOL2BIRD data in the ODIM HDF5 format. See the data descriptor ODIM for usage and example as it works exactly in the same way.

ODIMGRID#

description

Reads Cartesian gridded data in the ODIM HDF5 format. See the data descriptor ODIM for usage and example as it works exactly in the same way.

ODIMPYRAD#

description

Reads pyrad outputs in the HDF5 ODIM format previously generated with the SAVEVOL or SAVEALL product types (when file_type h5 is specified). See the data descriptor CFRADIALPYRAD for usage and example as it works exactly in the same way.

ODIMPYRADGRID#

description

Reads pyrad HDF5 ODIM grid outputs previously generated with the SAVEVOL or SAVEALL product types (when the dataset is of grid type and file_type h5 is specified). See the data descriptor PYRADGRID for usage and example as it works exactly in the same way.

PROC#

description

Loads a datatype that has been generated during a previous pyrad processing level (within the same configuration file)

usage

PROC:datatype where datatype is a pyrad variable name as listed here

example

PROC:dBZc will read a corrected reflectivity field generated during a previous pyrad processing step (for example with the echo_filter dataset)

PSR#

description

Reads Rainbow PSR data file (spectral) to extract range gate information(Noise and transmitted power)

usage

PSR:datatype where datatype is a pyrad variable name as listed here.

example
noise_v STRUCT 10
        type     STRING SUNSCAN
        datatype STRING PSR:NdBmv
        sun_hit_method STRING PSR
        elmin FLOAT 5.0
        n_noise_bins INT 8
        noise_threshold FLOAT 1.5
        max_fit_stddev FLOAT 0.8
        do_second_noise_est STRING Yes
        n_indfar_bins INT 10
        products STRUCT 2
                SUNLOG STRUCT 1
                        type STRING WRITE_SUNSCAN
                AZ_EL STRUCT 3
                        type  STRING PLOT_SUNSCAN
                        vmin FLOAT -108.
                        vmax FLOAT -102.

PYRADGRID#

description

Reads pyrad netCDF grid outputs previously generated with the SAVEVOL or SAVEALL product types (when the dataset is of grid type). See the data descriptor PYRADGRID for usage and example as it works exactly in the same way.

RAINBOW#

description

Loads a field from a Rainbow file (Leonardo/Selex proprietary file format)

usage

RAINBOW:datatype where datatype is a pyrad variable name as listed here

example

RAINBOW:dBZ will read the reflectivity from the corresponding Rainbow file

MeteoSwiss specific#

ICON#

description

Reads data from the ICON model, previously ingested by pyrad and converted to polar coordinates with the ICON_LOOKUP dataset. For this to work you will need to define the variable iconpath in the main pyrad configuration file.

usage

ICON:datatype where datatype is a pyrad variable name as listed here.

example

ICON:TEMP will use the ICON temperature field as generated by the ICON_LOOKUP dataset. This can be used for example in the HYDROCLASS dataset.

hydroclass STRUCT 6
            type STRING HYDROCLASS
            datatype STRARR 5
                    PROC:dBZc
                    PROC:ZDRc
                    PROC:RhoHVc
                    PROC:KDPc
                    ICON:TEMP
            HYDRO_METHOD STRING SEMISUPERVISED
            RADARCENTROIDS STRING DX50

CFRADIALICON#

description

Used to read ICON data interpolated to radar coordinates in a CFRadial file format.

usage

CFRADIALICON:datatype,dataset where

  • datatype is a pyrad variable name as listed here

  • dataset is the name of the pyrad dataset for which the SAVEVOL or SAVEALL product which contains the ICON data has been generated

example
hydroclass STRUCT 6
        type STRING HYDROCLASS
        datatype STRARR 5
                PROC:dBZc
                PROC:ZDRc
                PROC:RhoHVc
                PROC:KDPc
                CFRADIALICON:TEMP,mals_mei21_vol
        HYDRO_METHOD STRING SEMISUPERVISED
        RADARCENTROIDS STRING DX50
        MAKE_GLOBAL INT 1

RAD4ALP#

description

Reads a METRANET format file used for the operational MeteoSwiss polar radar data.

usage

RAD4ALP:datatype where datatype is a pyrad variable name as listed here.

example
RhoHV STRUCT 3
        type STRING RHOHV_CORRECTION
        datatype STRARR 5
                RAD4ALP:uRhoHV
                RAD4ALP:ZDR
                RAD4ALP:Nh
                RAD4ALP:Nv
                PROC:SNRh
MAKE_GLOBAL INT 1

RAD4ALPDEM#

description

Used to read visibility data saved in a binary format used by operational MeteoSwiss radars

usage

RAD4ALPDEM:VIS

example
DX50_PLA_coloc_gates STRUCT 9
        type STRING COLOCATED_GATES
        datatype STRARR 4
                RADAR001:CFRADIAL:dBZc,dBZ_avg,SAVEVOL
                RADAR001:DEM:VIS
                RADAR002:CFRADIAL:dBZc,dBZ_avg,SAVEVOL
                RADAR002:RAD4ALPDEM:VIS
        h_tol FLOAT 100.
        latlon_tol FLOAT 0.005  # approx. 500 m tolerance
        vol_d_tol FLOAT 100.
        vismin FLOAT 99.
        hmax FLOAT 10000.
        elmax FLOAT 20.

RAD4ALPBIN#

description

Used to read data from operational MeteoSwiss Cartesian products stored as binary files (e.g. ).

usage

RAD4ALPBIN:datatype where datatype is a pyrad variable name as listed here.

example
dACC STRUCT 3
        type STRING RAW_GRID
        datatype STRING RAD4ALPBIN:dACC
        products STRUCT 1
                SURFACE STRUCT 3
                        type  STRING SURFACE_IMAGE
                        voltype STRING Raccu
                        level INT 0

RAD4ALPDOPPLER#

description

Used to read the MeteoSwiss operational dealiased Doppler velocity

usage

RAD4ALPDOPPLER:dealV

example
dealV STRUCT 3
        type STRING RAW
        datatype STRARR 1
                RAD4ALPDOPPLER:dealV
        MAKE_GLOBAL INT 1

RAD4ALPGIF#

description

Used to read data from operational MeteoSwiss Cartesian products stored as gif files (e.g. CPC).

usage

RAD4ALPGIF:datatype where datatype is a pyrad variable name as listed here. From this list of variables you will typically use the CPC variables: CPC* (CPC0005, CPC0060, …)

example
CPC0060 STRUCT 3
        type STRING RAW_GRID
        datatype STRING RAD4ALPGIF:CPC0060
        products STRUCT 1
                SURFACE STRUCT 3
                        type  STRING SURFACE_IMAGE
                        voltype STRING Raccu
                        level INT 0

RAD4ALPGRID#

description

Used to read data from operational MeteoSwiss Cartesian products stored in METRANET format.

usage

RAD4ALPGRID:datatype where datatype is a pyrad variable name as listed here.

example
EZC15 STRUCT 3
        type STRING RAW_GRID
        datatype STRING RAD4ALPGRID:EZC15
        products STRUCT 2
                SURFACE STRUCT 4
                        type  STRING SURFACE_IMAGE
                        voltype STRING ETOP15
                        vmin FLOAT 2
                        vmax FLOAT 8
                HISTOGRAM STRUCT 3
                        type STRING HISTOGRAM
                        voltype STRING ETOP15
                        write_data INT 1

RAD4ALPHYDRO#

description

Used to read the MeteoSwiss operational hydrometeor classification.

usage

RAD4ALPHYDRO:hydro

example
rainrate STRUCT 6
        type STRING RAINRATE
        datatype STRARR 3
                PROC:dBZc
                PROC:Ah
                RAD4ALPHYDRO:hydro
        RR_METHOD STRING hydro
        MAKE_GLOBAL INT 1

RAD4ALPIQ#

description

Used to read raw IQ data from the Swiss operational rad4alp network.

usage

RAD4ALPIQ:datatype where datatype is a pyrad variable name as listed here.

example
dBZ STRUCT 4
        type STRING REFLECTIVITY_IQ
        datatype STRARR 2
                RAD4ALPIQ:IQhhADU
                RAD4ALPIQ:IQNADUh
        subtract_noise INT 1
        products STRUCT 2
                ELN00_2 STRUCT 3
                        type  STRING PPI_IMAGE
                        anglenr INT 0
                        voltype STRING dBZ
                SAVEVOL STRUCT 2
                        type STRING SAVEVOL
                        voltype STRING dBZ

SATGRID#

description

Used to read CF Netcdf used for the MeteoSat satellite data in the CCS4 (Swiss Radar composite) grid.

usage

SATGRID:datatype where datatype is a pyrad variable name as listed here.

MeteoFrance specific#

MFCFRADIAL#

Warning

MFCFRADIAL is deprecated since pyrad 2.0.0, please use CFRADIAL with path_convention=ODIM and specify the struct DataTypeIDInFiles in the loc file instead.

description

Used to read radar data from MeteoFrance written in CFRadial

usage

MFCFRADIAL:datatype,dataset See the data descriptor ODIM for usage info as it works exactly in the same way.

MFBIN#

description

Used to read data from some MeteoFrance products stored as binary files

usage

MFBIN:datatype,dataset See the data descriptor ODIM for usage info as it works exactly in the same way.

example
dBZ STRUCT 3
        type STRING RAW_GRID
        datatype STRING MFBIN:dBZ,D{%Y/%m/%d}-F{%Y%m%d%H%M%S}
        products STRUCT 1
                SURFACE_RAW STRUCT 3
                        type STRING SURFACE_RAW
                        voltype STRING dBZ
                        anglenr INT 0

MFCF#

description

Used to read data from some MeteoFrance products stored as netCDF CF files

usage

MFCF:datatype,dataset See the data descriptor ODIM for usage info as it works exactly in the same way.

example
RR STRUCT 3

type STRING RAW_GRID datatype STRING MFCF:RR,D{%Y/%m/%d}-F{%Y%m%d%H%M} products STRUCT 1

HISTOGRAM STRUCT 4

type STRING HISTOGRAM voltype STRING RR binwidth_equal INT 1 write_data INT 1

MFDAT#

description

Used to read data from some MeteoFrance products stored as DAT (text) files

usage

MFDAT:datatype,dataset See the data descriptor ODIM for usage info as it works exactly in the same way.

example
RR STRUCT 3
        type STRING RAW_GRID
        datatype STRING MFDAT:RR,D{}-F{%Y%m%d%H%M}
        products STRUCT 1
                HISTOGRAM STRUCT 4
                        type STRING HISTOGRAM
                        voltype STRING RR
                        binwidth_equal INT 1
                        write_data INT 1

MFGRIB#

description

Used to read data from some MeteoFrance products stored as GRIB files.

usage

MFGRIB:datatype,dataset

See the data descriptor ODIM for usage info as it works exactly in the same way.

example
HYDRE STRUCT 3
        type STRING RAW_GRID
        datatype STRING MFGRIB:prec_type,D{%Y/%m/%d}-F{%Y%m%d_%H%M}
        products STRUCT 1
                HISTOGRAM STRUCT 4
                        type STRING HISTOGRAM
                        voltype STRING prec_type
                        binwidth_equal INT 1
                        write_data INT 1

MFPNG#

description

Used to read data from some MeteoFrance products stored as png files.

usage

MFPNG:datatype,dataset See the data descriptor ODIM for usage info as it works exactly in the same way.

example
HAIL STRUCT 3
        type STRING RAW_GRID
        datatype STRING MFPNG:prec_type,D{%Y/%m/%d}-F{%Y%m%d}
        products STRUCT 1
                HISTOGRAM STRUCT 4
                        type STRING HISTOGRAM
                        voltype STRING prec_type
                        binwidth_equal INT 1
                        write_data INT 1