Radiation#

Instrumentation#

The BCO is equipped with a solar and terrestrial radiation measurement station, comprised of 4 radiation sensors attached to a SOLYS2 sun tracker. The instruments were installed on 2015-03-30.

Radiation sensor

More specifically, the apparatus sits on the top of the BCO container, \(4.5\,\mathrm{m}\) above the ground, or \(21.5\,\mathrm{m}\) above mean sea level

The 4 sensors are as follows:

  • shaded pyranometer mounted on table of sun tracker for diffuse radiation (CMP21 by Kipp and Zonen),

  • non-shaded pyranometer mounted on table of sun tracker for diffuse radiation (CMP21 by Kipp and Zonen),

    pyranometers measure solar irradiance from a hemispherical field of view diffuse radiation is the portion of incoming shortwave (SW) radiation due to atmospheric scattering

  • shaded pyrgeometer mounted on table of sun tracker for longwave (LW) radiation (CGR4 by Kipp and Zonen)

  • pyrheliometer mounted on the side of the sun tracker (CPH1 by Kipp and Zonen) points directly into the sun.

Two sets of 4 sensors are used and exchanged simultaneously approximately every two years.

  • Set 1: CMP21 #140337, CMP21 #140356, CGR4 #140034 (replaced by 220446), CHP1 #140059 (replaced by 160388)

  • Set 2: CMP21 #160654, CMP21 #160653, CGR4 #150139, CHP1 #160388

The calibration is done by the DWD in Lindenberg, and the solar irradiance (\(\mathrm{W} \mathrm{m}^{-2}\)), the raw voltages, the sensitivities, and the housing temperatures of each of the 4 sensors are available.

Data Availability#

Housekeeping data is available as .zarr files in the catalog as:

  • BCO.radiation_c1 (2015-03-30 to 2015-10-14)

  • BCO.radiation_c2 (2015-10-15 to present)

And a level 2 product is being tested and can be found under the catalog entry BCO.radiation (2015-03-30 to present). The level 2 product is filtered and quality controlled combining the following techniques: (1) pre-determined flags in the level 1 data with meanings high_anomaly, low_anomaly, or broken are dropped (2) for c2, we have access to recorded voltages and can therefore drop times when the irradiance measured is 0 but there is some nonzero voltage recorded (3) use ±4000 W m-2 as bounds (non-inclusive, because this is the maximum operational irradiance of the instrument itself) for unphysical measurements and drop all fluxes outside of these bounds.

import intake
import matplotlib.pyplot as plt

cat = intake.open_catalog("https://tcodata.mpimet.mpg.de/catalog.yaml")
ds = cat.BCO.radiation(time="PT1H").to_dask().sel(time="2024-09")
ds
/builds/tco/bco/docs/.venv/lib/python3.14/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),
<xarray.Dataset> Size: 35kB
Dimensions:             (time: 720, bnd: 2)
Coordinates:
  * time                (time) datetime64[ns] 6kB 2024-09-01T00:30:00 ... 202...
    alt                 float64 8B ...
    lat                 float64 8B ...
    lon                 float64 8B ...
Dimensions without coordinates: bnd
Data variables:
    lw_down_diffuse     (time) float32 3kB dask.array<chunksize=(720,), meta=np.ndarray>
    raw_count           (time) float64 6kB dask.array<chunksize=(720,), meta=np.ndarray>
    sw_down_diffuse     (time) float32 3kB dask.array<chunksize=(720,), meta=np.ndarray>
    sw_down_global      (time) float32 3kB dask.array<chunksize=(720,), meta=np.ndarray>
    sw_down_suntracker  (time) float32 3kB dask.array<chunksize=(720,), meta=np.ndarray>
    time_bounds         (time, bnd) datetime64[ns] 12kB dask.array<chunksize=(720, 2), meta=np.ndarray>
Attributes:
    Conventions:      CF-1.12
    _cutoff_date:     2026-10-16T23:55:00.000001000
    bcoproc_version:  0.0.0.post2256.dev0+3c9a772
    institution:      Max Planck Institute for Meteorology, Hamburg
    license:          CC0-1.0
    location:         The Barbados Cloud Observatory (BCO), Deebles Point, Ba...
    platform:         BCO
    source:           https://swift.dkrz.de/v1/dkrz_948e7d4bbfbb445fbff5315fc...
    summary:          This dataset contains measurements of downwelling short...
    title:            Radiation data from BCO (Level 2)
    tool_versions:    {"Python": "3.14.3 (main, Mar  3 2026, 14:59:53) [Clang...

Sample Plot#

ds.sw_down_global.groupby(ds.time.dt.hour).mean().plot()
plt.xlabel("time / hour")
plt.title("diurnal cycle during 2024-09")
Text(0.5, 1.0, 'diurnal cycle during 2024-09')
../../_images/0d9a7ef30eb6ad1fe7a2c85c2a6c2c051d13d449df73b298f6d843142376130d.png