
    \hE                         S SK JrJr  S SKJrJr  S SKJrJr  S SK	J
r
  S SKJrJrJr  S SKJr  S SKJrJr  S SKJr  S S	KJrJrJr  S S
KJr  S SKJr  \R<                  " \\-  5      rS r g)    )
DerivativeFunction)Ipi)Symbolsymbols)sqrt)atan2cossin)simplify)epsilonmu)exp)speed_of_lightmsTWave)raisesc                  $  ^^^^ [        S5      u  mmpm[        S5      n[        S5      m[        S5      n[        S5      n[        TTT5      n[        U TU5      nUR                  T:X  d   eUR
                  T:X  d   eUR                  T:X  d   eUR                  [        TU-  -  :X  d   eUR                  ST-  :X  d   eUR                  S[        -  T-  :X  d   eUR                  S[        -  T-  U-  [        -  :X  d   eUR                  [        U-  :X  d   eXV-   nUR                  [        TS-  ST-  U -  [        TU-
  5      -  -   U S-  -   5      :X  d   eUR
                  T:X  d   eUR                  [!        T[#        T5      -  U [#        U5      -  -   T[        T5      -  U [        U5      -  -   5      :X  d   eUR                  [        TU-  -  :X  d   eUR                  ST-  :X  d   eUR                  S[        -  T-  :X  d   eUR                  S[        -  T-  U-  [        -  :X  d   eUR                  [        U-  :X  d   e[%        UR'                  ["        5      UR'                  ["        5      -
  UR'                  ["        5      -
  5      S:X  d   eUR'                  S	5      [(        [*        -  [-        U" UT5      TT5      -  [-        U" UT5      X35      -   :X  d   eUR'                  [        5      [        TS-  ST-  U -  [        TU-
  5      -  -   U S-  -   5      [        [        T-  U-  U-  [.        -  S
[0        -  -  S[        -  T-  T-  -
  [!        T[#        T5      -  U [#        U5      -  -   T[        T5      -  U [        U5      -  -   5      -   5      -  :X  d   eUR'                  [2        5      [        TS-  ST-  U -  [        TU-
  5      -  -   U S-  -   5      [3        [4        S[        -  T-  T-  [!        T[#        T5      -  U [#        U5      -  -   T[        T5      -  U [        U5      -  -   5      -   [        [.        -  T-  U-  U-  S
[0        -  -  -   -  5      -  :X  d   e[        TS SST-  5      nUR
                  T:X  d   eXV-
  n	U	R                  [        TS-  ST-  U -  [        TU-
  5      -  -
  U S-  -   5      :X  d   eU	R
                  T:X  d   eU	R                  [!        T[#        T5      -  U [#        U5      -  -
  T[        T5      -  U [        U5      -  -
  5      :X  d   eU	R                  [        TU-  -  :X  d   eU	R                  ST-  :X  d   eU	R                  S[        -  T-  :X  d   eU	R                  S[        -  T-  U-  [        -  :X  d   eU	R                  [        U-  :X  d   e[%        U	R'                  ["        5      UR'                  ["        5      -
  UR'                  ["        5      -   5      S:X  d   eU	R'                  S	5      [(        [*        -  [-        U" UT5      TT5      -  [-        U" UT5      X35      -   :X  d   eU	R'                  [        5      [        TS-  ST-  U -  [        TU-
  5      -  -
  U S-  -   5      [        S[        -  T-  T-  [!        T[#        T5      -  U [#        U5      -  -
  T[        T5      -  U [        U5      -  -
  5      -   [        [.        -  T-  U-  U-  S
[0        -  -  -   5      -  :X  d   eU	R'                  [2        5      [        TS-  ST-  U -  [        TU-
  5      -  -
  U S-  -   5      [3        [4        S[        -  T-  T-  [!        T[#        T5      -  U [#        U5      -  -
  T[        T5      -  U [        U5      -  -
  5      -   [        [.        -  T-  U-  U-  S
[0        -  -  -   -  5      -  :X  d   eSU-  n
U
R                  ST-  :X  d   eU
R
                  T:X  d   eU
R                  T:X  d   eU
* nUR                  ST-  :X  d   eUR
                  T:X  d   eUR                  T:X  d   e[7        [8        U4S j5        [7        [8        UUUU4S j5        g )NzA1, phi1, A2, phi2, fntxE      r   pdei%<c                     > [        T 5      $ Nr   )A1s   ]/var/www/auris/envauris/lib/python3.13/site-packages/sympy/physics/optics/tests/test_waves.py<lambda>test_twave.<locals>.<lambda>Q   s	    eBi    c                      > [        T TTT5      $ r!   r   )r"   fphi1r   s   r#   r$   r%   R   s    eB43r&   )r   r   r   r   	amplitude	frequencyphase
wavelengthctime_periodangular_velocityr   
wavenumberspeedr	   r   r
   r   r   rewriter   r   r   r   r   r   r   r   
ValueError)A2phi2r   r   r   w1w2w3w4w5w6w7r"   r(   r)   r   s               @@@@r#   
test_twaver>      s5   #$;<BbsAsAsAA	r1d	B	r1d	B<<2<<188t==AqsG###>>QqS   !B$q&(((==AbDF1HQJ&&&88qs??	B<<4A"RD4K0@(@ @2q5 HIIII<<188uRD	\Bs4yL8"SY,CPTI:UVVVV==AqsG###>>QqS   !B$q&(((==AbDF1HQJ&&&88qs??BJJsObjjo5

3GHAMMM::e
:a1gq!+D DzRSTUWXRY[\G` ````::c?d2q51R473td{3C+C#C
a%$ RT!VAXaZ1-"Qq85CI
SY,B3t9r#d)|3<5 5 66 6 6 6 ::c?d2q51R473td{3C+C#C
a%$ Q2a	E"SY,CI*Er#d)|
SY,H % Q$q&(1*ik23 4 55 5 5 5 
r4AaC	 B<<1	B<<4A"RD4K0@(@ @2q5 HIIII<<188uRD	\Bs4yL8"SY,CPTI:UVVVV==AqsG###>>QqS   !B$q&(((==AbDF1HQJ&&&88qs??BJJsObjjo5

3GHAMMM::e
:a1gq!+D DzRSTUWXRY[\G` ````::c?d2q51R473td{3C+C#C
a%$ RU1WQYr#d)|bTl'BBs4yL
SY,E " Q$q&(1*ik23 44 4 4 4 ::c?d2q51R473td{3C+C#C
a%$ Q2a	E"SY,CI*Er#d)|
SY,H % Q$q&(1*ik23 4 55 5 5 5 
2B<<1R4<<188t
B<<2b5   <<188t
:'(
:34r&   N)!sympy.core.functionr   r   sympy.core.numbersr   r   sympy.core.symbolr   r   (sympy.functions.elementary.miscellaneousr	   (sympy.functions.elementary.trigonometricr
   r   r   sympy.simplify.simplifyr   	sympy.abcr   r   &sympy.functions.elementary.exponentialr   sympy.physics.unitsr   r   r   sympy.physics.opticsr   sympy.testing.pytestr   
convert_tor.   r>    r&   r#   <module>rL      sF    6 & / 9 F F , ! 6 4 4 & 'ac"B5r&   