Running the tutorials
---------------------

Tutorials in the form of Jupyter notebooks and showcasing ``VIP``'s usage can be visualised within this documentation.
**In order to execute the notebook tutorials, you will have to download or clone the VIP-extras repository, and open each tutorial locally with jupyter notebook.**
The ``VIP-extras`` repository is available `here <https://github.com/vortex-exoplanet/VIP_extras>`_.
Alternatively, you can execute these tutorials on
`Binder <https://mybinder.org/v2/gh/vortex-exoplanet/VIP_extras/master>`_.

If you are new to the Jupyter notebook application check out the `beginner's guide
<https://jupyter-notebook-beginner-guide.readthedocs.io/en/latest/what_is_jupyter.html>`_.

For notebooks 1 and 3, an object-oriented version is available, leveraging new Dataset and Post-processing algorithm Classes.
Note that these tutorials (1B and 3B) will only run for Python versions 3.10 or later.

A summary of available notebooks is provided below:

- `Tutorial 1A <https://vip.readthedocs.io/en/latest/tutorials/01A_quickstart.html>`_: Quick-start tutorial showcasing basic usage;
- `Tutorial 1B <https://vip.readthedocs.io/en/latest/tutorials/01B_quickstart_with_objects.html>`_: Quickstart with VIP's object-oriented framework;
- `Tutorial 2 <https://vip.readthedocs.io/en/latest/tutorials/02_preproc.html>`_: pre-processing functionalities available in VIP (star centering, bad frame trimming, bad pixel correction, etc.);
- `Tutorial 3A <https://vip.readthedocs.io/en/latest/tutorials/03A_psfsub_ADI.html>`_: example usage for all ADI-based post-processing algorithms implemented in VIP;
- `Tutorial 3B <https://vip.readthedocs.io/en/latest/tutorials/03B_psfsub_ADI_as_objects.html>`_: Same as above with the object-oriented framework;
- `Tutorial 4 <https://vip.readthedocs.io/en/latest/tutorials/04_metrics.html>`_: metrics to evaluate the significance of a detection or the achieved contrast in your images;
- `Tutorial 5A <https://vip.readthedocs.io/en/latest/tutorials/05A_fm_planets.html>`_: how to characterize a directly imaged companion;
- `Tutorial 5B <https://vip.readthedocs.io/en/latest/tutorials/05B_fm_disks.html>`_: how to characterize a circumstellar disk;
- Tutorial 5C (coming soon): how to characterize a companion in a disk using JWST observations ;
- `Tutorial 6 <https://vip.readthedocs.io/en/latest/tutorials/06_psfsub_fm_RDI.html>`_: post-processing algorithms leveraging reference star differential imaging;
- `Tutorial 7 <https://vip.readthedocs.io/en/latest/tutorials/07_psfsub_fm_IFS-ASDI_planets.html>`_:
post-processing algorithms leveraging spectral differential imaging;
- `Tutorial 8 <https://vip.readthedocs.io/en/latest/tutorials/08_imlib_and_interpolation.html>`_: the difference between FFT- and interpolation-based image operations (rotation, shifts, scaling).
