ó
Ąž\c           @   sÎ   d  d l  m Z m Z m Z m Z m Z m Z m Z m Z m	 Z	 m
 Z
 m Z d  d l m Z m Z d  d l m Z d  d l m Z m Z m Z d  d l m Z d  d l m Z e j e e  Z d   Z d S(	   iĸĸĸĸ(   t   symbolst   Symbolt   pit   sqrtt   cost   sint
   Derivativet   Functiont   simplifyt   It   atan2(   t   epsilont   mu(   t   exp(   t   speed_of_lightt   mt   s(   t   TWave(   t   raisesc    
         sz  t  d  \    }  }  t d  } t d   t d  } t d  } t d  } t      } t |   |  } | j   k s t  | j  k sĨ t  | j  k sš t  | j t	  | k sŨ t  | j
 d  k sð t  | j d t  k st  | j d t  | t	 k s2t  | j t	 | k sKt  | | } | j t   d d   |  t  |  |  d  k st  | j  k sŦt  | j t   t   |  t |    t   |  t |   k sųt  | j t	  | k st  | j
 d  k s/t  | j d t  k sLt  | j d t  | t	 k sqt  | j t	 | k st  t | j t  t   d d   |  t  |  |  d  t t  | | t d	 t d t   t   t   |  t |    t   |  t |   t d   d
 k sRt  | j d  t t t | |      t | |   | |  k sĢt  | j t  t   d d   |  t  |  |  d  t t  | | t d	 t d t   t   t   |  t |    t   |  t |    k sYt  | j t  t   d d   |  t  |  |  d  t t t  | | t d	 t d t   t   t   |  t |    t   |  t |    k st  t   d  d
 d   }	 |	 j  k sAt  t t   f d    t t      f d    d  S(   Ns   A1, phi1, A2, phi2, ft   nt   tt   xt   kt   Ei   i   i%<ïi    t   pdec              s
   t     S(   N(   R   (    (   t   A1(    sD   lib/python2.7/site-packages/sympy/physics/optics/tests/test_waves.pyt   <lambda>3   t    c              s   t        S(   N(   R   (    (   R   t   ft   phi1R   (    sD   lib/python2.7/site-packages/sympy/physics/optics/tests/test_waves.pyR   4   R   (   R    R   R   R   t	   amplitudet   AssertionErrort	   frequencyt   phaset
   wavelengtht   ct   time_periodt   angular_velocityR   t
   wavenumbert   speedR   R   R
   R   R   t   rewriteR   R   R   R   R   R   R	   t   NoneR   t
   ValueError(
   t   A2t   phi2R   R   R   R   t   w1t   w2t   w3t   w4(    (   R   R   R   R   sD   lib/python2.7/site-packages/sympy/physics/optics/tests/test_waves.pyt
   test_twave   sN    %
AN%/Qj=2yN(   t   sympyR    R   R   R   R   R   R   R   R   R	   R
   t	   sympy.abcR   R   t&   sympy.functions.elementary.exponentialR   t   sympy.physics.unitsR   R   R   t   sympy.physics.opticsR   t   sympy.utilities.pytestR   t
   convert_toR#   R1   (    (    (    sD   lib/python2.7/site-packages/sympy/physics/optics/tests/test_waves.pyt   <module>   s   L