{ "cells": [ { "cell_type": "markdown", "id": "35043d37", "metadata": {}, "source": [ "# Example: Compare Ground Measurements with CAMS CRS Satellite Data\n", "\n", "This notebook loads one BSRN station-month via :class:`~bsrn.dataset.BSRNDataset`,\n", "runs the recommended pipeline (``solpos`` → ``clear_sky`` REST2 / MERRA-2 HF →\n", "``qc_test`` → ``qc_mask``), adds CAMS CRS all-sky columns from Hugging Face,\n", "time-averages with :meth:`~bsrn.dataset.BSRNDataset.average`, and plots a\n", "calendar comparison.\n" ] }, { "cell_type": "code", "execution_count": 1, "id": "a0106510", "metadata": {}, "outputs": [], "source": [ "import os\n", "\n", "import bsrn\n", "from bsrn.io.crs import add_crs_columns\n", "from bsrn.visualization import plot_calendar\n" ] }, { "cell_type": "markdown", "id": "f6c50585", "metadata": {}, "source": [ "## 1. Input path\n" ] }, { "cell_type": "code", "execution_count": 2, "id": "33768f42", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "--- Processing /Volumes/Macintosh Research/Data/bsrn-qc/data/QIQ/qiq0824.dat.gz ---\n" ] } ], "source": [ "INPUT_FILE = \"/Volumes/Macintosh Research/Data/bsrn-qc/data/QIQ/qiq0824.dat.gz\"\n", "\n", "print(f\"--- Processing {INPUT_FILE} ---\")\n", "\n", "if not os.path.exists(INPUT_FILE):\n", " raise FileNotFoundError(f\"File not found: {INPUT_FILE}\")\n" ] }, { "cell_type": "markdown", "id": "e023b0e8", "metadata": {}, "source": [ "## 2. Load validated station-month and run the pipeline\n", "\n", "``BSRNDataset.from_file`` loads LR0100 plus metadata. Then ``solpos``, ``clear_sky(model='rest2')``, ``qc_test``, and ``qc_mask`` update the cached frame in place.\n" ] }, { "cell_type": "code", "execution_count": 3, "id": "34d32252", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Station QIQ: loaded 44640 rows.\n", "solpos() …\n", "clear_sky(model='rest2') …\n", "Fetching MERRA-2 from Hugging Face: qiq/qiq0824_merra2.parquet\n", "qc_test() …\n", "qc_mask() …\n" ] }, { "data": { "text/html": [ "
| \n", " | ghi | \n", "bni | \n", "dhi | \n", "lwd | \n", "temp | \n", "rh | \n", "pressure | \n", "zenith | \n", "apparent_zenith | \n", "azimuth | \n", "bni_extra | \n", "ghi_extra | \n", "ghi_clear | \n", "bni_clear | \n", "dhi_clear | \n", "lwd_clear | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2024-08-01 00:00:00+00:00 | \n", "105.0 | \n", "0.0 | \n", "106.0 | \n", "421.0 | \n", "25.2 | \n", "70.0 | \n", "981.0 | \n", "54.881 | \n", "54.857 | \n", "102.414 | \n", "1320.650 | \n", "759.739 | \n", "507.439814 | \n", "664.498840 | \n", "125.169227 | \n", "410.715619 | \n", "
| 2024-08-01 00:01:00+00:00 | \n", "108.0 | \n", "0.0 | \n", "109.0 | \n", "422.0 | \n", "25.2 | \n", "71.0 | \n", "981.0 | \n", "54.717 | \n", "54.694 | \n", "102.625 | \n", "1320.650 | \n", "762.828 | \n", "509.994881 | \n", "665.753119 | \n", "125.445597 | \n", "411.548727 | \n", "
| 2024-08-01 00:02:00+00:00 | \n", "112.0 | \n", "0.0 | \n", "113.0 | \n", "421.0 | \n", "25.2 | \n", "70.0 | \n", "981.0 | \n", "54.553 | \n", "54.530 | \n", "102.836 | \n", "1320.650 | \n", "765.910 | \n", "512.545982 | \n", "666.998615 | \n", "125.720382 | \n", "410.715619 | \n", "
| 2024-08-01 00:03:00+00:00 | \n", "113.0 | \n", "0.0 | \n", "114.0 | \n", "421.0 | \n", "25.2 | \n", "70.0 | \n", "981.0 | \n", "54.390 | \n", "54.367 | \n", "103.049 | \n", "1320.650 | \n", "768.968 | \n", "515.077560 | \n", "668.227890 | \n", "125.991932 | \n", "410.715619 | \n", "
| 2024-08-01 00:04:00+00:00 | \n", "116.0 | \n", "0.0 | \n", "117.0 | \n", "421.0 | \n", "25.2 | \n", "71.0 | \n", "981.0 | \n", "54.226 | \n", "54.204 | \n", "103.261 | \n", "1320.650 | \n", "772.038 | \n", "517.620641 | \n", "669.456101 | \n", "126.263590 | \n", "411.548727 | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
| 2024-08-31 23:55:00+00:00 | \n", "123.0 | \n", "0.0 | \n", "123.0 | \n", "371.0 | \n", "21.9 | \n", "45.0 | \n", "988.0 | \n", "61.982 | \n", "61.951 | \n", "110.304 | \n", "1335.838 | \n", "627.508 | \n", "430.077633 | \n", "741.828764 | \n", "81.604368 | \n", "359.041392 | \n", "
| 2024-08-31 23:56:00+00:00 | \n", "129.0 | \n", "0.0 | \n", "130.0 | \n", "370.0 | \n", "21.9 | \n", "45.0 | \n", "988.0 | \n", "61.825 | \n", "61.794 | \n", "110.521 | \n", "1335.838 | \n", "630.737 | \n", "432.754922 | \n", "743.268714 | \n", "81.808573 | \n", "359.041392 | \n", "
| 2024-08-31 23:57:00+00:00 | \n", "135.0 | \n", "0.0 | \n", "136.0 | \n", "370.0 | \n", "21.9 | \n", "46.0 | \n", "988.0 | \n", "61.668 | \n", "61.637 | \n", "110.738 | \n", "1335.838 | \n", "633.962 | \n", "435.429929 | \n", "744.697256 | \n", "82.011590 | \n", "360.170497 | \n", "
| 2024-08-31 23:58:00+00:00 | \n", "138.0 | \n", "0.0 | \n", "139.0 | \n", "370.0 | \n", "21.9 | \n", "47.0 | \n", "988.0 | \n", "61.511 | \n", "61.481 | \n", "110.956 | \n", "1335.838 | \n", "637.181 | \n", "438.102614 | \n", "746.114514 | \n", "82.213429 | \n", "361.278756 | \n", "
| 2024-08-31 23:59:00+00:00 | \n", "141.0 | \n", "0.0 | \n", "142.0 | \n", "371.0 | \n", "21.9 | \n", "46.0 | \n", "988.0 | \n", "61.354 | \n", "61.324 | \n", "111.174 | \n", "1335.838 | \n", "640.396 | \n", "440.772936 | \n", "747.520613 | \n", "82.414101 | \n", "360.170497 | \n", "
44640 rows × 16 columns
\n", "