ó
šßÈ[c           @` sf  d  Z  d d l m Z m Z m Z m Z d d l m Z d d l Z d d l	 Z
 d d l m Z d d l m Z d d l m Z d d	 l m Z d
 „  Z e j j d e j e j e j f ƒ d „  ƒ Z e j e j e j g Z e j j d e ƒ d „  ƒ Z e j j d e ƒ d „  ƒ Z e j j d e ƒ d „  ƒ Z  e j j d e ƒ d „  ƒ Z! e j j d e ƒ d „  ƒ Z" e j j d e ƒ d „  ƒ Z# dD Z$ e j j dE e% e e e$ ƒ ƒ ƒ d „  ƒ Z& d d e j' d f Z) e j j dF e% e e e) ƒ ƒ ƒ d „  ƒ Z* d „  Z+ d „  Z, d „  Z- d „  Z. d „  Z/ d  „  Z0 d! „  Z1 e j j dG d$ d% d& g e j2 f d' d( d) g e j3 d* f d+ d, d- g e j4 f d. d/ d0 g e j5 f g ƒ d1 „  ƒ Z6 d2 „  Z7 d3 „  Z8 d4 „  Z9 d5 „  Z: d6 „  Z; d7 „  Z< d8 „  Z= d9 „  Z> d: „  Z? d; „  Z@ d< „  ZA d= „  ZB d> „  ZC d? „  ZD d@ „  ZE dA „  ZF dB „  ZG dC „  ZH d S(H   u.   Separate tests specifically for equivalencies.i    (   t   absolute_importt   unicode_literalst   divisiont   print_functioni   (   t   zipN(   t   assert_allclose(   t   units(   t	   constants(   t   assert_quantity_allclosec          ` s  t  j ƒ  ‰  t  j j d d ˆ  ƒd k s0 t ‚ t  j j d d ˆ  ƒt  j j t  j ƒ k sc t ‚ t  j j d d ˆ  ƒd k s‡ t ‚ t  j j t  j d ˆ  ƒd k s® t ‚ d t  j j	 d d ˆ  ƒd k sÖ t ‚ d t  j j	 d d ˆ  ƒt  j j t  j ƒ k st ‚ d t  j j	 d d ˆ  ƒd k s5t ‚ d t  j
 t  j d }  t  j d t  j } d |  | d } | j t  j d ˆ  ƒ} t | j | t  j d j	 t  j ƒ ƒ d t  j f ‡  f d †  ƒ  Y} | d t  j ƒ } | j	 d ƒ t  j j t  j ƒ k st ‚ d  S(	   Ni   t   equivalenciesg      ð?gž\Cð·kFIi   g      à?t   MyRad1c           ` s   e  Z ˆ  Z RS(    (   t   __name__t
   __module__t   _equivalencies(    (   t   rad1(    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyR
   +   s   (   t   ut   dimensionless_anglest   radiant   tot   AssertionErrort   degt   radt	   steradiant   dimensionless_unscaledt   to_valuet   gt   cmt   cyclet   st   ergR   t   valuet   Quantity(   t   It   Omegat   Erott   Erot_in_erg1R
   t   phase(    (   R   sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_dimensionless_angles   s     $3$'(7('u   log_unitc         C` s   t  j t j ƒ  |  j d d ƒ Wd  QXt  j t j ƒ  t j j |  ƒ Wd  QX|  j d d d t j ƒ  ƒd k s| t ‚ t j j |  d t j ƒ  ƒd k s¦ t ‚ t j	 d d d d g ƒ t j
 } d | j t j } | j |  ƒ } t j | j d d t j ƒ  ƒ| k ƒ st ‚ t j | j |  d t j ƒ  ƒ| k ƒ sKt ‚ t j t j ƒ  ƒ : t j t j | | j |  ƒ ƒ d |  k  ƒ s–t ‚ Wd  QXd  S(	   Ni   g        R	   g      ð?g      ð¿g       @g      $@g»½×Ùß|Û=(   t   pytestt   raisesR   t
   UnitsErrorR   R   t   logarithmicR   t   npt   arrayt   dexR   t   allt   set_enabled_equivalenciest   abs(   t   log_unitt   q_dext
   q_expectedt
   q_log_unit(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_logarithmic2   s"    *"u   functionc         C` sK   d t  j } | j t  j t  j d |  | ƒ ƒ} | j d k sG t ‚ d  S(   Ngq=
×£@Z@R	   i    (   R   t   GHzR   t   kmR   R   R   (   t   functiont   restt   velo0(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_doppler_frequency_0N   s    %c         C` s_   d t  j } d t  j } | j t  j t  j d |  | ƒ ƒ} t j j | j	 d d d ƒd  S(   Ngq=
×£@Z@g]ZÁ¾%cg?R	   i    t   decimali   (
   R   R5   t   mR   R6   R   R*   t   testingt   assert_almost_equalR   (   R7   R8   t   q1R9   (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_doppler_wavelength_0U   s    %c         C` s_   d t  j } d t  j } | j t  j t  j d |  | ƒ ƒ} t j j | j	 d d d ƒd  S(   Ngq=
×£@Z@gÂOæ%v<?R	   i    R;   i   (
   R   R5   t   eVR   R6   R   R*   R=   R>   R   (   R7   R8   R?   R9   (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_doppler_energy_0]   s    %c         C` s€   d t  j } d t  j } | j t  j t  j d |  | ƒ ƒ} | j t  j d |  | ƒ ƒ} t j j | j | j d d ƒd  S(   Ngq=
×£@Z@gR¸…ëAZ@R	   R;   i   (	   R   R5   R   R6   R   R*   R=   R>   R   (   R7   R8   t   shiftedt   velot   freq(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_doppler_frequency_circlee   s
    %c         C` s€   d t  j } d t  j } | j t  j t  j d |  | ƒ ƒ} | j t  j d |  | ƒ ƒ} t j j | j | j d d ƒd  S(   Ngq=
×£@Z@gR¸…ëAZ@R	   R;   i   (	   R   t   nmR   R6   R   R*   R=   R>   R   (   R7   R8   RC   RD   t   wav(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_doppler_wavelength_circlen   s
    %c         C` s€   d t  j } d t  j } | j t  j t  j d |  | ƒ ƒ} | j t  j d |  | ƒ ƒ} t j j | j | j d d ƒd  S(   Ng>yX¨5Íð?g Òo_Îð?R	   R;   i   (	   R   RA   R   R6   R   R*   R=   R>   R   (   R7   R8   RC   RD   t   en(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_doppler_energy_circlew   s
    %gÝf'3?@g€ç3?@gos‡3?@u   valuec         C` s_   d t  j } d t  j t  j } | j t  j d |  | ƒ ƒ} t j j | j | d d ƒd  S(   Niè  i   R	   R;   i   (	   R   R5   R6   R   R   R*   R=   R>   R   (   R7   R   R8   RD   RC   (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt
   test_30kmsƒ   s    i   c         C` s'   t  j t j ƒ  |  | ƒ Wd  QXd  S(   N(   R&   R'   R   R(   (   R7   R   (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_bad_restfreqs   s    c          C` s  t  j d d d d d g t  j ƒ }  t  j d d d d	 d
 g t  j ƒ } t j |  j t  j d t  j ƒ  ƒ| j d d ƒs t	 ‚ t j | j t  j d t  j ƒ  ƒ|  j d d ƒsº t	 ‚ t  j d t  j t  j
 d ƒ } t  j d t  j t  j d ƒ } t j | j t  j t  j d d t  j ƒ  ƒ| j d d ƒs>t	 ‚ t j | j t  j t  j
 d d t  j ƒ  ƒ| j d d ƒs‚t	 ‚ t  j d t  j t  j
 d ƒ } t  j d t  j t  j d ƒ } t j | j t  j t  j d d t  j ƒ  ƒ| j d d ƒst	 ‚ t j | j t  j t  j
 d d t  j ƒ  ƒ| j d d ƒsJt	 ‚ t  j d t  j t  j ƒ } t  j d
 t  j t  j ƒ } t j | j t  j t  j d t  j ƒ  ƒ| j d d ƒsÂt	 ‚ t j | j t  j t  j d t  j ƒ  ƒ| j d d ƒst	 ‚ d  S(   NgË¡E¶[0Ag   —röËAg   ¡P ÌAg   à0™AgtãºéK¨»FgAµR:gQßñÿ5- ;gŒø¶Të2 ;g»K»Öo%Í:i   R	   t   rtolgH¯¼šò×z>i   g-Cëâ6?i   gíµ ÷Æ°>(   R   R   RA   R   R*   t   allcloseR   t   mass_energyR   R   R<   R   R   (   t   mass_eVt   mass_gt   sdens_eVt   sdens_gt   dens_eVt   dens_gt   pow_eVt   pow_g(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_massenergy–   s@    !!        c           C` s  t  j j t  j ƒ s t ‚ t  j j t  j ƒ s6 t ‚ t  j j t  j ƒ sR t ‚ t  j j t  j t  j ƒ  ƒ sv t ‚ t  j	 j t  j
 ƒ s’ t ‚ t  j	 j t  j
 t  j ƒ  ƒ s¶ t ‚ t  j
 j t  j	 t  j ƒ  ƒ sÚ t ‚ t  j j t  j t  j ƒ  ƒ sþ t ‚ t  j j t  j t  j ƒ  ƒ s"t ‚ t  j j t  j t  j t  j f ƒ sLt ‚ t  j j t  j t  j t  j f ƒ svt ‚ t  j j t  j t  j t  j f ƒ s t ‚ t  j j t  j t  j t  j f ƒ sËt ‚ t  j t  j j t  j t  j t  j f ƒ sýt ‚ d  S(   N(   R   R<   t   is_equivalentt   pcR   R   t   masR   R   t   Hzt   Jt   spectralt	   arcsecondt   parallaxt	   arcminutet   auR   R   t   kgt   msR   t   LR6   (    (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_is_equivalentË   s    $$$$***+c          C` s¼   t  j j t  j d t  j ƒ  ƒ }  t |  d ƒ t  j j t  j |  t  j ƒ  ƒ } t | d ƒ t  j j t  j d t  j ƒ  ƒ }  t |  d ƒ t  j j t  j |  t  j ƒ  ƒ } t | d ƒ d  S(   Ni
   gš™™™™™¹?i   gÛõw[~Ûª@(   R   R`   R   R[   Ra   R   Rb   Rc   (   t   at   b(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_parallaxß   s    !!!!c          C` s>   t  j j t  j d d g t  j ƒ  ƒ }  t |  d d g ƒ d  S(   Ngš™™™™™¹?g      @i
   gš™™™™™Ù?(   R   R`   R   R[   Ra   R   (   Rh   (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_parallax2ë   s    'c          C` s  t  j j t  j d t  j ƒ  ƒ }  t |  d ƒ t  j j t  j |  t  j ƒ  ƒ } t | d ƒ t  j j t  j d t  j ƒ  ƒ }  t |  d ƒ t  j j t  j |  t  j ƒ  ƒ } t | d ƒ t  j j t  j d t  j ƒ  ƒ }  t |  d ƒ t  j j t  j |  t  j ƒ  ƒ } t | d ƒ d  S(   Ni   gó'ËBbÍÄCgÿÿTÖÐ…BgÿÿÿIxÞ±A(   R   t   AAR   R]   R_   R   t   MHzR<   (   Rh   Ri   (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_spectralð   s    !!!!!!c          C` sþ   t  j j t  j d t  j ƒ  ƒ }  t |  d ƒ t  j j t  j |  t  j ƒ  ƒ } t | d ƒ t  j j t  j d t  j ƒ  ƒ }  t  j j t  j |  t  j ƒ  ƒ } t  j j t  j d t  j ƒ  ƒ } t | | ƒ t  j j t  j | t  j ƒ  ƒ } t |  | ƒ d  S(   Niô  g÷Úoa”P<i   (   R   RG   R   R^   R_   R   Rl   R]   (   Rh   Ri   t   c(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_spectral2  s    !!!!!!c          C` s>   t  j j t  j d d g t  j ƒ  ƒ }  t |  d d g ƒ d  S(   Niè  iÐ  g hrï
ñBg hrï
áB(   R   RG   R   R]   R_   R   (   Rh   (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_spectral3  s    'u   in_valu   in_unitgš™™™™™¹?g     ˆ³@g     ˆÃ@g     jø@g       @g      ð?iÿÿÿÿgññ}Óº úCg hrï
Cg hrï
ñBg½Žø3Š]=g#Ýa”P<g€£ `”P<c         C` s¯   t  j d t  j t  j g } d d d g d d d g g } xm t | | ƒ D]\ \ } } | j | |  t  j ƒ  ƒ } t | | ƒ | j | | t  j ƒ  ƒ } t | |  ƒ qK Wd S(	   u;   Wave number conversion w.r.t. wavelength, freq, and energy.iÿÿÿÿg     jø@g       @g      ð?gd;ß½,#AgñÔÈSû!)@gh¡tTû!@N(   R   t   micronR   R   R   R_   R   (   t   in_valt   in_unitt	   out_unitst   answerst   out_unitt   ansRh   Ri   (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_spectral4  s    	c          C` s$  t  j t  j t  j d t  j }  t  j t  j t  j d t  j } |  j | d t  j t  j d t  j	 ƒ ƒ ƒ } t
 | d ƒ t  j t  j t  j } t  j t  j t  j } | j | d t  j t  j d t  j	 ƒ ƒ ƒ } t
 | d ƒ | j | d t  j t  j d t  j	 ƒ ƒ ƒ } t
 | d ƒ d  S(   Ni   i   i¬  gv’Q{›ø‘=g²mz}LB(   R   R   t   angstromR   R   R]   R   t   spectral_densityR   Rl   R   (   t   flambdat   fnuRh   t   llambdat   lnu(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_spectraldensity2+  s    ""---c       	   C` sh  t  j }  t  j t  j d t  j t  j } t  j d t  j ƒ } t |  j	 t  j t  j d t  j t  j
 d ƒ d d ƒ t |  j	 t  j t  j d t  j d d t  j | d ƒ ƒd d ƒ t |  j	 | d d t  j | ƒ ƒd d ƒ t | j	 t  j d d t  j | ƒ ƒd
 d ƒ t | j	 t  j t  j d t  j d d t  j t  j d t  j ƒ ƒ ƒd	 d ƒ d  S(   Ni   i   g      ð?gQ²@³-(;i
   R	   g‚vIhÂ%<=g7J—­°ã;g      $@gðñ}Óº úC(   R   t   JyR   R   R   Rr   R   R5   R   R   R]   R{   (   t   f_nut   f_lambdat   one_ghz(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_spectraldensity3>  s     	"8'


'c          C` sÕ  t  j t  j d t  j t  j }  t  j t  j d t  j t  j } t  j t  j d t  j t  j } t  j t  j d t  j t  j } t  j d d d g t  j ƒ } d d d g } d d	 d
 g } d d d g } d d d g } d d d g }	 d d d g }
 d d d g } t | j	 |  | t  j
 | ƒ ƒ | d d ƒt |  j	 | | t  j
 | ƒ ƒ | d d ƒt | j	 | | t  j
 | ƒ ƒ | d d ƒt | j	 | | t  j
 | ƒ ƒ | d d ƒt | j	 t  j | t  j
 | ƒ ƒ |	 d d ƒt t  j j	 | |	 t  j
 | ƒ ƒ | d d ƒt | j	 | | t  j
 | ƒ ƒ | d d ƒt | j	 | | t  j
 | ƒ ƒ | d d ƒt | j	 | | t  j
 | ƒ ƒ | d d ƒt | j	 | | t  j
 | ƒ ƒ | d d ƒt | j	 |  | t  j
 | ƒ ƒ | d d ƒt |  j	 | | t  j
 | ƒ ƒ | d d ƒt | j	 t  j | t  j
 | ƒ ƒ |
 d d ƒt t  j j	 | |
 t  j
 | ƒ ƒ | d d ƒt | j	 t  j | t  j
 | ƒ ƒ | d d ƒt t  j j	 | | t  j
 | ƒ ƒ | d d ƒd S(   u   PHOTLAM and PHOTNU conversions.i   gÍÌÌÌÌ\³@gÍÌÌÌŒ_³@gÍÌÌÌLb³@gìÍáÿƒ?g¨9gN„?gu0Í:
„?g³Û”‡6=g2Æ)/7=gÏ ŸdEŸ6=g®<¨ò&=gîÄÑCº¢&=gˆøˆ	Ù&=gs)N­ÓÐØ:gÙ­/8j†Ù:gìZ7ØväØ:gÃ–u»òk ?gŠòä ?gËÒÇnñx ?g›•HýPÖ(@gœŠu&DÇ(@gàÚ&hÕÕ(@g9º)iîD)@gx\·µC5)@gÌš17C)@RN   gíµ ÷Æ°>N(   R   R   R   R   Rl   R]   t   photonR   R   R   R{   R   t   STmagt   ABmag(   t   flamR}   t   photlamt   photnut   wavet   flux_photlamt   flux_photnut	   flux_flamt   flux_fnut   flux_jyt
   flux_stmagt
   flux_abmag(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_spectraldensity4`  sX    """"	"	"	"	"	%"	"	"	"	"	"	"	%"	%c    	      C` sh  t  j t  j t  j }  t  j t  j t  j } t  j t  j t  j } t  j t  j t  j } t  j d d d g t  j ƒ } d d d g } d d d	 g } d
 d d g } d d d g } t | j |  | t  j	 | ƒ ƒ | d d ƒt |  j | | t  j	 | ƒ ƒ | d d ƒt | j | | t  j	 | ƒ ƒ | d d ƒt | j | | t  j	 | ƒ ƒ | d d ƒt | j | | t  j	 | ƒ ƒ | d d ƒt | j | | t  j	 | ƒ ƒ | d d ƒt | j | | t  j	 | ƒ ƒ | d d ƒt | j | | t  j	 | ƒ ƒ | d d ƒt | j |  | t  j	 | ƒ ƒ | d d ƒt |  j | | t  j	 | ƒ ƒ | d d ƒd S(   u-    Test photon luminosity density conversions. gÍÌÌÌÌ\³@gÍÌÌÌŒ_³@gÍÌÌÌLb³@gìÍáÿƒ?g¨9gN„?gu0Í:
„?g³Û”‡6=g2Æ)/7=gÏ ŸdEŸ6=g®<¨ò&=gîÄÑCº¢&=gˆøˆ	Ù&=gs)N­ÓÐØ:gÙ­/8j†Ù:gìZ7ØväØ:RN   gíµ ÷Æ°>N(
   R   R   R   Rl   R]   R†   R   R   R   R{   (	   t   L_lat   L_nut	   phot_L_lat	   phot_L_nuRŒ   t   flux_phot_L_lat   flux_phot_L_nut	   flux_L_lat	   flux_L_nu(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_spectraldensity5¡  s:    	"	"	"	"	"	"	"	"	"	c          C` sè   d d l  m }  t j |  ƒ ’ t j j ƒ  } t | ƒ } t t j t j t j t j	 t j
 t j t j t j t j |  j |  j |  j |  j |  j g ƒ } | | k s­ t ‚ Wd  QXt | ƒ } | j d ƒ t | ƒ d k sä t ‚ d  S(   Ni   (   t   imperialu   
(   t    Rž   R   t   add_enabled_unitsR   t   find_equivalent_unitst   sett   M_et   M_pRd   t   solMasst   tt   M_eartht   M_jupt   ozt   lbt   stt   tont   slugR   t   reprt   countt   len(   Rž   R   t	   units_sett   matcht   r(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_equivalent_unitsÍ  s    0c       !   C` s^  t  t j j t j ƒ  ƒ ƒ }  t  t j t j t j t j t j t j	 t j
 t j t j t j t j t j t j t j t j t j t j t j g ƒ } |  | k s¨ t ‚ d d l m } t j | ƒ é t  t j j t j ƒ  ƒ ƒ }  t  t j t j | j t j t j t j | j t j	 t j
 t j | j | j | j | j t j t j | j  | j! t j t j t j | j" t j t j | j# t j t j t j g ƒ } |  | k s¬t ‚ Wd  QXt  t j j t j ƒ  ƒ ƒ }  t  t j t j t j t j t j t j	 t j
 t j t j t j t j t j t j t j t j t j t j t j g ƒ } |  | k sZt ‚ d  S(   Ni   (   Rž   ($   R¢   R   R]   R¡   R_   t   AUt   AngstromR^   t   RyR   RA   R   t   lyrR<   Rr   R[   t   solRadt   Bqt   Cit   kt   earthRadt
   jupiterRadR   RŸ   Rž   R    t   BTUt   calt   ftt   furt   incht   kcalt   mit   milt   ydt   nmi(   R   R²   Rž   (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_equivalent_units2Ü  s,    60$$*!60c           C` s:   t  j j t  j d t  j t  j f g ƒd k s6 t ‚ d  S(   NR	   g      ð?(   R   R<   R   Rd   R   (    (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_trivial_equivalency÷  s    c        
   C` sw   t  j t ƒ ' t j j t j d t j f g ƒWd  QXt  j t ƒ * t j j t j d t j d f g ƒWd  QXd  S(   NR	   g      @(   R&   R'   t
   ValueErrorR   R<   R   Rd   (    (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_invalid_equivalencyû  s    (c        	   C` sE   t  j t j ƒ - t j j t j d t j t j f g ƒWd  QXd  S(   NR	   (   R&   R'   R   R(   R<   R   Rd   t   l(    (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_irrelevant_equivalency  s    c          C` s¢   t  j d t j d }  t j d } d t j } t  j j | j d t j	 j
 t j d t j |  | ƒ ƒƒ t  j j d | j
 t j	 d t j |  | ƒ ƒƒ d  S(   Ni2   i   i   gJ­:Ú5@i   R	   g      ð?(   R*   t   piR   t   arcsecR5   t   KR=   R>   R   R   R   t   brightness_temperature(   t   omega_Bt   nut   tb(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_brightness_temperature  s    			c    	      ` së  t  j t  j ƒ  ƒ ;t  j d t  j ƒ }  t t j d |  ƒ d ƒ t  j d t  j } t t j d | d t  j	 ƒ d ƒ t
 j t  j ƒ  |  j d d d  ƒWd  QXt  j |  t  j ƒ } t | j t  j j t  j ƒ ƒ d t j f d „  ƒ  Y} t j d ƒ j | ƒ } d | _ t  j | t  j ƒ } t | j t  j j t  j ƒ ƒ Wd  QXt  j t  j ƒ  ƒ Y t  j j t  j ƒ t  j j ƒ  ‰  t
 j t  j ƒ  t  j j t  j d d  ƒWd  QXWd  QXt  j j ƒ  } t ‡  f d	 †  | Dƒ ƒ sót ‚ t | ƒ t ˆ  ƒ k  st ‚ t  j d
 t  j ƒ } d t  j } | j t  j t  j  d | ƒd t  j t  j  k smt ‚ t  j | ƒ i | d t  j t  j  k st ‚ t! | d t  j t  j  j t  j ƒ ƒ d t  j t  j  k  sát ‚ Wd  QXd  S(   Ng      ð?y              ð?g      N@i   R	   t   MyQuantityLookalikec           B` s   e  Z RS(    (   R   R   (    (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyR×   #  s   u   cyclec         3` s!   |  ] } | t  ˆ  ƒ k Vq d  S(   N(   R¢   (   t   .0t   eq(   t   eq_on(    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pys	   <genexpr>4  s    ip  iz  g      Y@g     @@("   R   R.   R   R   R   R   R*   t   expt   minutet   secondR&   R'   R(   R   t   NoneR   R   R   t   ndarrayR+   t   viewt   unitR_   R5   R   R¡   R-   R   R¢   t   doppler_opticalRz   R6   R   R/   (	   R$   R!   R?   R×   t   mylookaliket   q2t   eq_offt   l2vt   l1(    (   RÚ   sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_equivalency_context  s8    %	%%"9 c          C` s  t  j ƒ  }  d „  } | t  j ƒ  ƒ } | t  j ƒ  ƒ } |  j g  k sN t ‚ t  j t  j ƒ  ƒ —t  j ƒ  } t | | j ƒ ƒ t | ƒ k s— t ‚ t | j ƒ t |  j ƒ k s» t ‚ t  j t  j ƒ  ƒ \ t  j ƒ  } t | | j ƒ ƒ t | ƒ k st ‚ t | j ƒ t |  j ƒ k s(t ‚ Wd  QXt | | j ƒ ƒ t | ƒ k sUt ‚ t | j ƒ t |  j ƒ k syt ‚ t  j	 t  j ƒ  ƒ f t  j ƒ  } t | | j ƒ ƒ t | ƒ t | ƒ Bk sÌt ‚ t | j ƒ t |  j ƒ k sðt ‚ Wd  QXWd  QX|  t  j ƒ  k st ‚ d  S(   Nc         S` s%   g  |  D] } | d | d f ^ q S(   Ni    i   (    (   R	   t   equiv(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   just_to_from_unitsD  s    (
   R   t   get_current_unit_registryR   R_   R	   R   R.   R¢   t	   all_unitst   add_enabled_equivalencies(   t   base_registryRê   t   tf_dimensionless_anglest   tf_spectralt   new_registryt   newer_registry(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt    test_equivalency_context_managerA  s4    	$$$c          C` sb   d d l  m }  d t j } t | j t j t j ƒ  ƒ d ƒ t | j |  t j ƒ  ƒ d ƒ d  S(   Ni   (   t   deg_Fi    gfffffqÀg…ëQ¸º|À(   Rž   Rô   R   RÑ   R   R   t   deg_Ct   temperature(   Rô   t   t_k(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_temperaturec  s    "c          C` st   d t  j }  |  t j j t  j ƒ } t |  j t  j t  j ƒ  ƒ | j	 ƒ t | j t  j t  j ƒ  ƒ |  j	 ƒ d  S(   Niè  (
   R   RÑ   R   t   k_BR   t   keVR   R   t   temperature_energyR   (   t   xt   y(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_temperature_energyj  s    %c          C` sŸ   d t  j t  j }  d t  j  } t |  j t  j  t  j ƒ  ƒ | j ƒ t | j t  j t  j t  j ƒ  ƒ |  j ƒ t j t  j	 ƒ  |  j
 t  j  ƒ Wd  QXd  S(   Ni   (   R   R   t   molR   R   t   molar_mass_amuR   R&   R'   R(   R   (   Rü   Rý   (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_molar_mass_amuq  s    %,c       	   C` s²  t  j d ƒ j d t  j f d t  j ƒ  ƒ }  |  d t  j k sF t ‚ t  j d ƒ j d t  j f d t  j ƒ  ƒ }  |  d t  j d t  j ƒ k s™ t ‚ t  j j d t  j ƒ  ƒ }  t  j t  j j t  j	 ƒ ƒ |  k sÞ t ‚ t  j
 j d t  j t  j f d t  j d t  j ƒ ƒ }  x– |  D]| } | j t  j t  j g k r| j d d	 g k sXt ‚ t | j t  j
 j t  j t  j d t  j d t  j ƒ ƒƒ PqqWt s®t d
 ƒ ‚ d  S(   Nu   arcsecR   R	   i    u   2 arcsecg      à?gš™™™™™á?i   iÿÿÿÿu$   Didn't find speed in compose results(   R   t   Unitt   composeR[   Ra   R   t   degreeR   R   R   RG   R<   R   Râ   Rr   t   basest   powersR   t   scalet   False(   Rü   Rý   (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_compose_equivalenciesz  s    --&*73c          C` s$  d t  j }  d t  j } d t  j t  j } d t  j t  j } t |  j t  j t  j | ƒ ƒ | ƒ t |  j t  j t  j | ƒ ƒ | ƒ t |  j t  j t  j | ƒ ƒ | ƒ t |  j t  j t  j | ƒ ƒ | ƒ t | j t  j t  j | ƒ ƒ |  ƒ t | j t  j t  j | ƒ ƒ |  ƒ d  S(   NiK   i   gš™™™™™Ù?g      @(   R   t   pixRÐ   R   R   t   pixel_scalet   arcmin(   R
  t   asect   pixscalet	   pixscale2(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_pixel_scale  s    %%%%%c          C` s$  d t  j }  d t  j } d t  j t  j } d t  j t  j } t |  j t  j t  j | ƒ ƒ | ƒ t |  j t  j t  j | ƒ ƒ | ƒ t |  j t  j t  j | ƒ ƒ | ƒ t |  j t  j t  j | ƒ ƒ | ƒ t | j t  j t  j | ƒ ƒ |  ƒ t | j t  j t  j | ƒ ƒ |  ƒ d  S(   Ng      ø?i   i   gš™™™™™©?(   R   t   mmRÐ   R   R   t   plate_scaleR  (   R  R  t
   platescalet   platescale2(    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   test_plate_scale¡  s    %%%%%(   gÝf'3?@g€ç3?@gos‡3?@(   u   functionu   value(   u   functionu   value(   u   in_valu   in_unit(I   t   __doc__t
   __future__R    R   R   R   t   extern.six.movesR   R&   t   numpyR*   t   numpy.testingR   RŸ   R   R   R   t   tests.helperR   R%   t   markt   parametrizet   magR,   t   dBR4   Râ   t   doppler_radiot   doppler_relativistict   doppler_functionsR:   R@   RB   RF   RI   RK   t
   values_ghzt   listRL   R   RÞ   t
   bad_valuesRM   RY   Rg   Rj   Rk   Rn   Rp   Rq   Rl   Rr   R]   R^   Ry   R€   R…   R”   R   R´   RÉ   RÊ   RÌ   RÎ   RÖ   Rè   Ró   Rø   Rþ   R  R	  R  R  (    (    (    sE   lib/python2.7/site-packages/astropy/units/tests/test_equivalencies.pyt   <module>   sl   "	0			!!	5							'		"	A	,							-	"						