:py:mod:`gnn_tracking.preprocessing.exatrkx_cell_features`
==========================================================

.. py:module:: gnn_tracking.preprocessing.exatrkx_cell_features


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

Classes
~~~~~~~

.. autoapisummary::

   gnn_tracking.preprocessing.exatrkx_cell_features.DetectorRotations
   gnn_tracking.preprocessing.exatrkx_cell_features.DetectorThicknesses
   gnn_tracking.preprocessing.exatrkx_cell_features.DetectorPixelSize



Functions
~~~~~~~~~

.. autoapisummary::

   gnn_tracking.preprocessing.exatrkx_cell_features.load_detector
   gnn_tracking.preprocessing.exatrkx_cell_features.preprocess_detector
   gnn_tracking.preprocessing.exatrkx_cell_features.determine_array_size
   gnn_tracking.preprocessing.exatrkx_cell_features.cartesian_to_spherical
   gnn_tracking.preprocessing.exatrkx_cell_features.theta_to_eta
   gnn_tracking.preprocessing.exatrkx_cell_features.get_all_local_angles
   gnn_tracking.preprocessing.exatrkx_cell_features.get_all_rotated
   gnn_tracking.preprocessing.exatrkx_cell_features.extract_dir_new
   gnn_tracking.preprocessing.exatrkx_cell_features.augment_hit_features



Attributes
~~~~~~~~~~

.. autoapisummary::

   gnn_tracking.preprocessing.exatrkx_cell_features.cf_logger


.. py:data:: cf_logger

   

.. py:function:: load_detector(detector_path: pathlib.Path) -> tuple[pandas.DataFrame, dict]

   Adapted/copied from ExaTrkX's preprocessing. See docstring above.

   WARNING: This might create a race condition with creating the preprocessed file.


.. py:function:: preprocess_detector(detector: pandas.DataFrame) -> dict

   Adapted/copied from ExaTrkX's preprocessing. See docstring above.


.. py:function:: determine_array_size(detector: pandas.DataFrame) -> tuple[float, float, float]

   Adapted/copied from ExaTrkX's preprocessing. See docstring above.


.. py:class:: DetectorRotations(detector: pandas.DataFrame)


   Adapted/copied from ExaTrkX's preprocessing. See docstring above.

   .. py:method:: get_rotations()


   .. py:method:: _init_rotation_array()


   .. py:method:: _extract_all_rotations()


   .. py:method:: _extract_rotation_matrix(mod)

      Extract the rotation matrix from module dataframe



.. py:class:: DetectorThicknesses(detector: pandas.DataFrame)


   Adapted/copied from ExaTrkX's preprocessing. See docstring above.

   .. py:method:: get_thicknesses()


   .. py:method:: _init_thickness_array()


   .. py:method:: _extract_all_thicknesses()



.. py:class:: DetectorPixelSize(detector: pandas.DataFrame)


   Adapted from ExaTrkX's preprocessing. See docstring above.

   .. py:method:: get_pixel_size() -> numpy.ndarray


   .. py:method:: _init_size_array()


   .. py:method:: _extract_all_size()



.. py:function:: cartesian_to_spherical(x, y, z)

   Adapted/copied from ExaTrkX's preprocessing. See docstring above.


.. py:function:: theta_to_eta(theta)

   Adapted/copied from ExaTrkX's preprocessing. See docstring above.


.. py:function:: get_all_local_angles(hits: pandas.DataFrame, cells: pandas.DataFrame, detector: dict) -> tuple[pandas.Series, pandas.Series, pandas.Series]

   Adapted/copied from ExaTrkX's preprocessing. See docstring above.


.. py:function:: get_all_rotated(hits: pandas.DataFrame, detector: dict, l_u: pandas.Series, l_v: pandas.Series, l_w: pandas.Series)

   Adapted/copied from ExaTrkX's preprocessing. See docstring above.


.. py:function:: extract_dir_new(hits: pandas.DataFrame, cells: pandas.DataFrame, detector: dict) -> pandas.DataFrame

   Adapted/copied from ExaTrkX's preprocessing. See docstring above.


.. py:function:: augment_hit_features(hits: pandas.DataFrame, cells: pandas.DataFrame, detector_proc: dict)

   Adapted/copied from ExaTrkX's preprocessing. See docstring above.


