pyROX.collision_induced_absorption
==================================

.. py:module:: pyROX.collision_induced_absorption


Submodules
----------

.. toctree::
   :maxdepth: 1

   /autoapi/pyROX/collision_induced_absorption/cia/index
   /autoapi/pyROX/collision_induced_absorption/cia_borysow/index
   /autoapi/pyROX/collision_induced_absorption/cia_hitran/index


Classes
-------

.. autoapisummary::

   pyROX.collision_induced_absorption.CIA_HITRAN
   pyROX.collision_induced_absorption.CIA_Borysow
   pyROX.collision_induced_absorption.CIA


Package Contents
----------------

.. py:class:: CIA_HITRAN(config, **kwargs)

   Bases: :py:obj:`pyROX.collision_induced_absorption.cia.CIA`


   Class for handling CIA data from HITRAN.


   .. py:method:: _read_absorption_coefficients(file)

      Reads absorption coefficients from a HITRAN CIA file.

      :param file: Path to the HITRAN CIA file.
      :type file: str

      :returns: Temperature grid, absorption coefficients (k), and absorption coefficients (alpha).
      :rtype: tuple

      :raises FileNotFoundError: If the specified file does not exist.



.. py:class:: CIA_Borysow(config, **kwargs)

   Bases: :py:obj:`pyROX.collision_induced_absorption.cia.CIA`


   Class for handling Collision-Induced Absorption (CIA) data from Borysow.


   .. py:method:: _read_absorption_coefficients(file)

      Reads absorption coefficients from a Borysow CIA file.

      :param file: Path to the Borysow CIA file.
      :type file: str

      :returns: Temperature grid, absorption coefficients (k), and absorption coefficients (alpha).
      :rtype: tuple

      :raises FileNotFoundError: If the specified file does not exist.



.. py:class:: CIA(config, **kwargs)

   Bases: :py:obj:`pyROX.CrossSections`


   Base class for Collision-Induced Absorption (CIA) data handling.


   .. py:method:: download_data(config)

      Download CIA data from HITRAN or Borysow.

      :param config: Configuration object containing URLs and input data directory.
      :type config: object

      :raises ValueError: If any file fails to download.



   .. py:method:: calculate_temporary_outputs(overwrite=False, **kwargs)

      Calculate the CIA coefficients and save temporary outputs.

      :param overwrite: Whether to overwrite existing temporary files.
      :type overwrite: bool
      :param \*\*kwargs: Additional arguments for calculation.



   .. py:method:: save_combined_outputs(**kwargs)

      Save the merged CIA outputs to a file.

      :param \*\*kwargs: Additional arguments for saving.



   .. py:method:: plot_combined_outputs(return_fig_ax=False, cmap='coolwarm', xscale='log', yscale='log', xlim=None, ylim=None, **kwargs)

      Plot the merged CIA coefficients.

      :param return_fig_ax: Whether to return the figure and axes objects.
      :type return_fig_ax: bool
      :param cmap: Colormap for the plot.
      :type cmap: str
      :param xscale: Scale for the x-axis ('linear' or 'log').
      :type xscale: str
      :param yscale: Scale for the y-axis ('linear' or 'log').
      :type yscale: str
      :param xlim: Limits for the x-axis.
      :type xlim: tuple, optional
      :param ylim: Limits for the y-axis.
      :type ylim: tuple, optional
      :param \*\*kwargs: Additional arguments for plotting.



   .. py:method:: convert_to_pRT3(contributor=None, **kwargs)

      Convert the CIA data to petitRADTRANS v3.0 format.

      :param contributor: Name of the contributor for these data.
      :type contributor: str
      :param \*\*kwargs: Additional arguments for conversion.

      :raises ValueError: If required metadata is missing in the configuration.
      :raises KeyError: If required keys are missing in the metadata.



