.. _task-e3sm-diags: e3sm_diags — E3SM Diagnostics ============================== The ``e3sm_diags`` task runs `E3SM Diagnostics `_ to produce a wide variety of atmospheric, land, and river diagnostic plots. It depends on the :doc:`climo` and/or :doc:`ts` tasks for its input files. For a complete list of available E3SM Diags parameters, see the `E3SM Diags documentation `_. For a table of which diagnostic sets require which parameters, see `Confluence `_. Diagnostic sets --------------- The ``sets`` parameter controls which diagnostic sets are run. All 20 available sets are: ``aerosol_aeronet``, ``aerosol_budget``, ``annual_cycle_zonal_mean``, ``area_mean_time_series``, ``cosp_histogram``, ``diurnal_cycle``, ``enso_diags``, ``lat_lon``, ``lat_lon_land``, ``meridional_mean_2d``, ``mp_partition``, ``polar``, ``precip_pdf``, ``qbo``, ``streamflow``, ``tc_analysis``, ``tropical_subseasonal``, ``zonal_mean_2d``, ``zonal_mean_2d_stratosphere``, ``zonal_mean_xy`` Parameters ---------- These 35 parameters are specific to the ``e3sm_diags`` task. General parameters ~~~~~~~~~~~~~~~~~~ There are 12 general parameters: .. list-table:: :header-rows: 1 :widths: 28 10 18 44 * - Parameter - Required - Default - Description * - ``backend`` - No - ``"mpl"`` - Plotting backend. * - ``cfg`` - No - ``""`` - Path to an additional E3SM Diags configuration file. * - ``keep_mvm_case_name_in_fig`` - No - ``True`` - Include case name in model-vs-model output paths. * - ``multiprocessing`` - No - ``True`` - Use multiprocessing. * - ``num_workers`` - No - ``24`` - Number of worker processes. * - ``output_format`` - No - ``["png"]`` - Output plot formats. * - ``output_format_subplot`` - No - ``[]`` - Output formats for subplots. * - ``run_type`` - No - ``"model_vs_obs"`` - Comparison type: ``"model_vs_obs"`` or ``"model_vs_model"``. * - ``sets`` - No - ``"lat_lon,zonal_mean_xy,..."`` - List of diagnostic sets to run. * - ``short_name`` - No - ``""`` - Short name used as test name and label. * - ``swap_test_ref`` - No - ``False`` - Swap test and reference in model-vs-model runs. * - ``tag`` - No - ``"model_vs_obs"`` - Label for the results directory. Set-specific parameters ~~~~~~~~~~~~~~~~~~~~~~~ There are 23 set-specific parameters. **Overview by set** We will review useful parameters by set. To do this, we will group them by dependency. For more info on dependencies, see :ref:`Dependencies `. .. list-table:: :header-rows: 1 :stub-columns: 1 :widths: 20 80 * - Group - Sets * - ``climo_month_atm`` - ``lat_lon``, ``zonal_mean_xy``, ``zonal_mean_2d``, ``polar``, ``cosp_histogram``, ``meridional_mean_2d``, ``annual_cycle_zonal_mean``, ``zonal_mean_2d_stratosphere``, ``aerosol_aeronet``, ``aerosol_budget`` * - ``climo_month_lnd`` - ``lat_lon_land`` * - ``diurnal`` - ``diurnal_cycle`` * - ``ts_month_atm`` - ``enso_diags``, ``qbo``, ``area_mean_time_series``, ``mp_partition`` * - ``ts_daily_atm`` - ``tropical_subseasonal``, ``precip_pdf`` * - ``streamflow`` - ``streamflow`` * - ``tc`` - ``tc_analysis`` Cell values: **Always** = required for both run types; **MvO** = ``model_vs_obs`` only; **MvM** = ``model_vs_model`` only; **—** = not used. Values marked with \* differ across sets within the group (see notes below the table). .. list-table:: :header-rows: 1 :stub-columns: 1 :widths: 30 14 14 10 16 14 12 10 * - Parameter - ``climo_month_atm`` - ``climo_month_lnd`` - ``diurnal`` - ``ts_month_atm`` - ``ts_daily_atm`` - ``streamflow`` - ``tc`` * - ``climo_diurnal_frequency`` - — - — - Always - — - — - — - — * - ``climo_diurnal_subsection`` - — - — - Always - — - — - — - — * - ``climo_subsection`` [#subsection]_ - Always - Always - — - — - — - — - — * - ``dc_obs_climo`` [#dc_obs]_ - — - — - MvO - — - — - — - — * - ``diff_title`` - — - — - — - MvM - MvM - MvM - MvM * - ``gauges_path`` [#inferred]_ - — - — - — - — - — - MvM - — * - ``obs_ts`` [#inferred]_ - — - — - — - MvO - MvO - — - — * - ``ref_final_yr`` \* - — - — - — - Always \* - MvM - MvM - MvM * - ``ref_name`` - — - — - — - MvM - MvM - MvM - MvM * - ``ref_start_yr`` \* - — - — - — - Always \* - MvM - MvM - MvM * - ``reference_data_path`` [#refpath]_ - Always - Always - Always - — - — - — - — * - ``reference_data_path_climo_diurnal`` [#inferred]_ - — - — - MvM - — - — - — - — * - ``reference_data_path_tc`` [#inferred]_ - — - — - — - — - — - — - MvM * - ``reference_data_path_ts`` [#inferred]_ - — - — - — - MvM - — - — - — * - ``reference_data_path_ts_daily`` [#inferred]_ - — - — - — - — - MvM - — - — * - ``reference_data_path_ts_rof`` [#inferred]_ - — - — - — - — - — - MvM - — * - ``short_ref_name`` - — - — - — - MvM - MvM - MvM - MvM * - ``streamflow_obs_ts`` [#inferred]_ - — - — - — - — - — - MvO - — * - ``tc_obs`` [#inferred]_ - — - — - — - — - — - — - MvO * - ``ts_daily_subsection`` [#subsection]_ - — - — - — - — - Always - — - — * - ``ts_num_years_ref`` - — - — - — - MvM - MvM - MvM - — * - ``ts_subsection`` [#subsection]_ - — - — - — - Always - — - — - — .. [#subsection] Falls back to ``sub`` → ``grid`` if not set. .. [#refpath] Inferred from ``diagnostics_base_path`` if not set. In MvM, also used as a base path from which ``reference_data_path_climo_diurnal`` and ``reference_data_path_ts`` are derived. .. [#dc_obs] Inferred from ``reference_data_path`` if not set (MvO only). .. [#inferred] Inferred from ``diagnostics_base_path`` (or a sibling path) if not set. Note on \* cells (``ts_month_atm``): within ``ts_month_atm`` the four sets do not behave uniformly for ``ref_start_yr`` and ``ref_final_yr``: .. list-table:: :header-rows: 1 :widths: 30 20 20 20 20 * - Parameter - ``enso_diags`` - ``qbo`` - ``area_mean_time_series`` - ``mp_partition`` * - ``ref_final_yr`` - MvM - Always - — - MvM * - ``ref_start_yr`` - Always - Always - — - MvM **Parameter list** .. list-table:: :header-rows: 1 :widths: 28 10 18 44 * - Parameter - Required - Default - Description * - ``climo_diurnal_frequency`` - No - ``""`` - Frequency name for the diurnal cycle ``[climo]`` subtask. * - ``climo_diurnal_subsection`` - No - ``""`` - ``[climo]`` subtask for diurnal cycle data. * - ``climo_subsection`` - No - ``""`` - Name of the ``[climo]`` subtask to depend on. * - ``dc_obs_climo`` - No - ``""`` - Path to observation climatology for the ``diurnal_cycle`` set. * - ``diff_title`` - No - ``"Model - Observations"`` - Title for difference plots. * - ``gauges_path`` - No - ``""`` - Path to stream gauge data for ``streamflow`` model-vs-model runs. * - ``obs_ts`` - No - ``""`` - Path to observation time-series data for ``enso_diags``, ``qbo``, and ``area_mean_time_series``. * - ``ref_final_yr`` - No* - ``""`` - End year of reference data. Required for ``qbo`` and certain model-vs-model sets. * - ``ref_name`` - No* - ``""`` - Reference dataset name. **Required for** ``run_type="model_vs_model"``. * - ``ref_start_yr`` - No* - ``""`` - Start year of reference data. Required for ``enso_diags``, ``qbo``. * - ``reference_data_path`` - No* - ``""`` - Path to reference climatology data. **Required for** ``run_type="model_vs_model"``. * - ``reference_data_path_climo_diurnal`` - No - ``""`` - Reference climatology path for ``diurnal_cycle`` MVM runs. * - ``ref_years`` - No - ``[""]`` - Year ranges for reference data in model-vs-model runs. * - ``reference_data_path_tc`` - No - ``""`` - Reference data path for ``tc_analysis`` MVM runs. * - ``reference_data_path_ts`` - No - ``""`` - Reference time-series path for ``enso_diags``, ``qbo``, ``area_mean_time_series``. * - ``reference_data_path_ts_daily`` - No - ``""`` - Reference daily time-series path for ``tropical_subseasonal``. * - ``reference_data_path_ts_rof`` - No - ``""`` - Reference river time-series path for ``streamflow`` MVM runs. * - ``short_ref_name`` - No* - ``""`` - Short reference name. **Required for** ``run_type="model_vs_model"``. * - ``streamflow_obs_ts`` - No - ``""`` - Path to observation data for ``streamflow`` set. * - ``tc_obs`` - No - ``""`` - Path to observation data for ``tc_analysis`` set. * - ``ts_daily_subsection`` - No - ``""`` - ``[ts]`` subtask for daily data (required for ``tropical_subseasonal``). * - ``ts_num_years_ref`` - No - ``5`` - Year increment for reference time-series data. * - ``ts_subsection`` - No - ``""`` - Name of the ``[ts]`` subtask to depend on. Parameters at the top-level ~~~~~~~~~~~~~~~~~~~~~~~~~~~ For top-level parameters, see :ref:`top-level parameters `. Dependencies ------------ **Upstream (what e3sm_diags depends on):** - :doc:`climo` — Monthly-atm climo: lat_lon, zonal_mean_xy, zonal_mean_2d, polar, cosp_histogram, meridional_mean_2d, annual_cycle_zonal_mean, zonal_mean_2d_stratosphere, aerosol_aeronet, aerosol_budget. Monthly-lnd climo: lat_lon_land. Monthly diurnal-atm climo: diurnal_cycle - :doc:`ts` — Monthly-atm ts: enso_diags, qbo, area_mean_time_series, mp_partition. Monthly-rof ts: streamflow. Daily-atm ts: tropical_subseasonal, precip_pdf. - :doc:`tc_analysis` — Required for tc_analysis set. **Downstream (what depends on e3sm_diags):** - None.