.. _sec-intro:
Introduction
============
In this documentation, you will find step-by-step instructions on setting up
the package, detailed descriptions of its components, and all necessary
information to fully leverage its functionalities.
Given the abundance of image processing software available, it is essential to
clearly define the motivations behind :mod:`piva`, as well as its capabilities
and limitations. This will provide users with a comprehensive overview of the
package, highlighting the aspects that may be beneficial for their research
or work.
What is :mod:`piva`
-------------------
:mod:`piva` is a GUI application based on the :mod:`PyQt5` and
:mod:`pyqtgraph` toolkits, designed for the interactive and intuitive
exploration of large image-like datasets. While it can generally display any
multidimensional data, most of its functionalities are tailored for users
performing Angle-Resolved Photoemission Spectroscopy (ARPES) experiments.
Graphical Interface and Interactive Viewers
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The showcase video presented below offers a demonstration of the GUI's layout
and overall user experience, while also highlighting its core functionalities
and key features in action.
.. raw:: html
The package allows for live investigation of various datasets individually, as
well as linking separate datasets for simultaneous browsing. Interactive
sliders enable the display of multidimensional data across all available
directions (see :ref:`DataViewers `). In addition to numerous
image processing methods, PIVA can represent ARPES images in momentum space
and apply corrections specific to the experimental conditions under which the
data were acquired.
Several utilities are particularly useful during the experimental phase, such
as automated methods for finding the highest symmetry points, azimuthal
rotation, and autogenerated experimental notebooks implemented for
:ref:`various beamlines ` at synchrotron sources worldwide.
The :ref:`Fitters ` and :ref:`PlotTool `
applications offer additional functionalities for detailed analysis and
personalized representation of acquired results.
Data Format Standardization
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Moreover, :mod:`piva` translates raw data into a standardized
:ref:`Dataset ` object, addressing the issue of diverse data
formats within the ARPES community. The :ref:`Dataset ` can be
easily used outside of :mod:`piva` by simply importing the
:ref:`data_loaders.py ` module.
Analysis Tools
~~~~~~~~~~~~~~
Unlike other experimental techniques, discrepancies in ARPES results between
different physical systems necessitate the implementation of unique analysis
methods for nearly every investigated system. To address this, :mod:`piva`
includes a generic toolkit for handling photoemission results that can be
further tailored to meet specific user needs. Additionally, it offers
straightforward tools for exporting loaded datasets and opening them with a
``jupyter-lab`` notebook for more sophisticated analysis requiring hands-on
scripting.
Custom Add-ons
~~~~~~~~~~~~~~
The architecture of the :mod:`piva` package is designed with modularity in
mind, providing users with a convenient platform for implementing custom data
loaders and other plugins. Detailed descriptions and examples of
configuring new modules can be found in this documentation.
----
In summary, :mod:`piva` provides an efficient, intuitive GUI application for
examining multiple datasets and includes a platform for importing data into a
convenient format. It is based on ``python`` and ``jupyter-lab`` environments,
allowing users to easily conduct detailed analyses of their acquired data.