
    \hf                         S SK JrJr  S SKJrJr  S SKJr  S SKJ	r	  S SK
Jr  S SKJr  S SKJr  S SKJr  S S	KJrJr  S S
KJrJrJr  S SKJr  S rS rS rg)    )Qask)IRational)S)Abs)exp)sqrt)simplify)symbols)DFTIDFT)detMatrixIdentity)raisesc                  f  ^  [        S5      (       d   e[        S5      (       d   e[        [        S 5        [        [        S 5        [        [        S 5        [        S5      m [        T 5      (       d   e[        SSS9m [        [        U 4S	 j5        [        SS
S9m [        [        U 4S j5        g )N   r   c                      [        S5      $ )Nr        e/var/www/auris/envauris/lib/python3.13/site-packages/sympy/matrices/expressions/tests/test_fourier.py<lambda>#test_dft_creation.<locals>.<lambda>   s    s2wr   c                      [        S5      $ )Ng       @r   r   r   r   r   r      s    s3xr   c                      [        S5      $ )Ny       @      ?r   r   r   r   r   r      s    s6{r   nF)integerc                     > [        T 5      $ Nr   r   s   r   r   r      	    s1vr   T)negativec                     > [        T 5      $ r"   r   r#   s   r   r   r      r$   r   )r   r   
ValueErrorr   r#   s   @r   test_dft_creationr(      s    q66M6q66M6
:'
:'(
:*+Aq66M6U#A
:~&d#A
:~&r   c                     [        S5      u  pn[        S5      R                  S:X  d   e[        [        R
                  " [        S5      5      5      (       d   e[        [        [        [        [        S5      5      5      5      5      S:X  d   e[        U 5      [        U 5      -  [        U 5      :X  d   e[        U 5      X4   [        S[        R                  -  [        -  U -  5      X-  -  [!        U 5      -  :X  d   eg )Nzn i j   )r*   r*      )r   r   shaper   r   unitaryr   r   r   r   r   r   r	   r   Pir   r
   )r   ijs      r   test_dftr2      s    gGA!q6<<6!!!qyyQ !!!!xF3q6N+,-222q6$q'>Xa[(((q6!$<3r!$$wqy{+ac2T!W<<<<r   c                     [        S5      R                  5       [        S//5      :X  d   e[        S5      R                  5       S[        S5      -  [        SS/SS//5      -  :X  d   e[        S5      R                  5       [        [        R
                  [        R
                  [        R
                  [        R
                  /[        R
                  [        * S-  [        SS5      [        S-  /[        R
                  [        SS5      [        R
                  [        SS5      /[        R
                  [        S-  [        SS5      [        * S-  //5      :X  d   eg )Nr+   r   r   r*   )r   as_explicitr   r
   r   Halfr   r   r   r   r   	test_dft2r6   &   s   q66A3%=000q61T!W9VaUAb6N-C#CCCCq66AFFQVVaffaff+M,-FFQBqD(2a.1Q3+O,-FFHRNQVVXVXYZ^+\,-FFQqS(2a.1"Q$+O+Q $R R R Rr   N)sympy.assumptions.askr   r   sympy.core.numbersr   r   sympy.core.singletonr   $sympy.functions.elementary.complexesr   &sympy.functions.elementary.exponentialr	   (sympy.functions.elementary.miscellaneousr
   sympy.simplify.simplifyr   sympy.core.symbolr   "sympy.matrices.expressions.fourierr   r   sympy.matricesr   r   r   sympy.testing.pytestr   r(   r2   r6   r   r   r   <module>rB      s9    * , " 4 6 9 , % 8 0 0 ''=Rr   