EMBRAPA#

Instrumentation: Micro Rain Radar#

The suite of micro-rain radar measurements available to the TCO group includes an MRR operated during the aerosols, clouds, convection experiment (ACONVEX) project near Manaus, Brasil.

The Manaus-Embrapa site is located at \(2.89^{\circ} \mathrm{S}, \, 59.96^{\circ} \mathrm{W}\) and its altitude is \(100 \, \mathrm{m}\).

The MRRs are upward looking \(24 \, \mathrm{GHz}\) micro-rain radars which detect fall velocity and rain rate of hydrometeors.

All data have a temporal resolution of \(1 \, \mathrm{min}\), and the height ranges sampled are documented below. The MRRs resolve the height dimension with 31 distinct levels.

Data Availability#

Datasets are available in .zarr format in the catalog. The three height range configurations for the MRR are as follows, and datasets are named according to these conventions:

  • 1: [100, 3100]

  • 2: [200, 6200]

  • 3: [35, 1085]

Note

There are very few days with configuration 3, so we currently do not provide this data in the catalog, although the package is capable of reading data with this height range.

The table below summarizes the available MRR Level 1 datasets:

Site

Key

Start

Stop

Range

BCO

BCO.mrr

2015-01-16

present

[100, 3100]

CIMH

CIMH.mrr

2009-12-19

2025-06-29

[100, 3100]

EMBRAPA

EMBRAPA.mrr

2012-06-08

2016-02-29

[200, 6400]

Sample Plots#

Here we plot rain rate alongside MDQ (data quality of spectra in percent of spectra per time) for a single day during the campaign.

Hide code cell content

import intake
import numpy as np
import matplotlib.pyplot as plt
import xarray as xr
import matplotlib.colors as mcolors
import matplotlib.dates as mdates

def plot_rr_with_mdq(ds):
    """Plot rain rate alongside MDQ (spectrum data quality percent)."""
    time = ds.time.values
    height = ds.range.values
    RR = ds.RR.values
    MDQ = ds.MDQ.values
    title = ds.title

    fig = plt.figure(figsize=(12, 6), constrained_layout=True)
    gs = fig.add_gridspec(
        2, 2, 
        width_ratios=[20, 1], 
        height_ratios=[12, 1], 
        hspace=0.05, wspace=0.05
    )

    ax_main = fig.add_subplot(gs[0, 0])
    ax_mdq  = fig.add_subplot(gs[1, 0], sharex=ax_main)
    cax_rr  = fig.add_subplot(gs[0, 1])
    cax_mdq = fig.add_subplot(gs[1, 1])

    mesh = ax_main.pcolormesh(time, height, RR.T, shading="auto", cmap="PuBu")
    cbar = fig.colorbar(mesh, cax=cax_rr)
    cbar.set_label("rain rate (mm h-1)")

    ax_main.set_ylabel("height above sensor (m)")
    ax_main.set_title(f"{title} - rain rate")

    cmap = mcolors.LinearSegmentedColormap.from_list(
        "quality", ["red", "yellow", "green"]
    )
    norm = mcolors.Normalize(vmin=0, vmax=100)

    ax_mdq.imshow(
        MDQ[np.newaxis, :],
        aspect="auto",
        cmap=cmap,
        norm=norm,
        extent=[mdates.date2num(time[0]), mdates.date2num(time[-1]), 0, 1]
    )

    ax_mdq.set_yticks([])
    ax_mdq.set_xlabel("time")
    ax_mdq.xaxis.set_major_formatter(mdates.DateFormatter("%H:%M"))

    cbar_mdq = fig.colorbar(
        plt.cm.ScalarMappable(norm=norm, cmap=cmap),
        cax=cax_mdq
    )
    cbar_mdq.set_label("data qual (%)", loc="center")

    plt.show()
# open catalog
cat = intake.open_catalog("https://tcodata.mpimet.mpg.de/catalog.yaml")

# select dataset
mrr = cat.EMBRAPA.mrr.to_dask()

embrapa = slice(np.datetime64("2015-04-16"), np.datetime64("2015-04-17"))
plot_rr_with_mdq(mrr.sel(time=embrapa))
/builds/tco/bco/docs/.venv/lib/python3.12/site-packages/intake_xarray/base.py:21: FutureWarning: The return type of `Dataset.dims` will be changed to return a set of dimension names in future, in order to be more consistent with `DataArray.dims`. To access a mapping from dimension names to lengths, please use `Dataset.sizes`.
  'dims': dict(self._ds.dims),
../_images/186f96241edfbd3f86754fa9b65f11adf06e141d3de6ffb6916a5263e2ddc736.png
# full dataset
mrr
<xarray.Dataset> Size: 39GB
Dimensions:  (time: 1564799, range: 31, bin: 64)
Coordinates:
    alt      int64 8B ...
  * bin      (bin) int64 512B 0 1 2 3 4 5 6 7 8 9 ... 55 56 57 58 59 60 61 62 63
    lat      float64 8B ...
    lon      float64 8B ...
  * range    (range) float32 124B 200.0 400.0 600.0 ... 5.8e+03 6e+03 6.2e+03
  * time     (time) datetime64[ns] 13MB 2012-06-08T05:23:00 ... 2016-02-28T23...
Data variables: (12/15)
    CC       (time) int64 13MB dask.array<chunksize=(1564799,), meta=np.ndarray>
    D        (time, range, bin) float32 12GB dask.array<chunksize=(4096, 31, 32), meta=np.ndarray>
    DSN      (time) uint16 3MB dask.array<chunksize=(1564799,), meta=np.ndarray>
    DVS      (time) uint16 3MB dask.array<chunksize=(1564799,), meta=np.ndarray>
    F        (time, range, bin) float32 12GB dask.array<chunksize=(4096, 31, 32), meta=np.ndarray>
    LWC      (time, range) float32 194MB dask.array<chunksize=(131072, 31), meta=np.ndarray>
    ...       ...
    RR       (time, range) float32 194MB dask.array<chunksize=(131072, 31), meta=np.ndarray>
    SVS      (time) uint16 3MB dask.array<chunksize=(1564799,), meta=np.ndarray>
    TF       (time, range) float32 194MB dask.array<chunksize=(131072, 31), meta=np.ndarray>
    W        (time, range) float32 194MB dask.array<chunksize=(131072, 31), meta=np.ndarray>
    Z        (time, range) float32 194MB dask.array<chunksize=(131072, 31), meta=np.ndarray>
    Za       (time, range) float32 194MB dask.array<chunksize=(131072, 31), meta=np.ndarray>
Attributes:
    Conventions:           CF-1.12
    _logical_cutoff_date:  2016-02-29T00:00:00Z
    bcoproc_version:       0.0.0.post1657.dev0+ae78268
    featureType:           timeSeriesProfile
    institution:           Max Planck Institute for Meteorology, Hamburg
    license:               CC0-1.0
    location:              The Barbados Cloud Observatory (BCO), Deebles Poin...
    platform:              BCO
    source:                METEK MRR-2
    title:                 MRR Data from EMBRAPA (Level 1)
    tool_versions:         {"Python": "3.11.2 (main, Apr 28 2025, 14:11:48) [...