B
    —ˆÎ]
  ã               @   s   d Z ddlZdd	d
„ZdS )zO
File of helper functions for cbp exposures on the StarDICE system

N. Mondrik
é    NçH¯¼šò×z>é   é,  Tç     €q@ç      D@c             C   s¨   t  | ¡} |d }t  d¡}t  | |dd…df ||dd…df  ¡}	t  |	¡| }
||
|	|k < ||	|	|k < ||	|	|k< t|	ƒdkr”|	d }	|
d }
|r |	|
fS |	S dS )a  
    :param wavelength: Wavelength[s] for which exposure time is to be calculated.  Must be in descending order.
    :param charge_level: Target charge level on integrating sphere photodiode
    :param tmin: Minimum exposure time.
    :param tmax: Maximum exposure time.
    :param return_nd_pos: Specifies whether to return an array of ND filter wheel positions
    :param nd_max: ND filter wheel angle for maximum throughput
    :param nd_min: ND filter wheel angle for minimum throughput

    :return t: Estimated exposure time 
    gH¯¼šò×z>zExpected_exp_times_1e-7.txtNr   r   )ÚnpÚ
atleast_1dÚloadtxtÚinterpÚ	ones_likeÚlen)Ú
wavelengthZcharge_levelÚtminÚtmaxZreturn_nd_posZnd_maxZnd_minZscale_factorZmapfileÚtZnd_pos© r   ú*/home/dice/stardice/scheduler/cbpassist.pyÚcalc_exp_time
   s    

*r   )r   r   r   Tr   r   )Ú__doc__Únumpyr   r   r   r   r   r   Ú<module>   s   