.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "generated/model_applications/unstructured_grids/StatAnalysis_fcstLFRIC_UGRID_obsASCII_PyEmbed.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code. .. rst-class:: sphx-glr-example-title .. _sphx_glr_generated_model_applications_unstructured_grids_StatAnalysis_fcstLFRIC_UGRID_obsASCII_PyEmbed.py: StatAnalysis: Met Office LFRic UGRID ==================================== model_applications/unstructured_grids/StatAnalysis_fcstLFRIC_UGRID_obsASCII_PyEmbed.conf .. GENERATED FROM PYTHON SOURCE LINES 9-13 .. contents:: :depth: 1 :local: :backlinks: none .. GENERATED FROM PYTHON SOURCE LINES 15-39 Scientific Objective -------------------- This use case demonstrates the use of python embedding to ingest and perform verification on an unstructured grid. This foregoes the need to interpolate to a regular grid as a step in the verification process, thereby avoiding any incurred interpolation error in the process. In particular, this use case ingests a UK MET Office LFRic forecast file in NetCDF format, which resides in the UGRID format of the cubed-sphere. The python library Iris was developed to perform analysis on various UGRID formats, and is employed here to ingest the file as well as perform direct interpolation from the native forecast grid to observation locations, thereby forming matched pairs to pass to stat_analysis. In order to perform the interpolation using a nearest-neighbors approach, the geovista python package is also used to form a KD tree to be used in identifying the interpolation points to be used. This package is located at https://github.com/bjlittle/geovista/ and can be installed from a development version. It is also required to install the pyvista python package. ASCII files containing observations are also ingested. The python embedding script itself performs the interpolation in time, and for this use case thins the observation data in order to reduce the run time. It is also noted that the observations for this use case were fabricated and correlated observation-forecast pairs are not expected. .. GENERATED FROM PYTHON SOURCE LINES 41-45 Version Added ------------- METplus version 5.0 .. GENERATED FROM PYTHON SOURCE LINES 47-64 Datasets -------- **Forecast:** UK MET Office LFRic forecast files in UGRID NetCDF format **Observation:** Observations in ASCII format **Climatology:** None **Location:** All of the input data required for this use case can be found in a sample data tarball. Each use case category will have one or more sample data tarballs. It is only necessary to download the tarball with the use case’s dataset and not the entire collection of sample data. Click here to access the METplus releases page and download sample data for the appropriate release: https://github.com/dtcenter/METplus/releases This tarball should be unpacked into the directory that you will set the value of INPUT_BASE. See :ref:`running-metplus` section for more information. .. GENERATED FROM PYTHON SOURCE LINES 66-72 METplus Components ------------------ This use case utilizes the METplus StatAnalysis wrapper to search for files that are valid for the given case and generate a command to run the MET tool stat_analysis. .. GENERATED FROM PYTHON SOURCE LINES 74-90 METplus Workflow ---------------- **Beginning time (VALID_BEG):** 2021050500 **End time (VALID_END):** 2021050500 **Increment between beginning and end times (VALID_INCREMENT):** 6H **Sequence of forecast leads to process (LEAD_SEQ):** 0 StatAnalysis is the only tool called in this example. It processes the following run times: | **Valid:** 2021-05-05_00Z | **Forecast lead:** 12 hour .. GENERATED FROM PYTHON SOURCE LINES 92-101 METplus Configuration --------------------- METplus first loads all of the configuration files found in parm/metplus_config, then it loads any configuration files passed to METplus via the command line, i.e. parm/use_cases/model_applications/unstructured_grids/StatAnalysis_fcstLFRIC_UGRID_obsASCII_PyEmbed.conf .. highlight:: bash .. literalinclude:: ../../../../parm/use_cases/model_applications/unstructured_grids/StatAnalysis_fcstLFRIC_UGRID_obsASCII_PyEmbed.conf .. GENERATED FROM PYTHON SOURCE LINES 103-117 MET Configuration ----------------- METplus sets environment variables based on user settings in the METplus configuration file. See :ref:`How METplus controls MET config file settings` for more details. **YOU SHOULD NOT SET ANY OF THESE ENVIRONMENT VARIABLES YOURSELF! THEY WILL BE OVERWRITTEN BY METPLUS WHEN IT CALLS THE MET TOOLS!** If there is a setting in the MET configuration file that is currently not supported by METplus you'd like to control, please refer to: :ref:`Overriding Unsupported MET config file settings` .. dropdown:: STATAnalysisConfig_wrapped .. literalinclude:: ../../../../parm/met_config/STATAnalysisConfig_wrapped .. GENERATED FROM PYTHON SOURCE LINES 119-132 Python Embedding ---------------- This use case uses a Python embedding script to read input data. .. dropdown:: parm/use_cases/model_applications/unstructured_grids/StatAnalysis_fcstLFRIC_UGRID_obsASCII_PyEmbed/ugrid_lfric_mpr.py .. highlight:: python .. literalinclude:: ../../../../parm/use_cases/model_applications/unstructured_grids/StatAnalysis_fcstLFRIC_UGRID_obsASCII_PyEmbed/ugrid_lfric_mpr.py For more information on the basic requirements to utilize Python Embedding in METplus, please refer to the MET User’s Guide section on `Python embedding `_. .. GENERATED FROM PYTHON SOURCE LINES 134-138 User Scripting -------------- User Scripting is not used in this use case. .. GENERATED FROM PYTHON SOURCE LINES 140-149 Running METplus --------------- Pass the use case configuration file to the run_metplus.py script along with any user-specific system configuration files if desired:: run_metplus.py /path/to/StatAnalysis_fcstLFRIC_UGRID_obsASCII_PyEmbed.conf /path/to/user_system.conf See :ref:`running-metplus` for more information. .. GENERATED FROM PYTHON SOURCE LINES 151-163 Expected Output --------------- A successful run will output the following both to the screen and to the logfile:: INFO: METplus has successfully finished running. Refer to the value set for **OUTPUT_BASE** to find where the output data was generated. Output for this use case will be found in StatAnalysis_UGRID (relative to **OUTPUT_BASE**) and will contain the following file: * dump.out .. GENERATED FROM PYTHON SOURCE LINES 165-177 Keywords -------- .. note:: * StatAnalysisToolUseCase * PythonEmbeddingFileUseCase * UnstructureGridsUseCase Navigate to the :ref:`quick-search` page to discover other similar use cases. .. _sphx_glr_download_generated_model_applications_unstructured_grids_StatAnalysis_fcstLFRIC_UGRID_obsASCII_PyEmbed.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: StatAnalysis_fcstLFRIC_UGRID_obsASCII_PyEmbed.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: StatAnalysis_fcstLFRIC_UGRID_obsASCII_PyEmbed.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: StatAnalysis_fcstLFRIC_UGRID_obsASCII_PyEmbed.zip ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_