{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Solution 1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "```{hint} \n", "Execute the notebook on the training platform >>\n", "```" ] }, { "cell_type": "markdown", "metadata": { "tags": [] }, "source": [ "## About" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "> You are working for ENAIRE, the air navigation authority for Spain and western Africa. You know that the Canary Islands are prone to Saharan dust events and for this reason, ENAIRE monitors dust on a daily basis. You are the operations analyst for the week of 21-27 February 2020 and responsible for issuing alerts, and if necessary, to mandate required safety measures. \n", ">\n", "> On 21 February 2020, you are in-charge of analysing the dust forecast and to monitor potential dust events for the coming days. With your new knowledge on aerosol and dust data, you should be able to do this.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Tasks" ] }, { "cell_type": "markdown", "metadata": { "jp-MarkdownHeadingCollapsed": true, "tags": [] }, "source": [ "**1. Brainstorm**\n", " * What dust forecasts do you know about?\n", " * How do they differ from each other?\n", " * What satellite data do you know about that can be used for dust nowcasting?\n", " * Which variables can be used to monitor and forecast dust?\n", " \n", "\n", "**2. Download and animate the MONARCH dust forecast**\n", " * Download the dust forecast from the MONARCH model for 21 February 2020 and animate the forecast\n", " * **Hint** \n", " * [WMO SDS-WAS dust forecast - Example notebook](./monarch_regional.ipynb)\n", " * Data access (Username: `sdswas.namee.rc@gmail.com`, Password: `BarcelonaDustRC`)\n", "\n", "\n", "\n", "**3. Download the MSG SEVIRI Level 1.5 data and visualize the Dust RGB composite**\n", " * Based on the dust forecast for the next days - which day and hour would you choose for getting a near real-time monitoring of dust from the MSG SEVIRI instrument?\n", " * **Hint**\n", " * [MSG SEVIRI Level 1.5 - Example notebook](./msg_rgb.ipynb)\n", " * Data access\n", "\n", "**4. Interpret the results**\n", " * Describe the dust forecast event in comparison with the near real-time monitoring from the satellite.\n", " * What decision as ENAIRE operations analyst do you take? Would you issue an alert? Would you implement some safety measures?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
<xarray.Dataset>\n", "Dimensions: (lon: 307, lat: 211, time: 25)\n", "Coordinates:\n", " * lon (lon) float64 -31.0 -30.67 -30.33 -30.0 ... 70.33 70.67 71.0\n", " * lat (lat) float64 -3.0 -2.667 -2.333 -2.0 ... 66.0 66.33 66.67 67.0\n", " * time (time) datetime64[ns] 2020-02-21T12:00:00 ... 2020-02-24T12:0...\n", "Data variables:\n", " od550_dust (time, lat, lon) float32 ...\n", " sconc_dust (time, lat, lon) float32 ...\n", "Attributes:\n", " CDI: Climate Data Interface version 1.5.4 (http://c...\n", " Conventions: CF-1.2\n", " history: Fri Feb 21 23:50:54 2020: cdo remapbil,regular...\n", " _FillValue: -32767.0\n", " missing_value: -32767.0\n", " title: Regional Reanalysis 0.5x0.5 deg NMMB-BSC-Dust ...\n", " History: Fri Feb 21 22:12:45 2020: ncrcat -F -O pout_re...\n", " Grid_type: B-grid: vectors interpolated to scalar positions\n", " Map_Proj: Rotated latitude longitude\n", " NCO: 4.0.8\n", " nco_openmp_thread_number: 1\n", " CDO: Climate Data Operators version 1.5.4 (http://c...
array([-31. , -30.666667, -30.333333, ..., 70.333323, 70.666657,\n", " 70.99999 ])
array([-3. , -2.666667, -2.333333, ..., 66.333326, 66.66666 , 66.999993])
array(['2020-02-21T12:00:00.000000000', '2020-02-21T15:00:00.000000000',\n", " '2020-02-21T18:00:00.000000000', '2020-02-21T21:00:00.000000000',\n", " '2020-02-22T00:00:00.000000000', '2020-02-22T03:00:00.000000000',\n", " '2020-02-22T06:00:00.000000000', '2020-02-22T09:00:00.000000000',\n", " '2020-02-22T12:00:00.000000000', '2020-02-22T15:00:00.000000000',\n", " '2020-02-22T18:00:00.000000000', '2020-02-22T21:00:00.000000000',\n", " '2020-02-23T00:00:00.000000000', '2020-02-23T03:00:00.000000000',\n", " '2020-02-23T06:00:00.000000000', '2020-02-23T09:00:00.000000000',\n", " '2020-02-23T12:00:00.000000000', '2020-02-23T15:00:00.000000000',\n", " '2020-02-23T18:00:00.000000000', '2020-02-23T21:00:00.000000000',\n", " '2020-02-24T00:00:00.000000000', '2020-02-24T03:00:00.000000000',\n", " '2020-02-24T06:00:00.000000000', '2020-02-24T09:00:00.000000000',\n", " '2020-02-24T12:00:00.000000000'], dtype='datetime64[ns]')
[1619425 values with dtype=float32]
[1619425 values with dtype=float32]
<xarray.DataArray 'od550_dust' (time: 25, lat: 211, lon: 307)>\n", "[1619425 values with dtype=float32]\n", "Coordinates:\n", " * lon (lon) float64 -31.0 -30.67 -30.33 -30.0 ... 70.0 70.33 70.67 71.0\n", " * lat (lat) float64 -3.0 -2.667 -2.333 -2.0 ... 66.0 66.33 66.67 67.0\n", " * time (time) datetime64[ns] 2020-02-21T12:00:00 ... 2020-02-24T12:00:00\n", "Attributes:\n", " long_name: dust optical depth at 550 nm\n", " units: \n", " title: dust optical depth at 550 nm
[1619425 values with dtype=float32]
array([-31. , -30.666667, -30.333333, ..., 70.333323, 70.666657,\n", " 70.99999 ])
array([-3. , -2.666667, -2.333333, ..., 66.333326, 66.66666 , 66.999993])
array(['2020-02-21T12:00:00.000000000', '2020-02-21T15:00:00.000000000',\n", " '2020-02-21T18:00:00.000000000', '2020-02-21T21:00:00.000000000',\n", " '2020-02-22T00:00:00.000000000', '2020-02-22T03:00:00.000000000',\n", " '2020-02-22T06:00:00.000000000', '2020-02-22T09:00:00.000000000',\n", " '2020-02-22T12:00:00.000000000', '2020-02-22T15:00:00.000000000',\n", " '2020-02-22T18:00:00.000000000', '2020-02-22T21:00:00.000000000',\n", " '2020-02-23T00:00:00.000000000', '2020-02-23T03:00:00.000000000',\n", " '2020-02-23T06:00:00.000000000', '2020-02-23T09:00:00.000000000',\n", " '2020-02-23T12:00:00.000000000', '2020-02-23T15:00:00.000000000',\n", " '2020-02-23T18:00:00.000000000', '2020-02-23T21:00:00.000000000',\n", " '2020-02-24T00:00:00.000000000', '2020-02-24T03:00:00.000000000',\n", " '2020-02-24T06:00:00.000000000', '2020-02-24T09:00:00.000000000',\n", " '2020-02-24T12:00:00.000000000'], dtype='datetime64[ns]')
<xarray.DataArray 'time' (time: 25)>\n", "array(['2020-02-21T12:00:00.000000000', '2020-02-21T15:00:00.000000000',\n", " '2020-02-21T18:00:00.000000000', '2020-02-21T21:00:00.000000000',\n", " '2020-02-22T00:00:00.000000000', '2020-02-22T03:00:00.000000000',\n", " '2020-02-22T06:00:00.000000000', '2020-02-22T09:00:00.000000000',\n", " '2020-02-22T12:00:00.000000000', '2020-02-22T15:00:00.000000000',\n", " '2020-02-22T18:00:00.000000000', '2020-02-22T21:00:00.000000000',\n", " '2020-02-23T00:00:00.000000000', '2020-02-23T03:00:00.000000000',\n", " '2020-02-23T06:00:00.000000000', '2020-02-23T09:00:00.000000000',\n", " '2020-02-23T12:00:00.000000000', '2020-02-23T15:00:00.000000000',\n", " '2020-02-23T18:00:00.000000000', '2020-02-23T21:00:00.000000000',\n", " '2020-02-24T00:00:00.000000000', '2020-02-24T03:00:00.000000000',\n", " '2020-02-24T06:00:00.000000000', '2020-02-24T09:00:00.000000000',\n", " '2020-02-24T12:00:00.000000000'], dtype='datetime64[ns]')\n", "Coordinates:\n", " * time (time) datetime64[ns] 2020-02-21T12:00:00 ... 2020-02-24T12:00:00\n", "Attributes:\n", " standard_name: time
array(['2020-02-21T12:00:00.000000000', '2020-02-21T15:00:00.000000000',\n", " '2020-02-21T18:00:00.000000000', '2020-02-21T21:00:00.000000000',\n", " '2020-02-22T00:00:00.000000000', '2020-02-22T03:00:00.000000000',\n", " '2020-02-22T06:00:00.000000000', '2020-02-22T09:00:00.000000000',\n", " '2020-02-22T12:00:00.000000000', '2020-02-22T15:00:00.000000000',\n", " '2020-02-22T18:00:00.000000000', '2020-02-22T21:00:00.000000000',\n", " '2020-02-23T00:00:00.000000000', '2020-02-23T03:00:00.000000000',\n", " '2020-02-23T06:00:00.000000000', '2020-02-23T09:00:00.000000000',\n", " '2020-02-23T12:00:00.000000000', '2020-02-23T15:00:00.000000000',\n", " '2020-02-23T18:00:00.000000000', '2020-02-23T21:00:00.000000000',\n", " '2020-02-24T00:00:00.000000000', '2020-02-24T03:00:00.000000000',\n", " '2020-02-24T06:00:00.000000000', '2020-02-24T09:00:00.000000000',\n", " '2020-02-24T12:00:00.000000000'], dtype='datetime64[ns]')
array(['2020-02-21T12:00:00.000000000', '2020-02-21T15:00:00.000000000',\n", " '2020-02-21T18:00:00.000000000', '2020-02-21T21:00:00.000000000',\n", " '2020-02-22T00:00:00.000000000', '2020-02-22T03:00:00.000000000',\n", " '2020-02-22T06:00:00.000000000', '2020-02-22T09:00:00.000000000',\n", " '2020-02-22T12:00:00.000000000', '2020-02-22T15:00:00.000000000',\n", " '2020-02-22T18:00:00.000000000', '2020-02-22T21:00:00.000000000',\n", " '2020-02-23T00:00:00.000000000', '2020-02-23T03:00:00.000000000',\n", " '2020-02-23T06:00:00.000000000', '2020-02-23T09:00:00.000000000',\n", " '2020-02-23T12:00:00.000000000', '2020-02-23T15:00:00.000000000',\n", " '2020-02-23T18:00:00.000000000', '2020-02-23T21:00:00.000000000',\n", " '2020-02-24T00:00:00.000000000', '2020-02-24T03:00:00.000000000',\n", " '2020-02-24T06:00:00.000000000', '2020-02-24T09:00:00.000000000',\n", " '2020-02-24T12:00:00.000000000'], dtype='datetime64[ns]')