Skip to content

Move frequency variable into radar_calibration subgroup? #6

Description

@marack

We currently have a frequency variable defined at the global level. To support the rare case that multiple frequencies are used this variable is defined as a 1D array, which means we are also forced to have a dedicated frequency dimension.

For the 99% of users having frequency be an array is an annoying detail to trip over. Since this variable is not linked to anything else, we also provide no way for users to determine what data/metadata is associated with each frequency.

I would like to propose moving frequency from the global level into the radar_calibration subgroup. This has the advantage of no longer requiring a dedicated dimension to support a single variable. It also unambiguously associates the other calibration parameters with a particular frequency when multiple are used.

For dual-wavelength radars where the same geometry is scanned using two frequencies simultaneously the suggested approach would be to store the data from each wavelength in a separate sweep. The geometry of the two sweeps would be identical. Something like:

group: sweep_0.5_wl1:
   dimensions:
    time = 360;
    range = 512;
  variables:
    double time(time);
    double range(range);
    calib_index(time);       # all values set to 0
    byte DBZH(time, range);  # reflectivity from frequency 1
group: sweep_0.5_wl2:
   dimensions:
    time = 360;
    range = 512;
  variables:
    double time(time);       # exact same values as the wl1 sweep
    double range(range);     # exact same values as the wl2 sweep
    calib_index(time);       # all values set to 1
    byte DBZH(time, range);  # reflectivity from frequency 2
group: radar_calibration
  dimensions:
    calib = 2;
  variables:
    float frequency(calib);  # lists the frequencies

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions