.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "examples/02_diagnostic_workflow.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_examples_02_diagnostic_workflow.py: Running Diagnostic Inference ============================ Basic prognostic + diagnostic inference workflow. This example will demonstrate how to run a deterministic inference workflow that couples a prognostic model with a diagnostic model. This diagnostic model will predict a new atmospheric quantity from the predicted fields of the prognostic. In this example you will learn: - How to instantiate a prognostic model - How to instantiate a diagnostic model - Creating a data source and IO object - Running the built in diagnostic workflow - Post-processing results .. GENERATED FROM PYTHON SOURCE LINES 36-43 .. code-block:: Python # /// script # dependencies = [ # "earth2studio[dlwp] @ git+https://github.com/NVIDIA/earth2studio.git", # "cartopy", # ] # /// .. GENERATED FROM PYTHON SOURCE LINES 44-48 Set Up ------ For this example, the built in diagnostic workflow :py:meth:`earth2studio.run.diagnostic` will be used. .. GENERATED FROM PYTHON SOURCE LINES 50-54 .. literalinclude:: ../../earth2studio/run.py :language: python :start-after: # sphinx - diagnostic start :end-before: # sphinx - diagnostic end .. GENERATED FROM PYTHON SOURCE LINES 57-63 Thus, we need the following: - Prognostic Model: Use the built in FourCastNet Model :py:class:`earth2studio.models.px.FCN`. - Diagnostic Model: Use the built in precipitation AFNO model :py:class:`earth2studio.models.dx.PrecipitationAFNO`. - Datasource: Pull data from the GFS data api :py:class:`earth2studio.data.GFS`. - IO Backend: Save the outputs into a Zarr store :py:class:`earth2studio.io.ZarrBackend`. .. GENERATED FROM PYTHON SOURCE LINES 65-90 .. code-block:: Python import os os.makedirs("outputs", exist_ok=True) from dotenv import load_dotenv load_dotenv() # TODO: make common example prep function from earth2studio.data import GFS from earth2studio.io import ZarrBackend from earth2studio.models.dx import PrecipitationAFNO from earth2studio.models.px import FCN # Load the default model package which downloads the check point from NGC package = FCN.load_default_package() prognostic_model = FCN.load_model(package) package = PrecipitationAFNO.load_default_package() diagnostic_model = PrecipitationAFNO.load_model(package) # Create the data source data = GFS() # Create the IO handler, store in memory io = ZarrBackend() .. rst-class:: sphx-glr-script-out .. code-block:: none Downloading fcn.zip: 0%| | 0.00/267M [00:00` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: 02_diagnostic_workflow.py <02_diagnostic_workflow.py>` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: 02_diagnostic_workflow.zip <02_diagnostic_workflow.zip>` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_