yieldplotlib.load.ayo.ayo_input
===============================

.. py:module:: yieldplotlib.load.ayo.ayo_input

.. autoapi-nested-parse::

   Node for handling input .ayo files.



Attributes
----------

.. autoapisummary::

   yieldplotlib.load.ayo.ayo_input.read
   yieldplotlib.load.ayo.ayo_input.zodis


Classes
-------

.. autoapisummary::

   yieldplotlib.load.ayo.ayo_input.AYOInputFile


Module Contents
---------------

.. py:data:: read
   :value: None


.. py:data:: zodis
   :value: None


.. py:class:: AYOInputFile(file_path)

   Bases: :py:obj:`yieldplotlib.core.file_nodes.FileNode`


   Node for handling AYO input files using PyParsing.


   .. py:attribute:: data


   .. py:attribute:: is_input
      :value: True



   .. py:method:: load()

      Load the text file into memory.



   .. py:method:: _get(key, **kwargs)

      Return the data associated with the key.



   .. py:method:: parse()

      Parse the AYO input file and populate the self.data dictionary.



   .. py:method:: _convert_array(tokens)

      Convert parsed array tokens to a Python list.



   .. py:method:: _convert_unit(parsed_unit)

      Convert parsed unit string to the appropriate astropy unit.



   .. py:method:: export_exosims(output_path, base_file = None, detection_wavelength_nm = None, characterization_wavelength_nm = None, **kwargs)

      Export the AYO input to an EXOSIMS JSON file.

      Args:
          output_path:
              Path to write the output JSON file.
          base_file:
              Optional path to a base EXOSIMS JSON file. If provided, AYO
              parameters will overwrite equivalent parameters in the base file,
              and all other parameters will be preserved.
          detection_wavelength_nm:
              Wavelength in nanometers to use for detection mode. The closest
              wavelength in the lambda array will be selected. If None, uses
              the middle wavelength (default).
          characterization_wavelength_nm:
              Wavelength in nanometers to use for characterization mode. The
              closest wavelength in the sc_lambda array will be selected. If
              None, uses the middle wavelength (default).
          **kwargs:
              Additional keyword arguments to include in the output JSON.
              These will overwrite any existing values. Useful for setting
              paths like cachedir, e.g.:
                  cachedir="$HOME/.EXOSIMS/2025/Natasha_JATIS"



