
    R1i                     d    d dl mZ  G d dej                        Z G d dej                        Zy)   )vallado_cppc                       e Zd ZdZdZd Zy)Satrecz=High-speed computation of satellite positions and velocities. c                     |j                  dd      }|j                  dd      }|j                  }|d   df}t        |      } ||d      } ||d      } ||d      }| j                  |||||       |||fS )a  Compute positions and velocities for the times in a NumPy array.

        Given NumPy arrays ``jd`` and ``fr`` of the same length that
        supply the whole part and the fractional part of one or more
        Julian dates, return a tuple ``(e, r, v)`` of three vectors:

        * ``e``: nonzero for any dates that produced errors, 0 otherwise.
        * ``r``: position vectors in kilometers.
        * ``v``: velocity vectors in kilometers per second.

        float64Fcopy       uint8)astypeshapetype_sgp4)	selfjdfreshapefshapearrayervs	            P/home/cursorai/projects/iching/venv/lib/python3.12/site-packages/sgp4/wrapper.py
sgp4_arrayzSatrec.sgp4_array   s     YYyuY-YYyuY-AR&'"&)$&)$

2r1a#!Qw    N)__name__
__module____qualname____doc__	__slots__r   r   r   r   r   r      s    GIr   r   c                       e Zd ZdZdZd Zy)SatrecArrayzBHigh-speed satellite array for computing positions and velocities.r   c                    |j                  dd      }|j                  dd      }t        |       }|j                  \  }||f}||df}t        |      } ||d      } ||d      }	 ||d      }
| j	                  ||||	|
       ||	|
fS )a  Compute positions and velocities for the satellites in this array.

        Given NumPy scalars or arrays ``jd`` and ``fr`` supplying the
        whole part and the fractional part of one or more Julian dates,
        return a tuple ``(e, r, v)`` of three vectors:

        * ``e``: nonzero for any dates that produced errors, 0 otherwise.
        * ``r``: position vectors in kilometers.
        * ``v``: velocity vectors in kilometers per second.

        The first dimension of each output vector has the same length as
        this satellite array, the second dimension the same length as
        the input date arrays, and the third dimension has length 3.

        r   Fr	   r   r   )r   lenr   r   r   )r   r   r   ilengthjlengthr   r   r   r   r   r   s              r   sgp4zSatrecArray.sgp4&   s      YYyuY-YYyuY-d)88'!'1$R&'"&)$&)$

2r1a#!Qwr   N)r   r   r    r!   r"   r)   r   r   r   r$   r$   !   s    LIr   r$   N) r   r   r$   r   r   r   <module>r+      s,    [ <"+)) "r   