:orphan:

.. _example_gallery:

Example gallery
===============

Below is a collection of example scripts and tutorials to illustrate the usage 
of pysteps.

These scripts require the pysteps example data.
See the installation instructions in the :ref:`example_data` section.


.. raw:: html

    <div class="sphx-glr-thumbnails">

.. thumbnail-parent-div-open

.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This tutorial offers a short overview of the optical flow routines available in pysteps and it will cover how to compute and plot the motion field from a sequence of radar images.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_plot_optical_flow_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_plot_optical_flow.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Optical flow</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This tutorial shows how to use the optical flow routines of pysteps to implement the advection correction procedure described in Anagnostou and Krajewski (1999).">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_advection_correction_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_advection_correction.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Advection correction</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This example script shows how to forecast the probability of exceeding an intensity threshold.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_probability_forecast_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_probability_forecast.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Probability forecasts</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This tutorial shows how to compute and plot an extrapolation nowcast using Finnish radar data.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_plot_extrapolation_nowcast_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_plot_extrapolation_nowcast.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Extrapolation nowcast</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This example script shows how to run the stochastic noise field generators included in pysteps.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_plot_noise_generators_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_plot_noise_generators.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Generation of stochastic noise</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This example script shows how to use the stochastic downscaling method RainFARM available in pysteps.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_rainfarm_downscale_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_rainfarm_downscale.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Precipitation downscaling with RainFARM</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This tutorial shows how to plot data using a custom colormap with a specific range of precipitation values.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_plot_custom_precipitation_range_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_plot_custom_precipitation_range.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Plot precipitation using custom colormap</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="The statistics of intermittent precipitation rates are particularly non-Gaussian and display an asymmetric distribution bounded at zero. Such properties restrict the usage of well-established statistical methods that assume symmetric or Gaussian data.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_data_transformations_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_data_transformations.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Data transformations</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This example shows how to use the thunderstorm DaTing module. The example is based on MeteoSwiss radar data and uses the Cartesian composite of maximum reflectivity on a 1 km grid. All default values are tuned to this grid, but can be modified. The first section demonstrates thunderstorm cell detection and how to plot contours. The second section demonstrates detection and tracking in combination, as well as how to plot the resulting tracks. This module was implemented following the procedures used in the TRT Thunderstorms Radar Tracking algorithm (TRT2004) used operationally at MeteoSwiss. Modifications include advecting the identified thunderstorms with the optical flow obtained from pysteps, as well as additional options in the thresholding. A detailed description is published in Appendix A of Feldmann2021.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_thunderstorm_detection_and_tracking_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_thunderstorm_detection_and_tracking.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Thunderstorm Detection and Tracking - T-DaTing</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This example script shows how to compute and plot the cascade decompositon of a single radar precipitation field in pysteps.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_plot_cascade_decomposition_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_plot_cascade_decomposition.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Cascade decomposition</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This tutorial shows how to compute and plot an ensemble nowcast using Swiss radar data.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_plot_steps_nowcast_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_plot_steps_nowcast.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">STEPS nowcast</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This example shows how to compute and plot a deterministic and ensemble LINDA nowcasts using Swiss radar data.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_linda_nowcasts_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_linda_nowcasts.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">LINDA nowcasts</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="In this tutorial we perform a verification of a probabilistic extrapolation nowcast using MeteoSwiss radar data.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_plot_ensemble_verification_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_plot_ensemble_verification.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Ensemble verification</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="Areas of missing data in radar images are typically caused by visibility limits such as beam blockage and the radar coverage itself. These artifacts can mislead the echo tracking algorithms. For instance, precipitation leaving the domain might be erroneously detected as having nearly stationary velocity.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_LK_buffer_mask_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_LK_buffer_mask.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Handling of no-data in Lucas-Kanade</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This example demonstrates how to use ANVIL and the advantages compared to extrapolation nowcast and S-PROG.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_anvil_nowcast_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_anvil_nowcast.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">ANVIL nowcast</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This tutorial shows how to construct a simple linear blending between a STEPS ensemble nowcast and a Numerical Weather Prediction (NWP) rainfall forecast. The used datasets are from the Bureau of Meteorology, Australia.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_plot_linear_blending_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_plot_linear_blending.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Linear blending</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="In this example we test the convergence of the optical flow methods available in pysteps using idealized motion fields.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_optical_flow_methods_convergence_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_optical_flow_methods_convergence.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Optical flow methods convergence</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This tutorial demonstrates how to construct a blended rainfall forecast by combining an ensemble nowcast with an ensemble Numerical Weather Prediction (NWP) forecast. The method follows the Reduced-Space Ensemble Kalman Filter approach described in Nerini2019MWR.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_ens_kalman_filter_blended_forecast_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_ens_kalman_filter_blended_forecast.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Ensemble-based Blending</div>
    </div>


.. raw:: html

    <div class="sphx-glr-thumbcontainer" tooltip="This tutorial shows how to construct a blended forecast from an ensemble nowcast using the STEPS approach and a Numerical Weather Prediction (NWP) rainfall forecast. The used datasets are from the Bureau of Meteorology, Australia.">

.. only:: html

  .. image:: /auto_examples/images/thumb/sphx_glr_steps_blended_forecast_thumb.png
    :alt:

  :ref:`sphx_glr_auto_examples_steps_blended_forecast.py`

.. raw:: html

      <div class="sphx-glr-thumbnail-title">Blended forecast</div>
    </div>


.. thumbnail-parent-div-close

.. raw:: html

    </div>


.. toctree::
   :hidden:

   /auto_examples/plot_optical_flow
   /auto_examples/advection_correction
   /auto_examples/probability_forecast
   /auto_examples/plot_extrapolation_nowcast
   /auto_examples/plot_noise_generators
   /auto_examples/rainfarm_downscale
   /auto_examples/plot_custom_precipitation_range
   /auto_examples/data_transformations
   /auto_examples/thunderstorm_detection_and_tracking
   /auto_examples/plot_cascade_decomposition
   /auto_examples/plot_steps_nowcast
   /auto_examples/linda_nowcasts
   /auto_examples/plot_ensemble_verification
   /auto_examples/LK_buffer_mask
   /auto_examples/anvil_nowcast
   /auto_examples/plot_linear_blending
   /auto_examples/optical_flow_methods_convergence
   /auto_examples/ens_kalman_filter_blended_forecast
   /auto_examples/steps_blended_forecast


.. only:: html

  .. container:: sphx-glr-footer sphx-glr-footer-gallery

    .. container:: sphx-glr-download sphx-glr-download-python

      :download:`Download all examples in Python source code: auto_examples_python.zip </auto_examples/auto_examples_python.zip>`

    .. container:: sphx-glr-download sphx-glr-download-jupyter

      :download:`Download all examples in Jupyter notebooks: auto_examples_jupyter.zip </auto_examples/auto_examples_jupyter.zip>`


.. only:: html

 .. rst-class:: sphx-glr-signature

    `Gallery generated by Sphinx-Gallery <https://sphinx-gallery.github.io>`_
