B
    à‹dM  ã               @   s\   d Z ddlZddlZdZddlmZ ddlmZ dd„ Z	d	d
„ Z
dd„ Zdd„ Zdd„ ZdS )zf
This module provides a few time-related utilities that have been used in
burst searches in the past.
é    Nz"Kipp Cannon <kipp.cannon@ligo.org>é   )Údate)Úversionc             C   s   t  | d|||¡S )N)g        g        g        )ÚlalZArrivalTimeDiff)ÚposÚraÚdecÚgps© r
   úZ/work/yifan.wang/ringdown/master-ringdown-env/lib/python3.7/site-packages/lalburst/date.pyÚXLALTimeDelayFromEarthCenter5   s    r   c             C   s>   t t t| ƒ¡ƒ}d|d< d|d< d|d< t t t|ƒ¡¡S )z+
	Truncate a LIGOTimeGPS to UTC midnight.
	r   é   é   é   )Úlistr   ZGPSToUTCÚintZLIGOTimeGPSZUTCToGPSÚtuple)r	   Útmr
   r
   r   Úutc_midnightB   s
    r   c             c   s@   t | ƒ}|| k rt |d ƒ}x||k r:|V  t |d ƒ}qW dS )zB
	Iterator for generating LIGOTimeGPS objects for UTC midnights.
	i‚Q N)r   )ÚstartÚendÚmidnightr
   r
   r   ÚUTCMidnightsR   s    
r   c             C   s.   t  | ¡}|dtj  }|r$||8 }t  |¡S )z<
	Truncate a LIGOTimeGPS to Greenwich mean sidereal 0 rad.
	g       @)r   ZGreenwichMeanSiderealTimeÚmathÚpiZGreenwichMeanSiderealTimeToGPS)r	   ZgmstZresidualr
   r
   r   Úgmst_0ha   s
    
r   c             c   s@   t | ƒ}|| k rt |d ƒ}x||k r:|V  t |d ƒ}qW dS )zP
	Iterator for generating LIGOTimeGPS objects for Greenwich Mean
	Sidereal 0h.
	i‚Q N)r   )r   r   r   r
   r
   r   ÚGMST_0hsl   s    
r   )Ú__doc__r   r   Ú
__author__Zgit_versionr   Ú__date__r   Ú__version__r   r   r   r   r   r
   r
   r
   r   Ú<module>   s   