Ë
    çÿæi¸E ã                   ó€  — d dl Z d dlZd dlZd dlmZmZmZmZm	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mZmZmZ d dlmZ d dlmZmZmZmZmZmZmZm Z  d d	l!m"Z" d d
l#m$Z$ d dl%m&Z' d dl%m(Z)  G d„ d«      Z* G d„ d«      Z+ G d„ d«      Z, G d„ d«      Z- G d„ d«      Z. G d„ d«      Z/ G d„ d«      Z0 G d„ d«      Z1y)é    N)Úassert_Úassert_allcloseÚassert_array_equalÚassert_equalÚassert_array_almost_equal_nulp)Úraises)Úsignal)Úxp_assert_close)ÚfftfreqÚrfftfreqÚfftÚirfft)Ú	trapezoid)ÚperiodogramÚwelchÚlombscargleÚ	coherenceÚcsdÚspectrogramÚ
check_COLAÚ
check_NOLA)Úhann)Ú_spectral_helper)Ústft_compare)Úistft_comparec                   óD  — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zej                  j                  ej                   d
k  d¬«      d„ «       Zej                  j                  ej                   d
k  d¬«      d„ «       Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestPeriodogramc                 ó  — t        j                  d«      }d|d<   t        |«      \  }}t        |t        j                  ddd«      «       t        j
                  d«      }d|d<   |dxx   dz  cc<   |dz  }t        ||«       y )	Né   é   r   ç      à?é	   éÿÿÿÿç       @é   ©ÚnpÚzerosr   r   ÚlinspaceÚones©ÚselfÚxÚfÚpÚqs        úu/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/scipy/signal/tests/test_spectral.pyÚtest_real_onesided_evenz'TestPeriodogram.test_real_onesided_even   sr   € Ü�H‰H�R‹LˆØˆˆ!‰Ü˜1‹~‰ˆˆ1Ü˜œ2Ÿ;™; q¨#¨qÓ1Ô2Ü�G‰G�A‹JˆØˆˆ!‰Ø	ˆ"‹�‰‹Ø	ˆQ‰ˆÜ˜˜1Õó    c                 óò   — t        j                  d«      }d|d<   t        |«      \  }}t        |t        j                  d«      dz  «       t        j
                  d«      }d|d<   |dz  }t        ||d¬	«       y )
Né   r    r   ç       @ç      .@r%   çÁ?çVçž¯Ò<©Úatol)r'   r(   r   r   Úaranger*   r+   s        r1   Útest_real_onesided_oddz&TestPeriodogram.test_real_onesided_odd%   sg   € Ü�H‰H�R‹LˆØˆˆ!‰Ü˜1‹~‰ˆˆ1Ü˜œ2Ÿ9™9 S›>¨$Ñ.Ô/Ü�G‰G�A‹JˆØˆˆ!‰Ø	ˆX‰ˆÜ˜˜1 5Ö)r3   c                 óÒ   — t        j                  d«      }d|d<   t        |d¬«      \  }}t        |t	        dd«      «       t        j
                  dd«      }d|d<   t        ||«       y )Nr   r    r   F©Úreturn_onesidedç      ð?ç      °?)r'   r(   r   r   r   Úfullr+   s        r1   Útest_real_twosidedz"TestPeriodogram.test_real_twosided/   s\   € Ü�H‰H�R‹LˆØˆˆ!‰Ü˜1¨eÔ4‰ˆˆ1Ü˜œ7 2 sÓ+Ô,Ü�G‰G�B˜ÓˆØˆˆ!‰Ü˜˜1Õr3   c                 óØ   — t        j                  d«      }d|d<   t        |d¬«      \  }}t        |d¬«      \  }}t        |t        j                  ddd«      «       t        ||d	z  «       y )
Nr   r    r   Úspectrum©ÚscalingÚdensityr!   r"   g      0@)r'   r(   r   r   r)   )r,   r-   r.   r/   Úgr0   s         r1   Útest_real_spectrumz"TestPeriodogram.test_real_spectrum8   s]   € Ü�H‰H�R‹LˆØˆˆ!‰Ü˜1 jÔ1‰ˆˆ1Ü˜1 iÔ0‰ˆˆ1Ü˜œ2Ÿ;™; q¨#¨qÓ1Ô2Ü˜˜1˜T™6Õ"r3   c                 ó  — t        j                  dt        ¬«      }d|d<   t        |«      \  }}t	        |t        j
                  ddd«      «       t        j                  d«      }d|d<   |dxx   dz  cc<   |d	z  }t	        ||«       y )
Nr   ©Údtyper    r   r!   r"   r#   r$   r%   )r'   r(   Úintr   r   r)   r*   r+   s        r1   Útest_integer_evenz!TestPeriodogram.test_integer_even@   su   € Ü�H‰H�RœsÔ#ˆØˆˆ!‰Ü˜1‹~‰ˆˆ1Ü˜œ2Ÿ;™; q¨#¨qÓ1Ô2Ü�G‰G�A‹JˆØˆˆ!‰Ø	ˆ"‹�‰‹Ø	ˆQ‰ˆÜ˜˜1Õr3   c                 óþ   — t        j                  dt        ¬«      }d|d<   t        |«      \  }}t	        |t        j
                  d«      dz  «       t        j                  d«      }d|d<   |dz  }t	        ||d	¬
«       y )Nr5   rM   r    r   r6   r7   r%   r8   r9   r:   )r'   r(   rO   r   r   r<   r*   r+   s        r1   Útest_integer_oddz TestPeriodogram.test_integer_oddK   sj   € Ü�H‰H�RœsÔ#ˆØˆˆ!‰Ü˜1‹~‰ˆˆ1Ü˜œ2Ÿ9™9 S›>¨$Ñ.Ô/Ü�G‰G�A‹JˆØˆˆ!‰Ø	ˆX‰ˆÜ˜˜1 5Ö)r3   c                 óÞ   — t        j                  dt        ¬«      }d|d<   t        |d¬«      \  }}t	        |t        dd«      «       t        j                  dd«      }d|d<   t	        ||«       y )	Nr   rM   r    r   Fr?   rA   rB   )r'   r(   rO   r   r   r   rC   r+   s        r1   Útest_integer_twosidedz%TestPeriodogram.test_integer_twosidedU   s_   € Ü�H‰H�RœsÔ#ˆØˆˆ!‰Ü˜1¨eÔ4‰ˆˆ1Ü˜œ7 2 sÓ+Ô,Ü�G‰G�B˜ÓˆØˆˆ!‰Ü˜˜1Õr3   c                 óð   — t        j                  dt         j                  «      }d|d<   t        |d¬«      \  }}t	        |t        dd«      «       t        j                  dd«      }d|d<   t	        ||«       y )Nr   ù      ð?       @r   Fr?   rA   ç      Ô?)r'   r(   Ú
complex128r   r   r   rC   r+   s        r1   Útest_complexzTestPeriodogram.test_complex^   sc   € Ü�H‰H�RœŸ™Ó'ˆØˆˆ!‰Ü˜1¨eÔ4‰ˆˆ1Ü˜œ7 2 sÓ+Ô,Ü�G‰G�B˜Ó!ˆØˆˆ!‰Ü˜˜1Õr3   c                 óv   — t        t        t        t        j                  dt        j
                  «      d¬«       y )Né   ÚfoorG   )Úassert_raisesÚ
ValueErrorr   r'   r(   rX   ©r,   s    r1   Útest_unk_scalingz TestPeriodogram.test_unk_scalingg   s"   € Ü”j¤+¬r¯x©x¸¼2¿=¹=Ó/IØö	r3   l        zOn some 32-bit tolerance issue)Úreasonc                 óˆ  — t        j                  dt         j                  ¬«      }|j                  d«      }d|d d …d d …df<   t	        |«      \  }}t        |j                  d«       t        |ddd d …f   |ddd d …f   d«       t	        |ddd d …f   «      \  }}t        |t         j                  d d …f   |dd d …f   d«       y )	Né   rM   ©é   r    é
   rA   r   ©re   r    é   r    é<   )	r'   r(   Úfloat64Úreshaper   r   Úshaper   Únewaxis©r,   r-   r.   r/   Úf0Úp0s         r1   Útest_nd_axis_m1zTestPeriodogram.test_nd_axis_m1k   s©   € ô
 �H‰H�RœrŸz™zÔ*ˆØ�I‰I�hÓˆØˆŠ!ŠAˆaˆ%‰Ü˜1‹~‰ˆˆ1Ü˜1Ÿ7™7 IÔ.Ü& q¨¨1ªQ¨¡x°°1°Q²q°5±¸2Ô>Ü˜Q˜q ¢1˜u™XÓ&‰ˆˆBÜ& r¬"¯*©*²Q¨,Ñ'7¸¸1ºQ¸3¹ÀÕDr3   c                 ób  — t        j                  dt         j                  ¬«      }|j                  d«      }d|dd d …d d …f<   t	        |d¬«      \  }}t        |j                  d«       t        |d d …ddf   |d d …ddf   d	«       t	        |d d …ddf   «      \  }}t        ||d d …ddf   «       y )
Nrc   rM   ©rf   re   r    rA   r   ©Úaxis©rh   re   r    r    ri   )r'   r(   rj   rk   r   r   rl   r   rn   s         r1   Útest_nd_axis_0zTestPeriodogram.test_nd_axis_0y   sŸ   € ô
 �H‰H�RœrŸz™zÔ*ˆØ�I‰I�hÓˆØˆˆ!ŠAŠaˆ%‰Ü˜1 1Ô%‰ˆˆ1Ü˜1Ÿ7™7 GÔ,Ü& qª¨1¨Q¨¡x°²1°Q°q°5±¸2Ô>Ü˜Qšq  1˜u™XÓ&‰ˆˆBÜ& r¨1ªQ¨q°¨U©8Õ4r3   c                 ó.  — t        j                  d«      }d|d<   t        |dd«      \  }}t        j                  dd«      }t        |d|«      \  }}t        ||«       t        ||«       t        j                  dd«      }t        t        t        |d|«       y )Nr   r    r   rf   r   é    )r'   r(   r   r	   Ú
get_windowr   r]   r^   ©r,   r-   r.   r/   ÚwinÚfeÚpeÚwin_errs           r1   Útest_window_externalz$TestPeriodogram.test_window_external‡   s‡   € Ü�H‰H�R‹LˆØˆˆ!‰Ü˜1˜b &Ó)‰ˆˆ1Ü×Ñ ¨Ó+ˆÜ˜Q  CÓ(‰ˆˆBÜ& q¨"Ô-Ü& q¨"Ô-Ü×#Ñ# F¨BÓ/ˆÜ”j¤+¨qØ˜'õ	#r3   c                 óè   — t        j                  d«      }d|d<   t        |«      \  }}t        |d¬«      \  }}t        ||d d d…   «       t        ||d d d…   «       t	        |j
                  d«       y )Nr   r    r   ry   ©Únfftre   )é   )r'   r(   r   r   r   rl   )r,   r-   r.   r/   ÚfpÚpps         r1   Útest_padded_fftzTestPeriodogram.test_padded_fft“   sg   € Ü�H‰H�R‹LˆØˆˆ!‰Ü˜1‹~‰ˆˆ1Ü˜Q RÔ(‰ˆˆBÜ˜˜2™c ˜c™7Ô#Ü˜˜2™c ˜c™7Ô#Ü˜2Ÿ8™8 UÕ+r3   c                 ó   — t        g «      \  }}t        |j                  d«       t        |j                  d«       dD ]O  }t        t        j                  |«      «      \  }}t        |j                  |«       t        |j                  |«       ŒQ y ©N©r   ©rŠ   ©é   r   ©r   é   re   )r   r   rl   r'   Úempty©r,   r.   r/   rl   s       r1   Útest_empty_inputz TestPeriodogram.test_empty_inputœ   sg   € Ü˜2‹‰ˆˆ1Ü˜1Ÿ7™7 DÔ)Ü˜1Ÿ7™7 DÔ)Û+ˆEÜœrŸx™x¨›Ó/‰DˆAˆqÜ˜qŸw™w¨Ô.Ü˜qŸw™w¨Õ.ñ ,r3   c                 ó°   — dD ]Q  }t        t        j                  |«      d¬«      \  }}t        |j                  |«       t        |j                  |«       ŒS y ©N©rŒ   rŽ   r    rt   )r   r'   r�   r   rl   ©r,   rl   r.   r/   s       r1   Útest_empty_input_other_axisz+TestPeriodogram.test_empty_input_other_axis¥   s@   € Û%ˆEÜœrŸx™x¨›°QÔ7‰DˆAˆqÜ˜qŸw™w¨Ô.Ü˜qŸw™w¨Õ.ñ &r3   c                 ó
  — t        j                  d«      }d|d<   t        |d¬«      \  }}t        |t        j                  ddd«      «       t        j
                  d«      }d|d<   |dxx   d	z  cc<   |d
z  }t        ||«       y )Né   r    r   r   r‚   r!   r"   r#   r$   r%   r&   r+   s        r1   Útest_short_nfftzTestPeriodogram.test_short_nfft«   óu   € Ü�H‰H�R‹LˆØˆˆ!‰Ü˜1 2Ô&‰ˆˆ1Ü˜œ2Ÿ;™; q¨#¨qÓ1Ô2Ü�G‰G�A‹JˆØˆˆ!‰Ø	ˆ"‹�‰‹Ø	ˆQ‰ˆÜ˜˜1Õr3   c                 ó
  — t        j                  d«      }d|d<   t        |d¬«      \  }}t        |t        j                  ddd«      «       t        j
                  d«      }d|d<   |dxx   dz  cc<   |d	z  }t        ||«       y )
Nr   r    r   r‚   r!   r"   r#   r$   r%   r&   r+   s        r1   Útest_nfft_is_xshapez#TestPeriodogram.test_nfft_is_xshape¶   r›   r3   c                 óN  — t        j                  dd«      }d|d<   t        |«      \  }}t        |t        j                  ddd«      «       t        j
                  dd«      }d|d<   |dxx   dz  cc<   |d	z  }t        ||«       t        |j                  |j                  k(  «       y )
Nr   r.   r    r   r!   r"   r#   r$   r%   )r'   r(   r   r   r)   r*   r   rN   r+   s        r1   Útest_real_onesided_even_32z*TestPeriodogram.test_real_onesided_even_32Á   sŒ   € Ü�H‰H�R˜ÓˆØˆˆ!‰Ü˜1‹~‰ˆˆ1Ü˜œ2Ÿ;™; q¨#¨qÓ1Ô2Ü�G‰G�A�s‹OˆØˆˆ!‰Ø	ˆ"‹�‰‹Ø	ˆQ‰ˆÜ˜˜1ÔÜ�—‘˜1Ÿ7™7Ñ"Õ#r3   c                 ó:  — t        j                  dd«      }d|d<   t        |«      \  }}t        |t        j                  d«      dz  «       t        j
                  dd«      }d|d<   |dz  }t        ||d	¬
«       t        |j                  |j                  k(  «       y )Nr5   r.   r    r   r6   r7   r%   r8   çH¯¼šò×z>r:   )r'   r(   r   r   r<   r*   r   rN   r+   s        r1   Útest_real_onesided_odd_32z)TestPeriodogram.test_real_onesided_odd_32Í   s�   € Ü�H‰H�R˜ÓˆØˆˆ!‰Ü˜1‹~‰ˆˆ1Ü˜œ2Ÿ9™9 S›>¨$Ñ.Ô/Ü�G‰G�A�s‹OˆØˆˆ!‰Ø	ˆX‰ˆÜ˜˜1 4Õ(Ü�—‘˜1Ÿ7™7Ñ"Õ#r3   c                 ó  — t        j                  dd«      }d|d<   t        |d¬«      \  }}t        |t	        dd«      «       t        j
                  ddd«      }d|d<   t        ||«       t        |j                  |j                  k(  «       y )	Nr   r.   r    r   Fr?   rA   rB   ©r'   r(   r   r   r   rC   r   rN   r+   s        r1   Útest_real_twosided_32z%TestPeriodogram.test_real_twosided_32Ø   sv   € Ü�H‰H�R˜ÓˆØˆˆ!‰Ü˜1¨eÔ4‰ˆˆ1Ü˜œ7 2 sÓ+Ô,Ü�G‰G�B˜ Ó$ˆØˆˆ!‰Ü˜˜1ÔÜ�—‘˜1Ÿ7™7Ñ"Õ#r3   c                 ó  — t        j                  dd«      }d|d<   t        |d¬«      \  }}t        |t	        dd«      «       t        j
                  ddd	«      }d|d<   t        ||«       t        |j                  |j                  k(  «       y )
Nr   ÚFrV   r   Fr?   rA   rW   r.   r¤   r+   s        r1   Útest_complex_32zTestPeriodogram.test_complex_32â   sv   € Ü�H‰H�R˜ÓˆØˆˆ!‰Ü˜1¨eÔ4‰ˆˆ1Ü˜œ7 2 sÓ+Ô,Ü�G‰G�B˜ #Ó&ˆØˆˆ!‰Ü˜˜1ÔÜ�—‘˜1Ÿ7™7Ñ"Õ#r3   c                 óÎ   — t        j                  d«      }d|d<   t        j                  dd«      }d}t	        t
        |¬«      5  t        ||¬«       d d d «       y # 1 sw Y   y xY w)	Nr   r    r   r   rf   zOthe size of the window must be the same size of the input on the specified axis©Úmatch©Úwindow)r'   r(   r	   rz   r]   r^   r   )r,   r-   r|   Úexpected_msgs       r1   Útest_shorter_window_errorz)TestPeriodogram.test_shorter_window_errorì   sQ   € Ü�H‰H�R‹LˆØˆˆ!‰Ü×Ñ ¨Ó+ˆð=ˆäœ:¨\Ö:Ü˜ #Õ&÷ ;×:Ñ:ús   ÁAÁA$N)Ú__name__Ú
__module__Ú__qualname__r2   r=   rD   rK   rP   rR   rT   rY   r`   ÚpytestÚmarkÚskipifÚsysÚmaxsizerq   rw   r€   r‡   r’   r—   rš   r�   rŸ   r¢   r¥   r¨   r¯   © r3   r1   r   r      sÖ   „ ò	ò*òò#ò	ò*òòòð ‡[�[×ÑØ�‰�uÑØ/ð ó ñEó	ðEð ‡[�[×ÑØ�‰�uÑØ/ð ó ñ5ó	ð5ò
#ò,ò/ò/ò	ò	ò
$ò	$ò$ò$ó'r3   r   c                   óÒ   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d „ Z"d!„ Z#y")#Ú	TestWelchc                 óð   — t        j                  d«      }d|d<   d|d<   t        |d¬«      \  }}t        |t        j                  ddd«      «       t        j
                  g d¢«      }t        ||d	d	¬
«       y ©Nr   r    r   r%   ©Únpersegr!   r�   ©çiKGUUµ?gÝæSè8ŽÃ?ç#¬ÇqÌ?rÁ   ç#¬Çq¼?r¡   ©r;   Úrtol©r'   r(   r   r   r)   Úarrayr+   s        r1   r2   z!TestWelch.test_real_onesided_even÷   si   € Ü�H‰H�R‹LˆØˆˆ!‰Øˆˆ!‰Ü�Q Ô"‰ˆˆ1Ü˜œ2Ÿ;™; q¨#¨qÓ1Ô2Ü�H‰Hò "ó #ˆä˜˜1 4¨dÖ3r3   c                 óò   — t        j                  d«      }d|d<   d|d<   t        |d¬«      \  }}t        |t        j                  d«      dz  «       t        j
                  g d	¢«      }t        ||d
d
¬«       y ©Nr   r    r   r%   r"   r½   ç      @ç      "@©g•„Ÿ“9ñ¿?gµ³¿ÙýÍ?çp£0ÚÅ?rÌ   rÌ   r¡   rÃ   )r'   r(   r   r   r<   rÆ   r+   s        r1   r=   z TestWelch.test_real_onesided_odd  si   € Ü�H‰H�R‹LˆØˆˆ!‰Øˆˆ!‰Ü�Q Ô"‰ˆˆ1Ü˜œ2Ÿ9™9 S›>¨#Ñ-Ô.Ü�H‰Hò "ó #ˆä˜˜1 4¨dÖ3r3   c                 óÜ   — t        j                  d«      }d|d<   d|d<   t        |dd¬«      \  }}t        |t	        dd«      «       t        j
                  g d¢«      }t        ||d	d	¬
«       y ©Nr   r    r   r%   F©r¾   r@   rA   ©rÀ   çÝæSè8Ž³?rÂ   rÂ   rÂ   rÂ   rÂ   rÑ   r¡   rÃ   )r'   r(   r   r   r   rÆ   r+   s        r1   rD   zTestWelch.test_real_twosided  sf   € Ü�H‰H�R‹LˆØˆˆ!‰Øˆˆ!‰Ü�Q °5Ô9‰ˆˆ1Ü˜œ7 1 c›?Ô+Ü�H‰Hò Fó Gˆä˜˜1 4¨dÖ3r3   c                 óò   — t        j                  d«      }d|d<   d|d<   t        |dd¬«      \  }}t        |t        j                  ddd«      «       t        j
                  g d	¢«      }t        ||d
d
¬«       y ©Nr   r    r   r%   rF   )r¾   rH   r!   r�   )g      �?g¥-UU�?ç.i÷qUU¥?rÔ   g¥-UU•?r¡   rÃ   rÅ   r+   s        r1   rK   zTestWelch.test_real_spectrum  sk   € Ü�H‰H�R‹LˆØˆˆ!‰Øˆˆ!‰Ü�Q ¨:Ô6‰ˆˆ1Ü˜œ2Ÿ;™; q¨#¨qÓ1Ô2Ü�H‰Hò "ó #ˆä˜˜1 4¨dÖ3r3   c                 óü   — t        j                  dt        ¬«      }d|d<   d|d<   t        |d¬«      \  }}t	        |t        j
                  ddd«      «       t        j                  g d	¢«      }t	        ||d
d
¬«       y ©Nr   rM   r    r   r%   r½   r!   r�   r¿   r¡   rÃ   )r'   r(   rO   r   r   r)   rÆ   r+   s        r1   Útest_integer_onesided_evenz$TestWelch.test_integer_onesided_even  sl   € Ü�H‰H�RœsÔ#ˆØˆˆ!‰Øˆˆ!‰Ü�Q Ô"‰ˆˆ1Ü˜œ2Ÿ;™; q¨#¨qÓ1Ô2Ü�H‰Hò "ó #ˆä˜˜1 4¨dÖ3r3   c                 óþ   — t        j                  dt        ¬«      }d|d<   d|d<   t        |d¬«      \  }}t	        |t        j
                  d«      d	z  «       t        j                  g d
¢«      }t	        ||dd¬«       y ©Nr   rM   r    r   r%   r"   r½   rÉ   rÊ   rË   r¡   rÃ   )r'   r(   rO   r   r   r<   rÆ   r+   s        r1   Útest_integer_onesided_oddz#TestWelch.test_integer_onesided_odd)  sl   € Ü�H‰H�RœsÔ#ˆØˆˆ!‰Øˆˆ!‰Ü�Q Ô"‰ˆˆ1Ü˜œ2Ÿ9™9 S›>¨#Ñ-Ô.Ü�H‰Hò "ó #ˆä˜˜1 4¨dÖ3r3   c                 óè   — t        j                  dt        ¬«      }d|d<   d|d<   t        |dd¬«      \  }}t	        |t        dd«      «       t        j                  g d	¢«      }t	        ||d
d
¬«       y ©Nr   rM   r    r   r%   FrÏ   rA   rÐ   r¡   rÃ   )r'   r(   rO   r   r   r   rÆ   r+   s        r1   rT   zTestWelch.test_integer_twosided3  si   € Ü�H‰H�RœsÔ#ˆØˆˆ!‰Øˆˆ!‰Ü�Q °5Ô9‰ˆˆ1Ü˜œ7 1 c›?Ô+Ü�H‰Hò Fó Gˆä˜˜1 4¨dÖ3r3   c                 óú   — t        j                  dt         j                  «      }d|d<   d|d<   t        |dd¬«      \  }}t	        |t        dd«      «       t        j                  g d¢«      }t	        ||d	d	¬
«       y ©Nr   rV   r   r%   FrÏ   rA   )g&í>®ªªÚ?ç#¬ÇqØ?çnó)tÇá?rà   rà   rà   rà   rß   r¡   rÃ   )r'   r(   rX   r   r   r   rÆ   r+   s        r1   rY   zTestWelch.test_complex=  sm   € Ü�H‰H�RœŸ™Ó'ˆØˆˆ!‰Øˆˆ!‰Ü�Q °5Ô9‰ˆˆ1Ü˜œ7 1 c›?Ô+Ü�H‰Hò Fó Gˆä˜˜1 4¨dÖ3r3   c                 óx   — t        t        t        t        j                  dt        j
                  «      dd¬«       y ©Nr[   r\   )rH   r¾   )r]   r^   r   r'   r(   rX   r_   s    r1   r`   zTestWelch.test_unk_scalingG  s$   € Ü”j¤%¬¯©°!´R·]±]Ó)CØ#¨Qö	0r3   c                 ó¸   — t        j                  dt         j                  ¬«      dz   }t        |dd¬«      \  }}t	        |t        j
                  |«      d¬«       y ©Nrf   rM   ç{®Gáz¤?Úlinear©r¾   Údetrendr9   r:   ©r'   r<   rj   r   r   Ú
zeros_like©r,   r-   r.   r/   s       r1   Útest_detrend_linearzTestWelch.test_detrend_linearK  sB   € Ü�I‰I�b¤§
¡
Ô+¨dÑ2ˆÜ�Q ¨HÔ5‰ˆˆ1Ü˜œ2Ÿ=™=¨Ó+°%Ö8r3   c                 óÒ   — t        j                  dt         j                  ¬«      dz   }t        |dd¬«      \  }}t        |dd„ ¬«      \  }}t	        ||d¬«       t	        ||d¬«       y )	Nrf   rM   rå   Frç   c                 ó   — | S ©Nr¸   ©r-   s    r1   Ú<lambda>z.TestWelch.test_no_detrending.<locals>.<lambda>S  s   € ¹r3   r9   r:   )r'   r<   rj   r   r   ©r,   r-   Úf1Úp1Úf2Úp2s         r1   Útest_no_detrendingzTestWelch.test_no_detrendingP  sW   € Ü�I‰I�b¤§
¡
Ô+¨dÑ2ˆÜ�q "¨eÔ4‰ˆˆBÜ�q "©kÔ:‰ˆˆBÜ˜˜B UÕ+Ü˜˜B UÖ+r3   c                 óº   — t        j                  dt         j                  ¬«      dz   }t        |dd„ ¬«      \  }}t	        |t        j
                  |«      d¬«       y )Nrf   rM   rå   c                 ó0   — t        j                  | d¬«      S ©NÚl)Útype©r	   rè   ©Úsegs    r1   rñ   z1TestWelch.test_detrend_external.<locals>.<lambda>Z  ó   € ¬¯©¸À#Õ)Fr3   rç   r9   r:   ré   rë   s       r1   Útest_detrend_externalzTestWelch.test_detrend_externalW  sF   € Ü�I‰I�b¤§
¡
Ô+¨dÑ2ˆÜ�Q ÙFôH‰ˆˆ1ä˜œ2Ÿ=™=¨Ó+°%Ö8r3   c                 óÜ   — t        j                  dt         j                  ¬«      dz   }|j                  d«      }t	        |dd„ ¬«      \  }}t        |t        j                  |«      d¬	«       y )
Né(   rM   rå   ©re   re   rf   rf   c                 ó0   — t        j                  | d¬«      S rú   rý   rþ   s    r1   rñ   z7TestWelch.test_detrend_external_nd_m1.<locals>.<lambda>a  r   r3   rç   r9   r:   )r'   r<   rj   rk   r   r   rê   rë   s       r1   Útest_detrend_external_nd_m1z%TestWelch.test_detrend_external_nd_m1]  sT   € Ü�I‰I�b¤§
¡
Ô+¨dÑ2ˆØ�I‰I�hÓˆÜ�Q ÙFôH‰ˆˆ1ä˜œ2Ÿ=™=¨Ó+°%Ö8r3   c                 ó  — t        j                  dt         j                  ¬«      dz   }|j                  d«      }t        j                  |dd«      }t        |ddd„ ¬	«      \  }}t        |t        j                  |«      d
¬«       y )Nrc   rM   rå   rd   re   r   rf   c                 ó2   — t        j                  | dd¬«      S ©Nr   rû   )ru   rü   rý   rþ   s    r1   rñ   z6TestWelch.test_detrend_external_nd_0.<locals>.<lambda>i  s   € ¬¯©¸À!È#Õ)Nr3   ©r¾   ru   rè   r9   r:   )r'   r<   rj   rk   Úmoveaxisr   r   rê   rë   s       r1   Útest_detrend_external_nd_0z$TestWelch.test_detrend_external_nd_0d  sh   € Ü�I‰I�b¤§
¡
Ô+¨dÑ2ˆØ�I‰I�hÓˆÜ�K‰K˜˜1˜aÓ ˆÜ�Q ¨ÙNôP‰ˆˆ1ä˜œ2Ÿ=™=¨Ó+°%Ö8r3   c                 ó†  — t        j                  dt         j                  ¬«      dz   }|j                  d«      }t	        |d¬«      \  }}t        |j                  d«       t        |ddd d …f   |d	dd d …f   d
d
¬«       t	        |ddd d …f   d¬«      \  }}t        |t         j                  d d …f   |d	d d …f   d
d
¬«       y ©Nrc   rM   rå   rd   rf   r½   rg   r   r    ç‚vIhÂ%<=rÃ   )	r'   r<   rj   rk   r   r   rl   r   rm   rn   s         r1   rq   zTestWelch.test_nd_axis_m1l  s¦   € Ü�I‰I�b¤§
¡
Ô+¨dÑ2ˆØ�I‰I�hÓˆÜ�Q Ô#‰ˆˆ1Ü˜1Ÿ7™7 IÔ.Ü˜˜!˜Aša˜%™ ! A aª E¡(°¸UÕCÜ�q˜˜1šQ˜‘x¨Ô,‰ˆˆBÜ˜œ2Ÿ:™:¢a˜<Ñ(¨!¨Aªa¨C©&°uÀ5ÖIr3   c                 ó`  — t        j                  dt         j                  ¬«      dz   }|j                  d«      }t	        |dd¬«      \  }}t        |j                  d«       t        |d d …ddf   |d d …d	df   d
d
¬«       t	        |d d …ddf   d¬«      \  }}t        ||d d …d	df   d
d
¬«       y ©Nrc   rM   rå   rs   rf   r   )r¾   ru   rv   r    r  rÃ   r½   )r'   r<   rj   rk   r   r   rl   r   rn   s         r1   rw   zTestWelch.test_nd_axis_0u  s�   € Ü�I‰I�b¤§
¡
Ô+¨dÑ2ˆØ�I‰I�hÓˆÜ�Q ¨Ô+‰ˆˆ1Ü˜1Ÿ7™7 GÔ,Ü˜š!˜A˜a˜%™ !¢A a¨ E¡(°¸UÕCÜ�qš˜1˜Q˜‘x¨Ô,‰ˆˆBÜ˜˜Aša  !˜e™H¨5°uÖ=r3   c                 óÎ  — t        j                  d«      }d|d<   d|d<   t        |ddd¬«      \  }}t        j                  dd«      }t        |d|d ¬«      \  }}t        ||«       t        ||«       t        |j                  d«       t        |j                  d«       t        t        t        |d|d	¬«       t        j                  dd
«      }t        t        t        |d|d ¬«       y )Nr   r    r   r%   rf   r   r½   ©r�   r[   ry   )
r'   r(   r   r	   rz   r   r   rl   r]   r^   r{   s           r1   r€   zTestWelch.test_window_external~  sÇ   € Ü�H‰H�R‹LˆØˆˆ!‰Øˆˆ!‰Ü�Q˜˜F¨AÔ.‰ˆˆ1Ü×Ñ ¨Ó*ˆÜ�q˜"˜c¨4Ô0‰ˆˆBÜ& q¨"Ô-Ü& q¨"Ô-Ü˜2Ÿ8™8 TÔ*Ü˜2Ÿ8™8 TÔ*Ü”j¤%¨Ø˜# qõ	*ä×#Ñ# F¨BÓ/ˆÜ”j¤%¨Ø˜'¨4ö	1r3   c                 ó   — t        g «      \  }}t        |j                  d«       t        |j                  d«       dD ]O  }t        t        j                  |«      «      \  }}t        |j                  |«       t        |j                  |«       ŒQ y r‰   )r   r   rl   r'   r�   r‘   s       r1   r’   zTestWelch.test_empty_input�  sg   € Ü�R‹y‰ˆˆ1Ü˜1Ÿ7™7 DÔ)Ü˜1Ÿ7™7 DÔ)Û+ˆEÜœŸ™ %›Ó)‰DˆAˆqÜ˜qŸw™w¨Ô.Ü˜qŸw™w¨Õ.ñ ,r3   c                 ó°   — dD ]Q  }t        t        j                  |«      d¬«      \  }}t        |j                  |«       t        |j                  |«       ŒS y r”   )r   r'   r�   r   rl   r–   s       r1   r—   z%TestWelch.test_empty_input_other_axis˜  s@   € Û%ˆEÜœŸ™ %›¨qÔ1‰DˆAˆqÜ˜qŸw™w¨Ô.Ü˜qŸw™w¨Õ.ñ &r3   c                 ó‚  — t        j                  d«      }d|d<   t        j                  «       5  t        j                  ddt
        «       t        |d¬«      \  }}t        |dd¬	«      \  }}d d d «       t        |d¬
«      \  }}t        |«       t        |«       t        |«       t        |«       y # 1 sw Y   ŒJxY w)Nr%   r    r   Úignorez$nperseg=256 is greater than signal.*r   r¬   é   ©r­   r¾   r½   )r'   r(   ÚwarningsÚcatch_warningsÚfilterwarningsÚUserWarningr   r   ©r,   r-   r.   r/   ró   rô   rõ   rö   s           r1   Útest_short_datazTestWelch.test_short_dataž  s§   € Ü�H‰H�Q‹KˆØˆˆ!‰ô ×$Ñ$Õ&Ü×#Ñ#ØÐ@Ä+ôOä˜ &Ô)‰DˆAˆqÜ˜1 F°CÔ8‰FˆB�÷	 'ô
 �q !Ô$‰ˆˆBÜ˜˜2ÔÜ˜˜2ÔÜ˜˜BÔÜ˜˜BÕ÷ 'Ð&ús   ¯=B5Â5B>c           
      ó  — t        t        t        t        j                  d«      dt        j
                  g d¢«      «       t        t        t        t        j                  d«      dt        j                  d«      j                  d«      «       y ©Nr[   r    )r    r    r    r    r    rh   )re   r�   )r]   r^   r   r'   r(   rÆ   r<   rk   r_   s    r1   Útest_window_long_or_ndz TestWelch.test_window_long_or_nd®  sQ   € Ü”j¤%¬¯©°!«°a¼¿¹Â+Ó9NÔOÜ”j¤%¬¯©°!«°aÜ—i‘i “l×*Ñ*¨5Ó1õ	3r3   c                 óª   — t        j                  d«      }d|d d d…<   t        |dd¬«      \  }}t        j                  g d¢«      }t	        ||d¬	«       y ©
Né@   r    r%   r   r[   ©r¾   Únoverlap)	r   gUUUUUUµ?çUUUUUUÕ?çš™™™™™É?r(  r)  r(  r)  gUUUUUUÅ?gê-�™—q=r:   )r'   r(   r   rÆ   r   r+   s        r1   Útest_nondefault_noverlapz"TestWelch.test_nondefault_noverlap³  sM   € Ü�H‰H�R‹LˆØˆ‰#ˆAˆ#‰Ü�Q ¨QÔ/‰ˆˆ1Ü�H‰Hò ó ˆä˜˜1 5Ö)r3   c           	      ó\   — t        t        t        t        j                  d«      dddd«       y ©Nr[   r    r   re   é   )r]   r^   r   r'   r(   r_   s    r1   Útest_bad_noverlapzTestWelch.test_bad_noverlap»  s   € Ü”j¤%¬¯©°!«°a¸ÀÀAÕFr3   c                 óZ   — t        t        t        t        j                  d«      dd¬«       y ©Né   r�   r[   )rƒ   r¾   )r]   r^   r   r'   r*   r_   s    r1   Útest_nfft_too_shortzTestWelch.test_nfft_too_short¾  s   € Ü”j¤%¬¯©°«¸1ÀaÖHr3   c                 ó8  — t        j                  dd«      }d|d<   d|d<   t        |d¬«      \  }}t        |t        j                  ddd«      «       t        j
                  g d	¢d«      }t        ||d
d
¬«       t        |j                  |j                  k(  «       y ©Nr   r.   r    r   r%   r½   r!   r�   r¿   r¡   rÃ   )r'   r(   r   r   r)   rÆ   r   rN   r+   s        r1   rŸ   z$TestWelch.test_real_onesided_even_32Á  s„   € Ü�H‰H�R˜ÓˆØˆˆ!‰Øˆˆ!‰Ü�Q Ô"‰ˆˆ1Ü˜œ2Ÿ;™; q¨#¨qÓ1Ô2Ü�H‰Hò "Ø#&ó(ˆä˜˜1 4¨dÕ3Ü�—‘˜1Ÿ7™7Ñ"Õ#r3   c                 ó:  — t        j                  dd«      }d|d<   d|d<   t        |d¬«      \  }}t        |t        j                  d«      d	z  «       t        j
                  g d
¢d«      }t        ||dd¬«       t        |j                  |j                  k(  «       y ©Nr   r.   r    r   r%   r"   r½   rÉ   rÊ   )gâÝx:ñ¿?gyÑ²IÙýÍ?rÌ   g´wã0ÚÅ?rÌ   r¡   rÃ   )r'   r(   r   r   r<   rÆ   r   rN   r+   s        r1   r¢   z#TestWelch.test_real_onesided_odd_32Ì  s„   € Ü�H‰H�R˜ÓˆØˆˆ!‰Øˆˆ!‰Ü�Q Ô"‰ˆˆ1Ü˜œ2Ÿ9™9 S›>¨#Ñ-Ô.Ü�H‰Hò "Ø#&ó(ˆä˜˜1 4¨dÕ3Ü�—‘˜1Ÿ7™7Ñ"Õ#r3   c                 ó$  — t        j                  dd«      }d|d<   d|d<   t        |dd¬«      \  }}t        |t	        dd«      «       t        j
                  g d	¢d«      }t        ||d
d
¬«       t        |j                  |j                  k(  «       y ©Nr   r.   r    r   r%   FrÏ   rA   rÐ   r¡   rÃ   ©r'   r(   r   r   r   rÆ   r   rN   r+   s        r1   r¥   zTestWelch.test_real_twosided_32×  s�   € Ü�H‰H�R˜ÓˆØˆˆ!‰Øˆˆ!‰Ü�Q °5Ô9‰ˆˆ1Ü˜œ7 1 c›?Ô+Ü�H‰Hò "à#&ó(ˆô 	˜˜1 4¨dÕ3Ü�—‘˜1Ÿ7™7Ñ"Õ#r3   c                 óZ  — t        j                  dd«      }d|d<   d|d<   t        |dd¬«      \  }}t        |t	        dd«      «       t        j
                  g d	¢d
«      }t        ||dd¬«       t        |j                  |j                  k(  d|j                  › d|j                  › �«       y ©Nr   r§   rV   r   r%   FrÏ   rA   )gµ%‚£ªªÚ?çAŠ2ÇqØ?çŒd°^Çá?r=  gàºæ~Çá?r=  r=  r<  r.   r¡   rÃ   zdtype mismatch, ú, r9  r+   s        r1   r¨   zTestWelch.test_complex_32ã  s›   € Ü�H‰H�R˜ÓˆØˆˆ!‰Øˆˆ!‰Ü�Q °5Ô9‰ˆˆ1Ü˜œ7 1 c›?Ô+Ü�H‰Hò FØGJóLˆä˜˜1 4¨dÕ3Ü�—‘˜1Ÿ7™7Ñ"Ø" 1§7¡7 )¨2¨a¯g©g¨YÐ7õ	9r3   c                 óŒ  — t        j                  d«      }d}t        |d«      d |dz  dz    }|dxx   dz  cc<   t        |d|¬«      \  }}t        |d	|¬«      \  }}t	        ||«       t	        ||«       d
}t        |d«      d |dz   dz   }t        |d|¬«      \  }}t        |d	|¬«      \  }}t	        ||«       t	        ||«       y ©Nr1  é   rA   re   r    r#   r�   ©r¾   rƒ   rh   é   )r'   r(   r   r   r   )r,   r-   rƒ   r.   ÚfoddÚ_Úfevens          r1   Útest_padded_freqszTestWelch.test_padded_freqsï  sÌ   € Ü�H‰H�R‹LˆàˆÜ�D˜#Ó˜z  a¡¨¡	Ð*ˆØ	ˆ"‹�‰‹Ü˜ 1¨4Ô0‰ˆˆaÜ˜ A¨DÔ1‰ˆˆqÜ˜˜4Ô Ü˜˜5Ô!àˆÜ�D˜#Ó˜~ ¨¡¨A¡Ð.ˆÜ˜ 1¨4Ô0‰ˆˆaÜ˜ A¨DÔ1‰ˆˆqÜ˜˜4Ô Ü˜˜5Õ!r3   c           	      óè  — d}d}t        |dz  «      }d}t        ||z  |z  «      }t        j                  |«      |z  }|t        j                  dt        j                  z  |z  |z  «      z  }dD ]�  }t        ||||d¬«      \  }	}
t        ||||d	¬«      \  }}t        |
|   |dz  d
z  «       t        t        j                  t        ||«      «      |t        j                  d«      z  dz  d¬«       Œƒ y )Nrc   g     ˆÃ@rf   é,  re   )r   Úbartlett)Útukeyçš™™™™™¹?ÚflattoprF   )Úfsr¾   r­   rH   rI   r$   gü©ñÒMbP?©rÄ   )	rO   r'   r<   ÚsinÚpir   r   Úsqrtr   )r,   ÚArN  r¾   ÚfsigÚiiÚttr-   r­   rE  Úp_specÚfreqÚp_denss                r1   Útest_window_correctionz TestWelch.test_window_correction  sê   € ØˆØˆÜ�b˜"‘f“+ˆØˆÜ��g‘˜rÑ!Ó"ˆä�Y‰Y�r‹]˜2ÑˆØŒb�f‰f�Q”r—u‘u‘W˜T‘\ "‘_Ó%Ñ%ˆãEˆFÜ˜a B°ÀØ&0ô2‰IˆAˆvä   r°7À6Ø)2ô4‰LˆD�&ô ˜F 2™J¨¨1©¨S©Ô1äœBŸG™G¤I¨f°dÓ$;Ó<¸aÄÇÁÈÃ
¹lÈ1¹nØ!%ö'ñ Fr3   c                 óØ  — t         j                  j                  d«       t         j                  j                  d«      }t	        |«      \  }}t        d«      D ]�  }dgdz  }d||<   |j                  |«      }t	        ||¬«      \  }}t	        |||j                  z
  ¬«      \  }}t        ||j                  «       |¬«       t        ||j                  «       ||j                  z
  ¬«       Œ’ y )NéÒ  é   r�   r    r#   rt   ©Úerr_msg)
r'   ÚrandomÚseedÚrandnr   Úrangerk   Úndimr   Úsqueeze)	r,   Úx_flatrE  Úp_flatÚaÚnewshaper-   Úp_plusÚp_minuss	            r1   Útest_axis_rollingzTestWelch.test_axis_rolling  s·   € Ü
�	‰	�‰�tÔä—‘—‘ Ó&ˆÜ˜&“M‰	ˆˆ6ä�q–ˆAØ�t˜A‘vˆHØˆH�Q‰KØ—‘˜xÓ(ˆAä˜a aÔ(‰IˆAˆvÜ˜q q¨¯©¡xÔ0‰JˆAˆwä˜ §¡Ó!1¸1Õ=Ü˜ §¡Ó!2¸A¸a¿f¹f¹HÖEñ r3   c                 ó"  — t        j                  d«      }d|d<   d|d<   t        |dd¬«      \  }}t        |t        j                  ddd«      «       t        j
                  g d	¢«      }t        ||d
d
¬«       t        t        t        |dd¬«       y )Nr   r    r   r%   Úmedian)r¾   Úaverager!   r�   )rL  çš™™™™™©?ç        g&EÈ    9rq  r¡   rÃ   zunrecognised-average)r'   r(   r   r   r)   rÆ   r]   r^   r+   s        r1   Útest_averagezTestWelch.test_average(  sz   € Ü�H‰H�R‹LˆØˆˆ!‰Øˆˆ!‰Ü�Q ¨8Ô4‰ˆˆ1Ü˜œ2Ÿ;™; q¨#¨qÓ1Ô2Ü�H‰HÒ6Ó7ˆÜ˜˜1 4¨dÕ3ä”j¤%¨°AØ4ö	6r3   c                 ó2  — t        j                  g d¢«      t        j                  d«      d}}}t        ||dd¬«      }t	        |fddi|¤Žd	   }t	        |fdd
i|¤Žd	   }t        |dz  «      |z  t        t        |«      «      dz  z  }t        ||z  |«       y)zvVerify the factor of ``sum(abs(window)**2)*fs / abs(sum(window))**2``
        used in the `welch`  and `csd` docstrs. )rA   r   r   r   r[   r1  FN)rN  r­   r@   rè   rH   rI   r    rF   re   )r'   rÆ   r*   Údictr   ÚsumÚabsr   )r,   r-   r|   rN  ÚparamsrY  rW  Úp_facs           r1   Útest_ratio_scale_tozTestWelch.test_ratio_scale_to4  s•   € ô —X‘XšmÓ,¬b¯g©g°a«j¸"�ˆ3ˆÜ˜ C¸ÈÔMˆÜ�qÑ6 )Ð6¨vÑ6°qÑ9ˆÜ�qÑ7 *Ð7°Ñ7¸Ñ:ˆÜ�C˜‘F“˜B‘¤¤S¨£X£°Ñ!1Ñ1ˆÜ˜ ™¨Õ/r3   N)$r°   r±   r²   r2   r=   rD   rK   r×   rÚ   rT   rY   r`   rì   r÷   r  r  r  rq   rw   r€   r’   r—   r  r"  r*  r.  r2  rŸ   r¢   r¥   r¨   rG  rZ  rl  rr  ry  r¸   r3   r1   rº   rº   ö   s«   „ ò4ò4ò4ò4ò4ò4ò4ò4ò0ò9ò
,ò9ò9ò9òJò>ò1ò"/ò/ò ò 3ò
*òGòIò	$ò	$ò
$ò
9ò"ò$'ò,Fò"
6ó0r3   rº   c                   óÞ   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d „ Z"d!„ Z#d"„ Z$d#„ Z%y$)%ÚTestCSDc                 ó"  — t        j                  d«      }t        j                  d«      }t        j                  ddd«      }t        j                  dt         j                  ¬«      }t	        ||d¬«      \  }}t        ||«       t        ||«       y )Nr%   r1  r   r!   r-  rM   r½   ©r'   r(   r)   rX   r   r   ©r,   r-   Úyr.   Úcró   Úc1s          r1   Útest_pad_shorter_xzTestCSD.test_pad_shorter_x?  sh   € Ü�H‰H�Q‹KˆÜ�H‰H�R‹Lˆä�K‰K˜˜3 Ó"ˆÜ�H‰H�QœRŸ]™]Ô+ˆÜ�Q˜ 2Ô&‰ˆˆBä˜˜2ÔÜ˜˜2Õr3   c                 ó"  — t        j                  d«      }t        j                  d«      }t        j                  ddd«      }t        j                  dt         j                  ¬«      }t	        ||d¬«      \  }}t        ||«       t        ||«       y )Nr1  r%   r   r!   r-  rM   r½   r}  r~  s          r1   Útest_pad_shorter_yzTestCSD.test_pad_shorter_yJ  sh   € Ü�H‰H�R‹LˆÜ�H‰H�Q‹Kˆä�K‰K˜˜3 Ó"ˆÜ�H‰H�QœRŸ]™]Ô+ˆÜ�Q˜ 2Ô&‰ˆˆBä˜˜2ÔÜ˜˜2Õr3   c                 ól  — t        j                  g d¢d«      }t        t        |«      dd¬«      }t	        j
                  |t        j                  |«      fi |¤Žd   }t	        j
                  ||dd fi |¤Žd   }t	        j
                  |dd |fi |¤Žd   }t        ||dz  «       t        ||dz  «       y)	zŠTest zero-padding for input `x.shape[axis] != y.shape[axis]` for 1d arrays.

        This test ensures that issue 23036 is fixed.
        )r[   r   éüÿÿÿr   r[   Úboxcar)rN  r­   r¾   r    Nr%   re   )r'   Útilert  Úlenr	   r   Úcopyr
   )r,   r-   ÚkwÚX0ÚX1ÚX2s         r1   Útest_unequal_length_input_1Dz$TestCSD.test_unequal_length_input_1DU  s¤   € ô
 �G‰G’M 1Ó%ˆä”S˜“V H°aÔ8ˆÜ�Z‰Z˜œ2Ÿ7™7 1›:Ñ,¨Ñ,¨QÑ/ˆÜ�Z‰Z˜˜1˜R˜a˜5Ñ' BÑ'¨Ñ*ˆÜ�Z‰Z˜˜"˜1˜˜qÑ' BÑ'¨Ñ*ˆÜ˜˜B ™FÔ#Ü˜˜B ™FÕ#r3   c                 óª  — d}t        j                  d|z  «      j                  d|d«      }||dd…ddd…f<   t        |d|dd¬	«      }t	        j
                  ||j                  «       fi |¤Žd   }t	        j
                  ||dd…dd…dd…f   fi |¤Žd   }t	        j
                  |dd…dd…dd…f   |fi |¤Žd   }t        ||«       t        ||«       y)
zŠTest zero-padding for input `x.shape[axis] != y.shape[axis]` for 3d arrays.

        This test ensures that issue 23036 is fixed.
        r%   rh   re   r�   Nr   r‡  r    )rN  r­   r¾   rè   ru   )r'   r(   rk   rt  r	   r   rŠ  r
   )r,   Únr-   r‹  rŒ  r�  rŽ  s          r1   Útest_unequal_length_input_3Dz$TestCSD.test_unequal_length_input_3Dc  sÏ   € ð
 ˆÜ�H‰H�U˜Q‘YÓ×'Ñ'¨¨1¨aÓ0ˆØˆŠ!ˆQ’ˆ'‰
ä�Q˜x°¸DÀqÔIˆÜ�Z‰Z˜˜1Ÿ6™6›8Ñ* rÑ*¨1Ñ-ˆÜ�Z‰Z˜˜1šQ   ¢A˜X™;Ñ-¨"Ñ-¨aÑ0ˆÜ�Z‰Z˜š!˜R˜a˜R¢˜(™ QÑ-¨"Ñ-¨aÑ0ˆÜ˜˜BÔÜ˜˜BÕr3   c                 óò   — t        j                  d«      }d|d<   d|d<   t        ||d¬«      \  }}t        |t        j                  ddd«      «       t        j
                  g d¢«      }t        ||d	d	¬
«       y r¼   ©r'   r(   r   r   r)   rÆ   r+   s        r1   r2   zTestCSD.test_real_onesided_evens  sk   € Ü�H‰H�R‹LˆØˆˆ!‰Øˆˆ!‰Ü�1�a Ô#‰ˆˆ1Ü˜œ2Ÿ;™; q¨#¨qÓ1Ô2Ü�H‰Hò "ó #ˆä˜˜1 4¨dÖ3r3   c                 óô   — t        j                  d«      }d|d<   d|d<   t        ||d¬«      \  }}t        |t        j                  d«      dz  «       t        j
                  g d	¢«      }t        ||d
d
¬«       y rÈ   )r'   r(   r   r   r<   rÆ   r+   s        r1   r=   zTestCSD.test_real_onesided_odd}  sk   € Ü�H‰H�R‹LˆØˆˆ!‰Øˆˆ!‰Ü�1�a Ô#‰ˆˆ1Ü˜œ2Ÿ9™9 S›>¨#Ñ-Ô.Ü�H‰Hò "ó #ˆä˜˜1 4¨dÖ3r3   c                 óÞ   — t        j                  d«      }d|d<   d|d<   t        ||dd¬«      \  }}t        |t	        dd«      «       t        j
                  g d¢«      }t        ||d	d	¬
«       y rÎ   )r'   r(   r   r   r   rÆ   r+   s        r1   rD   zTestCSD.test_real_twosided‡  sh   € Ü�H‰H�R‹LˆØˆˆ!‰Øˆˆ!‰Ü�1�a °EÔ:‰ˆˆ1Ü˜œ7 1 c›?Ô+Ü�H‰Hò Fó Gˆä˜˜1 4¨dÖ3r3   c                 óô   — t        j                  d«      }d|d<   d|d<   t        ||dd¬«      \  }}t        |t        j                  ddd«      «       t        j
                  g d	¢«      }t        ||d
d
¬«       y rÓ   r”  r+   s        r1   rK   zTestCSD.test_real_spectrum‘  sm   € Ü�H‰H�R‹LˆØˆˆ!‰Øˆˆ!‰Ü�1�a ¨JÔ7‰ˆˆ1Ü˜œ2Ÿ;™; q¨#¨qÓ1Ô2Ü�H‰Hò "ó #ˆä˜˜1 4¨dÖ3r3   c                 óþ   — t        j                  dt        ¬«      }d|d<   d|d<   t        ||d¬«      \  }}t	        |t        j
                  ddd«      «       t        j                  g d	¢«      }t	        ||d
d
¬«       y rÖ   )r'   r(   rO   r   r   r)   rÆ   r+   s        r1   r×   z"TestCSD.test_integer_onesided_even›  sn   € Ü�H‰H�RœsÔ#ˆØˆˆ!‰Øˆˆ!‰Ü�1�a Ô#‰ˆˆ1Ü˜œ2Ÿ;™; q¨#¨qÓ1Ô2Ü�H‰Hò "ó #ˆä˜˜1 4¨dÖ3r3   c                 ó   — t        j                  dt        ¬«      }d|d<   d|d<   t        ||d¬«      \  }}t	        |t        j
                  d«      d	z  «       t        j                  g d
¢«      }t	        ||dd¬«       y rÙ   )r'   r(   rO   r   r   r<   rÆ   r+   s        r1   rÚ   z!TestCSD.test_integer_onesided_odd¥  sn   € Ü�H‰H�RœsÔ#ˆØˆˆ!‰Øˆˆ!‰Ü�1�a Ô#‰ˆˆ1Ü˜œ2Ÿ9™9 S›>¨#Ñ-Ô.Ü�H‰Hò "ó #ˆä˜˜1 4¨dÖ3r3   c                 óê   — t        j                  dt        ¬«      }d|d<   d|d<   t        ||dd¬«      \  }}t	        |t        dd«      «       t        j                  g d	¢«      }t	        ||d
d
¬«       y rÜ   )r'   r(   rO   r   r   r   rÆ   r+   s        r1   rT   zTestCSD.test_integer_twosided¯  sk   € Ü�H‰H�RœsÔ#ˆØˆˆ!‰Øˆˆ!‰Ü�1�a °EÔ:‰ˆˆ1Ü˜œ7 1 c›?Ô+Ü�H‰Hò Fó Gˆä˜˜1 4¨dÖ3r3   c                 óü   — t        j                  dt         j                  «      }d|d<   d|d<   t        ||dd¬«      \  }}t	        |t        dd«      «       t        j                  g d¢«      }t	        ||d	d	¬
«       y rÞ   )r'   r(   rX   r   r   r   rÆ   r+   s        r1   rY   zTestCSD.test_complex¹  so   € Ü�H‰H�RœŸ™Ó'ˆØˆˆ!‰Øˆˆ!‰Ü�1�a °EÔ:‰ˆˆ1Ü˜œ7 1 c›?Ô+Ü�H‰Hò Fó Gˆä˜˜1 4¨dÖ3r3   c           	      ó¾   — t        t        t        t        j                  dt        j
                  «      t        j                  dt        j
                  «      dd¬«       y râ   )r]   r^   r   r'   r(   rX   r*   r_   s    r1   r`   zTestCSD.test_unk_scalingÃ  s6   € Ü”j¤#¤r§x¡x°´2·=±=Ó'AÜ—g‘g˜a¤§¡Ó/¸Èö	Kr3   c                 óº   — t        j                  dt         j                  ¬«      dz   }t        ||dd¬«      \  }}t	        |t        j
                  |«      d¬«       y rä   ©r'   r<   rj   r   r   rê   rë   s       r1   rì   zTestCSD.test_detrend_linearÇ  sD   € Ü�I‰I�b¤§
¡
Ô+¨dÑ2ˆÜ�1�a ¨XÔ6‰ˆˆ1Ü˜œ2Ÿ=™=¨Ó+°%Ö8r3   c                 óÖ   — t        j                  dt         j                  ¬«      dz   }t        ||dd¬«      \  }}t        ||dd„ ¬«      \  }}t	        ||d¬«       t	        ||d¬«       y )	Nrf   rM   rå   Frç   c                 ó   — | S rï   r¸   rð   s    r1   rñ   z,TestCSD.test_no_detrending.<locals>.<lambda>Ï  s   € ¹r3   r9   r:   )r'   r<   rj   r   r   rò   s         r1   r÷   zTestCSD.test_no_detrendingÌ  s[   € Ü�I‰I�b¤§
¡
Ô+¨dÑ2ˆÜ�Q˜ 2¨uÔ5‰ˆˆBÜ�Q˜ 2©{Ô;‰ˆˆBÜ˜˜B UÕ+Ü˜˜B UÖ+r3   c                 ó¼   — t        j                  dt         j                  ¬«      dz   }t        ||dd„ ¬«      \  }}t	        |t        j
                  |«      d¬«       y )Nrf   rM   rå   c                 ó0   — t        j                  | d¬«      S rú   rý   rþ   s    r1   rñ   z/TestCSD.test_detrend_external.<locals>.<lambda>Ö  ó   € ¤v§~¡~°cÀÕ'Dr3   rç   r9   r:   rž  rë   s       r1   r  zTestCSD.test_detrend_externalÓ  sH   € Ü�I‰I�b¤§
¡
Ô+¨dÑ2ˆÜ�1�a ÙDôF‰ˆˆ1ä˜œ2Ÿ=™=¨Ó+°%Ö8r3   c                 óÞ   — t        j                  dt         j                  ¬«      dz   }|j                  d«      }t	        ||dd„ ¬«      \  }}t        |t        j                  |«      d¬	«       y )
Nr  rM   rå   r  rf   c                 ó0   — t        j                  | d¬«      S rú   rý   rþ   s    r1   rñ   z5TestCSD.test_detrend_external_nd_m1.<locals>.<lambda>Ý  r£  r3   rç   r9   r:   )r'   r<   rj   rk   r   r   rê   rë   s       r1   r  z#TestCSD.test_detrend_external_nd_m1Ù  sV   € Ü�I‰I�b¤§
¡
Ô+¨dÑ2ˆØ�I‰I�hÓˆÜ�1�a ÙDôF‰ˆˆ1ä˜œ2Ÿ=™=¨Ó+°%Ö8r3   c                 ó  — t        j                  dt         j                  ¬«      dz   }|j                  d«      }t        j                  |dd«      }t        ||ddd„ ¬	«      \  }}t        |t        j                  |«      d
¬«       y )Nrc   rM   rå   rd   re   r   rf   c                 ó2   — t        j                  | dd¬«      S r	  rý   rþ   s    r1   rñ   z4TestCSD.test_detrend_external_nd_0.<locals>.<lambda>å  s   € ¤v§~¡~°cÀÈÕ'Lr3   r
  r9   r:   )r'   r<   rj   rk   r  r   r   rê   rë   s       r1   r  z"TestCSD.test_detrend_external_nd_0à  sj   € Ü�I‰I�b¤§
¡
Ô+¨dÑ2ˆØ�I‰I�hÓˆÜ�K‰K˜˜1˜aÓ ˆÜ�1�a ¨!ÙLôN‰ˆˆ1ä˜œ2Ÿ=™=¨Ó+°%Ö8r3   c                 óš  — t        j                  dt         j                  ¬«      dz   }|j                  d«      }t	        ||d¬«      \  }}t        |j                  d«       t        |ddd d …f   |d	dd d …f   d
d
¬«       t	        |ddd d …f   |ddd d …f   d¬«      \  }}t        |t         j                  d d …f   |d	d d …f   d
d
¬«       y r  )	r'   r<   rj   rk   r   r   rl   r   rm   rn   s         r1   rq   zTestCSD.test_nd_axis_m1è  s´   € Ü�I‰I�b¤§
¡
Ô+¨dÑ2ˆØ�I‰I�hÓˆÜ�1�a Ô$‰ˆˆ1Ü˜1Ÿ7™7 IÔ.Ü˜˜!˜Aša˜%™ ! A aª E¡(°¸UÕCÜ�Q�q˜š1�u‘X˜q  1¢Q ™x°Ô4‰ˆˆBÜ˜œ2Ÿ:™:¢a˜<Ñ(¨!¨Aªa¨C©&°uÀ5ÖIr3   c                 ót  — t        j                  dt         j                  ¬«      dz   }|j                  d«      }t	        ||dd¬«      \  }}t        |j                  d«       t        |d d …ddf   |d d …d	df   d
d
¬«       t	        |d d …ddf   |d d …ddf   d¬«      \  }}t        ||d d …d	df   d
d
¬«       y r  )r'   r<   rj   rk   r   r   rl   r   rn   s         r1   rw   zTestCSD.test_nd_axis_0ñ  s«   € Ü�I‰I�b¤§
¡
Ô+¨dÑ2ˆØ�I‰I�hÓˆÜ�1�a ¨!Ô,‰ˆˆ1Ü˜1Ÿ7™7 GÔ,Ü˜š!˜A˜a˜%™ !¢A a¨ E¡(°¸UÕCÜ�Q’q˜˜1�u‘X˜q¢ 1 Q ™x°Ô4‰ˆˆBÜ˜˜Aša  !˜e™H¨5°uÖ=r3   c           	      óR  — t        j                  d«      }d|d<   d|d<   t        ||ddd«      \  }}t        j                  dd«      }t        ||d|d ¬«      \  }}t        ||«       t        ||«       t        |j                  d«       t        |j                  d«       t        t        t        ||d|d	¬«       t        j                  dd
«      }t        t        t        ||d|d ¬«       t        j                  t        d¬«      5  t        ||dd¬«       d d d «       y # 1 sw Y   y xY w)Nr   r    r   r%   rf   r   r½   r  r  ry   zParameter nperseg=0.*rª   )r'   r(   r   r	   rz   r   r   rl   r]   r^   r³   r   r{   s           r1   r€   zTestCSD.test_window_externalú  sù   € Ü�H‰H�R‹LˆØˆˆ!‰Øˆˆ!‰Ü�1�a˜˜V QÓ'‰ˆˆ1Ü×Ñ ¨Ó*ˆÜ�Q˜˜2˜s¨DÔ1‰ˆˆBÜ& q¨"Ô-Ü& q¨"Ô-Ü˜2Ÿ8™8 TÔ*Ü˜2Ÿ8™8 TÔ*Ü”j¤# q¨!Ø˜# sõ	,ä×#Ñ# F¨BÓ/ˆÜ”j¤# q¨!Ø�' 4õ	)ä�]‰]œ:Ð-DÖEÜ��1�a Õ#÷ F×EÑEús   ÄDÄD&c                 ó�  — t        g t        j                  d«      «      \  }}t        |j                  d«       t        |j                  d«       t        t        j                  d«      g «      \  }}t        |j                  d«       t        |j                  d«       dD ]c  }t        t        j
                  |«      t        j
                  |«      «      \  }}t        |j                  |«       t        |j                  |«       Œe t        t        j                  d«      t        j
                  d«      «      \  }}t        |j                  d«       t        |j                  d«       t        t        j
                  d«      t        j                  d«      «      \  }}t        |j                  d«       t        |j                  d«       y )Nrf   rŠ   r‹   )r�   r   )r   r'   r(   r   rl   r�   r*   r‘   s       r1   r’   zTestCSD.test_empty_input  s*  € Ü�2”b—h‘h˜r“lÓ#‰ˆˆ1Ü˜1Ÿ7™7 DÔ)Ü˜1Ÿ7™7 DÔ)ä”2—8‘8˜B“< Ó#‰ˆˆ1Ü˜1Ÿ7™7 DÔ)Ü˜1Ÿ7™7 DÔ)ã+ˆEÜ”r—x‘x “¬¯©°«Ó8‰DˆAˆqÜ˜qŸw™w¨Ô.Ü˜qŸw™w¨Õ.ð ,ô
 ”2—7‘7˜2“;¤§¡¨£Ó0‰ˆˆ1Ü˜1Ÿ7™7 EÔ*Ü˜1Ÿ7™7 EÔ*ä”2—8‘8˜E“?¤B§G¡G¨B£KÓ0‰ˆˆ1Ü˜1Ÿ7™7 EÔ*Ü˜1Ÿ7™7 EÕ*r3   c                 ód  — dD ]e  }t        t        j                  |«      t        j                  |«      d¬«      \  }}t        |j                  |«       t        |j                  |«       Œg t        t        j                  d«      t        j
                  d«      d¬«      \  }}t        |j                  d«       t        |j                  d«       t        t        j                  d«      t        j
                  d«      d¬«      \  }}t        |j                  d«       t        |j                  d«       y )Nr•   r    rt   )rf   rf   r�   )rf   r   r    )rf   r   r�   )r   r'   r�   r   rl   r(   r–   s       r1   r—   z#TestCSD.test_empty_input_other_axis#  sÌ   € Û%ˆEÜ”r—x‘x “¬¯©°«¸aÔ@‰DˆAˆqÜ˜qŸw™w¨Ô.Ü˜qŸw™w¨Õ.ð &ô
 ”2—8‘8˜IÓ&¬¯©°Ó(:ÀÔC‰ˆˆ1Ü˜1Ÿ7™7 HÔ-Ü˜1Ÿ7™7 HÔ-ä”2—8‘8˜HÓ%¤r§x¡x°	Ó':ÀÔC‰ˆˆ1Ü˜1Ÿ7™7 HÔ-Ü˜1Ÿ7™7 HÕ-r3   c                 óˆ  — t        j                  d«      }d|d<   t        j                  «       5  t        j                  ddt
        «       t        ||d¬«      \  }}t        ||dd¬	«      \  }}d d d «       t        ||d¬
«      \  }}t        |«       t        |«       t        |«       t        |«       y # 1 sw Y   ŒKxY w)Nr%   r    r   r  z+nperseg=256 is greater than signal length.*r   r¬   r  r  r½   )r'   r(   r  r  r  r  r   r   r  s           r1   r  zTestCSD.test_short_data1  s­   € Ü�H‰H�Q‹KˆØˆˆ!‰ô ×$Ñ$Õ&Ü×#Ñ#ØÐGÌôVä�q˜! FÔ+‰DˆAˆqÜ˜˜A f°cÔ:‰FˆB�÷	 'ô
 �Q˜ 1Ô%‰ˆˆBÜ˜˜2ÔÜ˜˜2ÔÜ˜˜BÔÜ˜˜BÕ÷ 'Ð&ús   ¯?B8Â8Cc                 ój  — t        t        t        t        j                  d«      t        j
                  d«      dt        j                  g d¢«      «       t        t        t        t        j                  d«      t        j
                  d«      dt        j                  d«      j                  d«      «       y r!  )	r]   r^   r   r'   r(   r*   rÆ   r<   rk   r_   s    r1   r"  zTestCSD.test_window_long_or_ndB  sh   € Ü”j¤#¤r§x¡x°£{´B·G±G¸A³JÀÜ—h‘hš{Ó+ô	-ä”j¤#¤r§x¡x°£{´B·G±G¸A³JÀÜ—i‘i “l×*Ñ*¨5Ó1õ	3r3   c                 ó¬   — t        j                  d«      }d|d d d…<   t        ||dd¬«      \  }}t        j                  g d¢«      }t	        ||d¬	«       y r$  )r'   r(   r   rÆ   r   r+   s        r1   r*  z TestCSD.test_nondefault_noverlapH  sO   € Ü�H‰H�R‹LˆØˆ‰#ˆAˆ#‰Ü�1�a ¨aÔ0‰ˆˆ1Ü�H‰Hò ó ˆä˜˜1 5Ö)r3   c           
      ó„   — t        t        t        t        j                  d«      t        j
                  d«      dddd«       y r,  )r]   r^   r   r'   r(   r*   r_   s    r1   r.  zTestCSD.test_bad_noverlapP  s+   € Ü”j¤#¤r§x¡x°£{´B·G±G¸A³JÀÀ6Ø˜õ	r3   c                 ó‚   — t        t        t        t        j                  d«      t        j
                  d«      dd¬«       y r0  )r]   r^   r   r'   r*   r(   r_   s    r1   r2  zTestCSD.test_nfft_too_shortT  s'   € Ü”j¤#¤r§w¡w¨r£{´B·H±H¸R³LÀqØö	!r3   c                 óÌ   — t        j                  t        d¬«      5  t        t	        j
                  d«      t	        j
                  d«      d¬«       d d d «       y # 1 sw Y   y xY w)Nzx and y cannot be broadcast.*rª   )r    r%   r    )re   r%   r[   r½   )r³   r   r^   r   r'   r*   r_   s    r1   Útest_incompatible_inputsz TestCSD.test_incompatible_inputsX  s;   € Ü�]‰]œ:Ð-LÖMÜ”—‘˜	Ó"¤B§G¡G¨F£O¸QÕ?÷ N×MÑMús   œ5AÁA#c                 ó:  — t        j                  dd«      }d|d<   d|d<   t        ||d¬«      \  }}t        |t        j                  ddd«      «       t        j
                  g d	¢d«      }t        ||d
d
¬«       t        |j                  |j                  k(  «       y r4  )r'   r(   r   r   r)   rÆ   r   rN   r+   s        r1   rŸ   z"TestCSD.test_real_onesided_even_32]  s†   € Ü�H‰H�R˜ÓˆØˆˆ!‰Øˆˆ!‰Ü�1�a Ô#‰ˆˆ1Ü˜œ2Ÿ;™; q¨#¨qÓ1Ô2Ü�H‰Hò "Ø#&ó(ˆä˜˜1 4¨dÕ3Ü�—‘˜1Ÿ7™7Ñ"Õ#r3   c                 ó<  — t        j                  dd«      }d|d<   d|d<   t        ||d¬«      \  }}t        |t        j                  d«      d	z  «       t        j
                  g d
¢d«      }t        ||dd¬«       t        |j                  |j                  k(  «       y r6  )r'   r(   r   r   r<   rÆ   r   rN   r+   s        r1   r¢   z!TestCSD.test_real_onesided_odd_32h  s†   € Ü�H‰H�R˜ÓˆØˆˆ!‰Øˆˆ!‰Ü�1�a Ô#‰ˆˆ1Ü˜œ2Ÿ9™9 S›>¨#Ñ-Ô.Ü�H‰Hò "Ø#&ó(ˆä˜˜1 4¨dÕ3Ü�—‘˜1Ÿ7™7Ñ"Õ#r3   c                 ó&  — t        j                  dd«      }d|d<   d|d<   t        ||dd¬«      \  }}t        |t	        dd«      «       t        j
                  g d	¢d«      }t        ||d
d
¬«       t        |j                  |j                  k(  «       y r8  ©r'   r(   r   r   r   rÆ   r   rN   r+   s        r1   r¥   zTestCSD.test_real_twosided_32s  sƒ   € Ü�H‰H�R˜ÓˆØˆˆ!‰Øˆˆ!‰Ü�1�a °EÔ:‰ˆˆ1Ü˜œ7 1 c›?Ô+Ü�H‰Hò "à#&ó(ˆô 	˜˜1 4¨dÕ3Ü�—‘˜1Ÿ7™7Ñ"Õ#r3   c                 ó\  — t        j                  dd«      }d|d<   d|d<   t        ||dd¬«      \  }}t        |t	        dd«      «       t        j
                  g d	¢d
«      }t        ||dd¬«       t        |j                  |j                  k(  d|j                  › d|j                  › �«       y r;  r·  r+   s        r1   r¨   zTestCSD.test_complex_32  s�   € Ü�H‰H�R˜ÓˆØˆˆ!‰Øˆˆ!‰Ü�1�a °EÔ:‰ˆˆ1Ü˜œ7 1 c›?Ô+Ü�H‰Hò FØGJóLˆä˜˜1 4¨dÕ3Ü�—‘˜1Ÿ7™7Ñ"Ø" 1§7¡7 )¨2¨a¯g©g¨YÐ7õ	9r3   c                 ó¾  — t        j                  d«      }t        j                  d«      }d}t        |d«      d |dz  dz    }|dxx   dz  cc<   t	        ||d|¬«      \  }}t	        ||d	|¬«      \  }}t        ||«       t        ||«       d
}t        |d«      d |dz   dz   }t	        ||d|¬«      \  }}t	        ||d	|¬«      \  }}t        ||«       t        ||«       y r@  )r'   r(   r*   r   r   r   )r,   r-   r  rƒ   r.   rD  rE  rF  s           r1   rG  zTestCSD.test_padded_freqs‹  sá   € Ü�H‰H�R‹LˆÜ�G‰G�B‹KˆàˆÜ�D˜#Ó˜z  a¡¨¡	Ð*ˆØ	ˆ"‹�‰‹Ü�a˜ A¨DÔ1‰ˆˆaÜ�q˜! Q¨TÔ2‰ˆˆqÜ˜˜4Ô Ü˜˜5Ô!àˆÜ�D˜#Ó˜~ ¨¡¨A¡Ð.ˆÜ�a˜ A¨DÔ1‰ˆˆaÜ�q˜! Q¨TÔ2‰ˆˆqÜ˜˜4Ô Ü˜˜5Õ!r3   c                 ó*  — t         j                  j                  d«      }|j                  «       }t	        ||ddd¬«      \  }}t	        ||ddd¬«      \  }}t        ||«       t	        ||ddd¬«      \  }}t	        ||ddd¬«      \  }}t        ||«       y )Nr%  r%   ÚmeanF)r¾   ro  r@   rn  )r'   r`  rb  rŠ  r   r   )r,   r-   r  rE  Úp_sameÚp_copieds         r1   Útest_copied_datazTestCSD.test_copied_dataž  s—   € Ü�I‰I�O‰O˜BÓˆØ�F‰F‹Hˆä˜˜1 a°Ø(-ô/‰	ˆˆ6ä˜!˜Q¨°6Ø*/ô1‰ˆˆ8ä˜ Ô)ä˜˜1 a°Ø(-ô/‰	ˆˆ6ä˜!˜Q¨°8Ø*/ô1‰ˆˆ8ä˜ Õ)r3   N)&r°   r±   r²   r‚  r„  r�  r’  r2   r=   rD   rK   r×   rÚ   rT   rY   r`   rì   r÷   r  r  r  rq   rw   r€   r’   r—   r  r"  r*  r.  r2  r³  rŸ   r¢   r¥   r¨   rG  r¾  r¸   r3   r1   r{  r{  >  s´   „ ò	ò	ò$ò ò 4ò4ò4ò4ò4ò4ò4ò4òKò9ò
,ò9ò9ò9òJò>ò$ò&+ò,.ò ò"3ò*òò!ò@ò
	$ò	$ò
$ò
9ò"ó&*r3   r{  c                   ó   — e Zd Zd„ Zd„ Zy)ÚTestCoherencec                 ó  — t         j                  j                  d«      }t        j                  |«      }t        j                  ddd«      }t        j
                  d«      }t        ||d¬«      \  }}t        ||«       t        ||«       y ©Nrc   r   r!   rh   rf   r½   )r'   r`  rb  rŠ  r)   r*   r   r   ©r,   r-   r  r.   ÚCró   ÚC1s          r1   Útest_identical_inputz"TestCoherence.test_identical_input°  sf   € Ü�I‰I�O‰O˜BÓˆÜ�G‰G�A‹Jˆä�K‰K˜˜3 Ó"ˆÜ�G‰G�A‹JˆÜ˜1˜a¨Ô,‰ˆˆBä˜˜2ÔÜ˜˜2Õr3   c                 óò   — t         j                  j                  d«      }| }t        j                  ddd«      }t        j                  d«      }t        ||d¬«      \  }}t        ||«       t        ||«       y rÂ  )r'   r`  rb  r)   r*   r   r   rÃ  s          r1   Útest_phase_shifted_inputz&TestCoherence.test_phase_shifted_input»  s`   € Ü�I‰I�O‰O˜BÓˆØˆBˆä�K‰K˜˜3 Ó"ˆÜ�G‰G�A‹JˆÜ˜1˜a¨Ô,‰ˆˆBä˜˜2ÔÜ˜˜2Õr3   N)r°   r±   r²   rÆ  rÈ  r¸   r3   r1   rÀ  rÀ  ¯  s   „ ò	ó	r3   rÀ  c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)ÚTestSpectrogramc                 óö   — t         j                  j                  d«      }d}d}d}d}t        |||||«      \  }}}t	        |||||«      \  }	}
t        ||	«       t        t        j                  |d¬«      |
«       y )Nr]  rA   ©rK  g      Ð?r   re   r#   rt   )r'   r`  rb  r   r   r   r»  )r,   r-   rN  r­   r¾   r'  r.   rE  ÚPÚfwÚPws              r1   Útest_average_all_segmentsz)TestSpectrogram.test_average_all_segmentsÈ  su   € Ü�I‰I�O‰O˜DÓ!ˆàˆØ ˆØˆØˆä˜a  V¨W°hÓ?‰ˆˆ1ˆaÜ�q˜"˜f g¨xÓ8‰ˆˆBÜ˜˜2ÔÜœŸ™ ¨Ô+¨RÕ0r3   c                 ó´  — t         j                  j                  d«      }d}d}d}d}t        |||||«      \  }}}t	        j
                  dd«      }	t        |||	d d¬«      \  }
}}t        |
j                  d«       t        |j                  d«       t        t        t        |||	d	¬
«       t	        j
                  dd«      }t        t        t        |||d ¬
«       y )Nr]  rA   rÌ  r   re   r&  )r"   )r"   éI   r%   r½   i   )
r'   r`  rb  r   r	   rz   r   rl   r]   r^   )r,   r-   rN  r­   r¾   r'  r.   rE  rÍ  r|   r}   ÚPer   s                r1   r€   z$TestSpectrogram.test_window_externalÕ  sÂ   € Ü�I‰I�O‰O˜DÓ!ˆàˆØ ˆØˆØˆÜ˜a  V¨W°hÓ?‰ˆˆ1ˆaä×Ñ °Ó4ˆÜ  2 s°DÀ1ÔE‰	ˆˆAˆrÜ˜2Ÿ8™8 TÔ*Ü˜2Ÿ8™8 VÔ,Ü”j¤+¨qØ˜# qõ	*ä×#Ñ# O°TÓ:ˆÜ”j¤+¨qØ˜'¨4ö	1r3   c                 óÀ  — t         j                  j                  d«      }d}t        ||d¬«      \  }}}t	        j
                  «       5  t	        j                  ddt        «       t        ||dd¬«      \  }}}d d d «       t        ||d	¬
«      \  }}}	t        ||d¬
«      \  }
}}t        ||«       t        ||	«       t        |
«       t        |«       y # 1 sw Y   Œ^xY w)Nr]  rA   rÌ  r¬   r  zInperseg = 1025 is greater than input length  = 1024, using nperseg = 1024i  r  r  r½   )	r'   r`  rb  r   r  r  r  r  r   )r,   r-   rN  r.   rE  r/   ró   rô   rõ   rö   Úf3Úp3s               r1   r  zTestSpectrogram.test_short_dataè  sÏ   € Ü�I‰I�O‰O˜DÓ!ˆØˆô ˜a ¨NÔ;‰ˆˆ1ˆaÜ×$Ñ$Õ&Ü×#Ñ#Øð'äô	ô $ A r°.Ø,0ô2‰IˆB��2÷ 'ô    2¨sÔ3‰	ˆˆAˆrÜ  2¨tÔ4‰	ˆˆAˆrÜ˜˜2ÔÜ˜˜2ÔÜ˜˜BÔÜ˜˜BÕ÷ 'Ð&ús   Á/CÃCN)r°   r±   r²   rÐ  r€   r  r¸   r3   r1   rÊ  rÊ  Ç  s   „ ò1ò1ó& r3   rÊ  c                   ón  — e Zd Zd„ Zd„ Zej                  j                  d«      d„ «       Zd„ Z	d„ Z
d„ Zd„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zej                  j                  d«      d„ «       Zd„ Zd„ Zej                  j                  d«      d„ «       Zd„ Zej                  j                  d«      d„ «       Zy)ÚTestLombscarglec           	      ó´  — d}d}dt         j                  z  }d}d}d}t         j                  j                  d«      }|j	                  |«      }t        j
                  dt         j                  z  d	t         j                  z  |«      ||k\     }	|t        j                  ||	z  |z   «      z  }
t        j
                  dd	|«      }t        |	|
|«      }|d
   |d   z
  }||t        j                  |«         z
  |dz  k  sJ ‚t        |	|
|t        j                  |	|j                  ¬«      ¬«      }|d
   |d   z
  }||t        j                  |«         z
  |dz  k  sJ ‚y)zgTest if frequency location of peak corresponds to frequency of
        generated input signal.
        r$   rA   r!   éd   éè  çffffffæ?éé# ç{®Gáz„?ç      $@r    r   rM   ©ÚweightsN)r'   rQ  r`  ÚRandomStateÚrandr)   rP  r   ÚargmaxÚ	ones_likerN   )r,   ÚamplÚwÚphiÚninÚnoutr/   ÚrngÚrÚtr  r.   rÍ  Údeltas                 r1   Útest_frequencyzTestLombscargle.test_frequency   sF  € ð ˆØˆØ”B—E‘E‰kˆØˆØˆØˆô �i‰i×#Ñ# GÓ,ˆØ�H‰H�S‹MˆÜ�K‰K˜œRŸU™U™
 C¬¯©¡I¨sÓ3°A¸±FÑ;ˆð ”2—6‘6˜!˜A™# ™)Ó$Ñ$ˆô �K‰K˜˜c 4Ó(ˆô ˜˜1˜aÓ ˆð �!‘�q˜‘t‘ˆØ�1”R—Y‘Y˜q“\‘?Ñ" e¨B¡hÒ/Ð0Ð/ô ˜˜1˜a¬¯©°a¸q¿w¹wÔ)GÔHˆð �!‘�q˜‘t‘ˆØ�1”R—Y‘Y˜q“\‘?Ñ" e¨B¡hÒ/Ð0Ñ/r3   c                 ó  — d}d}dt         j                  z  }d}d}d}t         j                  j                  d«      }|j	                  |«      }t        j
                  dt         j                  z  dt         j                  z  |«      ||k\     }	|t        j                  ||	z  |z   «      z  }
t        j
                  dd|«      }t        |	|
|«      }t        j                  d	|z  |	j                  d
   z  «      }t        |||k(     |d¬«       y )Nr$   rA   r!   rÛ  rÜ  rÝ  rÞ  rß  g      @r   rp  rO  )r'   rQ  r`  râ  rã  r)   rP  r   rR  rl   r   )r,   ræ  rç  rè  ré  rê  r/   rë  rì  rí  r  r.   Úpgrams                r1   Útest_amplitudezTestLombscargle.test_amplitude(  sð   € ð
 ˆØˆØ”B—E‘E‰kˆØˆØˆØˆô �i‰i×#Ñ# GÓ,ˆØ�H‰H�S‹MˆÜ�K‰K˜œRŸU™U™
 C¬¯©¡I¨sÓ3°A¸±FÑ;ˆð ”2—6‘6˜!˜A™# ™)Ó$Ñ$ˆô �K‰K˜˜c 4Ó(ˆô ˜A˜q !Ó$ˆô —‘˜˜e™ a§g¡g¨a¡jÑ0Ó1ˆô 	˜˜a ™d™ T°Ö5r3   zignore::DeprecationWarningc                 ó€  — d}d}dt         j                  z  }d}d}d}d}t         j                  j                  d«      }|j	                  |«      }	t        j
                  d	t         j                  z  d
t         j                  z  |«      |	|k\     }
|t        j                  ||
z  |z   «      z  |z   }t        j
                  d	d
|«      }t        |
||d¬«      }t        |
||j                  «       z
  |d¬«      }t        ||«       t        |
||dd¬«      }t        |
||j                  «       z
  |dd¬«      }t        ||«       y )Nr$   rA   r!   rÚ  rÛ  rÜ  ç333333Ã?rÝ  rÞ  rß  T©Ú	precenterF)rö  Úfloating_mean)
r'   rQ  r`  râ  rã  r)   rP  r   r»  r   )r,   ræ  rç  rè  ré  rê  r/   Úoffsetrë  rì  rí  r  r.   rñ  Úpgram2s                  r1   Útest_precenterzTestLombscargle.test_precenterI  s(  € ð ˆØˆØ”B—E‘E‰kˆØˆØˆØˆØˆô �i‰i×#Ñ# GÓ,ˆØ�H‰H�S‹MˆÜ�K‰K˜œRŸU™U™
 C¬¯©¡I¨sÓ3°A¸±FÑ;ˆð ”2—6‘6˜!˜A™# ™)Ó$Ñ$ vÑ-ˆô �K‰K˜˜c 4Ó(ˆô ˜A˜q !¨tÔ4ˆÜ˜Q  A§F¡F£H¡¨a¸5ÔAˆô 	˜˜vÔ&ô
 ˜A˜q !¨tÀ4ÔHˆÜ˜Q  A§F¡F£H¡¨a¸5ÐPTÔUˆô 	˜˜vÕ&r3   c                 óÐ  — d}d}dt         j                  z  }d}d}d}t         j                  j                  d«      }|j	                  |«      }t        j
                  dt         j                  z  d	t         j                  z  |«      ||k\     }	|t        j                  ||	z  |z   «      z  }
t        j
                  dd	|«      }t        |	|
|«      }t        |	|
|d
¬«      }t        j                  |	«      t        |	j                  d   «      z  }||
z  |
z  j                  «       }|}d||	j                  d   z  z  }t        ||z  |«       t        t        j                  |«      d«       y )Nr$   rA   r!   rÚ  rÛ  rÜ  rÝ  rÞ  rß  T©Ú	normalizer   re   )r'   rQ  r`  râ  rã  r)   rP  r   rå  Úfloatrl   ru  r   Úmax)r,   ræ  rç  rè  ré  rê  r/   rë  rì  rí  r  r.   rñ  rù  rá  ÚYY_hatÚYYÚscale_to_uses                     r1   Útest_normalizezTestLombscargle.test_normalizer  s>  € ð ˆØˆØ”B—E‘E‰kˆØˆØˆØˆô �i‰i×#Ñ# GÓ,ˆØ�H‰H�S‹MˆÜ�K‰K˜œRŸU™U™
 C¬¯©¡I¨sÓ3°A¸±FÑ;ˆð ”2—6‘6˜!˜A™# ™)Ó$Ñ$ˆô �K‰K˜˜c 4Ó(ˆô ˜A˜q !Ó$ˆÜ˜Q  1°Ô5ˆô —,‘,˜q“/¤%¨¯©°©
Ó"3Ñ3ˆØ˜A‘+ ‘/×&Ñ&Ó(ˆØˆØ˜"˜QŸW™W Q™Z™-Ñ(ˆô 	˜ Ñ,¨fÔ5ÜœŸ™˜v›¨Õ,r3   c           	      ó<  — t        j                  ddd«      }t        j                  ddd«      }t        j                  ddd«      dz   }t        t        t        |||«       t        j
                  t        j                  t        j                  ddd«      d«      dd¬«      }t        j                  ddd«      }t        j                  ddd«      dz   }t        t        t        |||«       t        j                  ddd«      }t        j
                  t        j                  t        j                  ddd«      d«      dd¬«      }t        j                  ddd«      dz   }t        t        t        |||«       t        j                  ddd«      }t        j                  ddd«      }t        j
                  t        j                  t        j                  ddd«      d«      dz   dd¬«      }t        t        t        |||«       t        j                  ddd«      }t        j                  ddd«      }t        j                  ddd«      dz   }t        j
                  t        j                  t        j                  ddd«      d«      dd¬«      }t        t        t        ||||¬«       y )Nr   r    re   r�   rL  rt   rà  )r'   r)   r]   r^   r   ÚrepeatÚexpand_dims©r,   rí  r  r.   rá  s        r1   Útest_wrong_shapez TestLombscargle.test_wrong_shape–  s÷  € ô �K‰K˜˜1˜aÓ ˆÜ�K‰K˜˜1˜aÓ ˆÜ�K‰K˜˜1˜aÓ  3Ñ&ˆÜ”j¤+¨q°!°QÔ7ô �I‰I”b—n‘n¤R§[¡[°°A°qÓ%9¸1Ó=¸qÀqÔIˆÜ�K‰K˜˜1˜aÓ ˆÜ�K‰K˜˜1˜aÓ  3Ñ&ˆÜ”j¤+¨q°!°QÔ7ô �K‰K˜˜1˜aÓ ˆÜ�I‰I”b—n‘n¤R§[¡[°°A°qÓ%9¸1Ó=¸qÀqÔIˆÜ�K‰K˜˜1˜aÓ  3Ñ&ˆÜ”j¤+¨q°!°QÔ7ô �K‰K˜˜1˜aÓ ˆÜ�K‰K˜˜1˜aÓ ˆÜ�I‰I”b—n‘n¤R§[¡[°°A°qÓ%9¸1Ó=ÀÑCÀQÈQÔOˆÜ”j¤+¨q°!°QÔ7ô �K‰K˜˜1˜aÓ ˆÜ�K‰K˜˜1˜aÓ ˆÜ�K‰K˜˜1˜aÓ  3Ñ&ˆÜ—)‘)œBŸN™N¬2¯;©;°q¸!¸QÓ+?ÀÓCÀQÈQÔOˆÜ”j¤+¨q°!°QÀÖHr3   c                 óà   — t        j                  dddd¬«      }t        j                  d|z  «      }t        j                  dddd¬«      d	z   }t        |||d
z  t         j                  z  «       y )Nr   rf   rÛ  F)Úendpointr[   é2   iô  rL  re   )r'   r)   rP  r   rQ  )r,   rí  r  r.   s       r1   Útest_lombscargle_atan_vs_atan2z.TestLombscargle.test_lombscargle_atan_vs_atan2·  sZ   € ô �K‰K˜˜2˜t¨eÔ4ˆÜ�F‰F�1�Q‘3‹KˆÜ�K‰K˜˜2˜s¨UÔ3°cÑ9ˆÜ�A�q˜!˜A™#œbŸe™e™)Õ$r3   c                 óô   — t        j                  ddd«      }t        j                  ddd«      }t        j                  ddd«      dz   }t        j                  ddd«      }t        t        t        ||||¬«       y )Nr   r    r�   rL  re   rà  )r'   r)   r]   r^   r   r  s        r1   Útest_wrong_shape_weightsz(TestLombscargle.test_wrong_shape_weights¿  sc   € ô �K‰K˜˜1˜aÓ ˆÜ�K‰K˜˜1˜aÓ ˆÜ�K‰K˜˜1˜aÓ  3Ñ&ˆÜ—+‘+˜a  AÓ&ˆÜ”j¤+¨q°!°QÀÖHr3   c                 óÞ   — t        j                  d«      }t        j                  d«      }t        j                  d«      }t        j                  d«      }t        t        t
        ||||¬«       y ©Nr    rà  ©r'   r(   r*   r]   r^   r   r  s        r1   Útest_zero_division_weightsz*TestLombscargle.test_zero_division_weightsÈ  sJ   € ô �H‰H�Q‹KˆÜ�H‰H�Q‹KˆÜ�G‰G�A‹JˆÜ—(‘(˜1“+ˆÜ”j¤+¨q°!°QÀÖHr3   c                 óð  — d}d}d}d}d}d}t         j                  j                  d«      }|j                  |«      }t        j                  dt         j
                  z  d	t         j
                  z  |«      ||k\     }	|t        j                  ||	z  |z   «      z  }
t        j                  dd	|«      }t        |	|
|d
¬«      }t        |	|
|d¬«      }t        |	|
|d¬«      }t        |	|
|d¬«      }t        |	|
|d¬«      }t        ||«       t        ||«       t        j                  |
«      t        |
j                  d   «      z  }||
z  |
z  j                  «       }|}t        |dz  t        |	j                  d   «      |z  z  |«       t        j                  ||k(  «      d   d   }t        t        j                  ||   «      |«       t        t         t        |	|
|d¬«       t        t         t        |	|
|d¬«       y )Nr$   rA   r   rÚ  rÛ  rÜ  rÝ  rÞ  rß  Frü  TÚpowerrý  Ú	amplitudeÚlombre   )r'   r`  râ  rã  r)   rQ  rP  r   r   rå  rþ  rl   ru  Úwhererv  r]   r^   )r,   ræ  rç  rè  ré  rê  r/   rë  rì  rí  r  r.   Úpgram_falseÚ
pgram_trueÚpgram_powerÚ
pgram_normÚ	pgram_amprá  r   r  Úf_is                        r1   Útest_normalize_parameterz(TestLombscargle.test_normalize_parameterÑ  sÅ  € ð ˆØˆØˆØˆØˆØˆô �i‰i×#Ñ# GÓ,ˆØ�H‰H�S‹MˆÜ�K‰K˜œRŸU™U™
 C¬¯©¡I¨sÓ3°A¸±FÑ;ˆð ”2—6‘6˜!˜A™# ™)Ó$Ñ$ˆô �K‰K˜˜c 4Ó(ˆô " ! Q¨°UÔ;ˆÜ   A q°DÔ9ˆ
Ü! ! Q¨°WÔ=ˆÜ   A q°KÔ@ˆ
Ü  1 a°;Ô?ˆ	ô 	˜ [Ô1Ü˜
 JÔ/ô —,‘,˜q“/¤%¨¯©°©
Ó"3Ñ3ˆØ˜A‘+ ‘/×&Ñ&Ó(ˆØˆÜ˜ cÑ)¬U°1·7±7¸1±:Ó->ÀÑ-CÑDÀjÔQô �h‰h�q˜!‘t‹n˜QÑ Ñ"ˆÜœŸ™˜y¨™~Ó.°Ô5ô 	”j¤+¨q°!°QÀ&ÕIä”j¤+¨q°!°QÀ!ÖDr3   c                 óä  — d}d}dt         j                  z  }d}d}d}d}t         j                  j                  d«      }|j	                  |«      }	t        j
                  d	t         j                  z  d
t         j                  z  |«      |	|k\     }
|t        j                  ||
z  |z   «      z  }t        j
                  d	d
|«      }t        |
||d¬«      }t        |
||z   |d¬«      }t        ||«       y )Nr$   rA   r!   rÚ  rÛ  rÜ  ç333333@rÝ  rÞ  rß  T)r÷  )	r'   rQ  r`  râ  rã  r)   rP  r   r   ©r,   ræ  rç  rè  ré  rê  r/   rø  rë  rì  rí  r  r.   rñ  Úpgram_offsets                  r1   Útest_offset_removalz#TestLombscargle.test_offset_removal  sà   € ð
 ˆØˆØ”B—E‘E‰kˆØˆØˆØˆØˆô �i‰i×#Ñ# GÓ,ˆØ�H‰H�S‹MˆÜ�K‰K˜œRŸU™U™
 C¬¯©¡I¨sÓ3°A¸±FÑ;ˆð ”2—6‘6˜!˜A™# ™)Ó$Ñ$ˆô �K‰K˜˜c 4Ó(ˆô ˜A˜q !°4Ô8ˆÜ" 1 a¨&¡j°!À4ÔHˆô 	˜˜|Õ,r3   c                 óÖ  — d}d}d}d}d}d}d}t         j                  j                  d«      }|j                  |«      }	t        j                  dt         j
                  z  d	t         j
                  z  |«      |	|k\     }
|t        j                  ||
z  |z   «      z  }t        j                  dd	|«      }t        |
||d
d¬«      }t        |
||z   |d
d¬«      }|d   dk  sJ ‚|d   dkD  sJ ‚y )Nr$   rA   r   rÛ  rÜ  re   rÝ  rÞ  rß  TF©rý  r÷  r!   ©r'   r`  râ  rã  r)   rQ  Úcosr   r!  s                  r1   Útest_floating_mean_falsez(TestLombscargle.test_floating_mean_false!  s÷   € ð ˆØˆØˆØˆØˆØˆØˆô �i‰i×#Ñ# GÓ,ˆØ�H‰H�S‹MˆÜ�K‰K˜œRŸU™U™
 C¬¯©¡I¨sÓ3°A¸±FÑ;ˆð ”2—6‘6˜!˜A™# ™)Ó$Ñ$ˆô �K‰K˜˜c 4Ó(ˆô ˜A˜q !¨tÀ5ÔIˆÜ" 1 a¨&¡j°!¸tØ16ô8ˆð
 �Q‰x˜$ŠÐˆà˜A‰ Ò$Ð%Ñ$r3   c                 óT  — d}d}d}d}d}d}d}t         j                  j                  d«      }|j                  |«      }	t        j                  d	t         j
                  z  d
t         j
                  z  |«      |	|k\     }
|t        j                  ||
z  |z   «      z  |z   }t        j                  d	d
|«      }t        j                  ||k(  «      d   d   }t        |
||dd¬«      }t        t        j                  ||   «      |«       t        t        j                  ||   «       |«       y )Nr$   rA   ç¸…ëQ¸¾?rÚ  rÛ  rÜ  r   rÝ  rÞ  rß  r   r  Tr%  )r'   r`  râ  rã  r)   rQ  r'  r  r   r   rv  Úangle)r,   ræ  rç  rè  ré  rê  r/   rø  rë  rì  rí  r  r.   Úf_indxrñ  s                  r1   Útest_amplitude_is_correctz)TestLombscargle.test_amplitude_is_correctC  s  € ð ˆØˆØˆØˆØˆØˆØˆô �i‰i×#Ñ# GÓ,ˆØ�H‰H�S‹MˆÜ�K‰K˜œRŸU™U™
 C¬¯©¡I¨sÓ3°A¸±FÑ;ˆð ”2—6‘6˜!˜A™# ™)Ó$Ñ$ vÑ-ˆô �K‰K˜˜c 4Ó(ˆô —‘˜!˜Q™$“ Ñ" 1Ñ%ˆô ˜A˜q !¨{È$ÔOˆô 	œŸ™˜u V™}Ó-¨tÔ4ô 	œŸ™ %¨¡-Ó0Ð0°#Õ6r3   c                 óà   — t        j                  d«      }t        j                  d«      }t        j                  d«      }t        j                  d«       }t        t        t
        ||||¬«       y r  r  r  s        r1   Útest_negative_weightz$TestLombscargle.test_negative_weightg  sL   € ô �H‰H�Q‹KˆÜ�H‰H�Q‹KˆÜ�G‰G�A‹JˆÜ—7‘7˜1“:�+ˆÜ”j¤+¨q°!°QÀÖHr3   c                 óŽ   — g d¢}g d¢}t        j                  ddd«      }dt         j                  z  |z  }t        |||dd¬«       y )	N)yg   ËˆÝAg   üËˆÝAg   öÌˆÝAg   ðÍˆÝAg   êÎˆÝAg   äÏˆÝAg   ÞÐˆÝAg   ØÑˆÝAg   ÒÒˆÝAg   ÌÓˆÝAg   ÆÔˆÝAg   ÀÕˆÝAg   ºÖˆÝAg   ´×ˆÝAg   ®ØˆÝAg   ¨ÙˆÝAg   ¢ÚˆÝAg   œÛˆÝAg   –ÜˆÝAg   �ÝˆÝAg   ðˆÝAg   ñˆÝAg   òˆÝAg   óˆÝAg   ôˆÝAg    õˆÝAg   úõˆÝAg   ôöˆÝAg   î÷ˆÝAg   èøˆÝAg   âùˆÝAg   ÜúˆÝAg   ÖûˆÝAg   ÐüˆÝAg   ÊýˆÝAg   ÄþˆÝAg   ¾ÿˆÝAg   ¸ ‰ÝAg   ²‰ÝAg   ¬‰ÝAg   "‰ÝAg   ‰ÝAg   ‰ÝAg   ‰ÝAg   
‰ÝAg   ‰ÝAg   þ‰ÝAg   ø‰ÝAg   ò ‰ÝAg   ì!‰ÝAg   æ"‰ÝAg   à#‰ÝAg   Ú$‰ÝAg   Ô%‰ÝAg   Î&‰ÝAg   È'‰ÝAg   Â(‰ÝAg   ¼)‰ÝAg   ¶*‰ÝAg   °+‰ÝAg   Zc‰ÝAg   Td‰ÝAg   Ne‰ÝAg   Hf‰ÝAg   Bg‰ÝAg   <h‰ÝAg   6i‰ÝAg   0j‰ÝAg   *k‰ÝAg   $l‰ÝAg   m‰ÝAg   n‰ÝAg   o‰ÝAg   p‰ÝAg   q‰ÝAg    r‰ÝAg   úr‰ÝAg   ôs‰ÝAg   ît‰ÝAg   èu‰ÝAg   Üw‰ÝAg   Öx‰ÝAg   Ðy‰ÝAg   Êz‰ÝAg   Ä{‰ÝAg   ¾|‰ÝAg   ¸}‰ÝAg   ²~‰ÝAg   ¬‰ÝAg   ¦€‰ÝAg    �‰ÝAg   š‚‰ÝAg   ”ƒ‰ÝAg   Ž„‰ÝAg   ˆ…‰ÝAg   ‚†‰ÝAg   |‡‰ÝAg   vˆ‰ÝAg   p‰‰ÝAg   jŠ‰ÝAg   ™‰ÝAg   
š‰ÝAg   ›‰ÝAg   þ›‰ÝAg   øœ‰ÝAg   ò�‰ÝAg   ìž‰ÝAg   æŸ‰ÝAg   à ‰ÝAg   Ú¡‰ÝAg   Ô¢‰ÝAg   Î£‰ÝAg   È¤‰ÝAg   Â¥‰ÝAg   ¼¦‰ÝAg   ¶§‰ÝAg   °¨‰ÝAg   ª©‰ÝAg   ¤ª‰ÝAg   ž«‰ÝAg   ˜¬‰ÝA)yg     @§@g     Ü¨@g     J­@g     ·±@g     9µ@g     ì¸@g     ¬¼@g     2À@g    €Â@g     ÀÃ@g     iÅ@g     øÆ@g    €jÈ@g    €½É@g     ïÊ@g    €üË@g     åÌ@g     ¦Í@g    €?Î@g    €¯Î@g     n¶@g     ×²@g     .¯@g     ª@g     h§@g     ¨@g     Þ«@g     Ó°@g     >´@g     ç·@g     §»@g     b¿@g     …Á@g    €HÃ@g    €÷Ä@g     ŽÆ@g    €È@g    €dÉ@g     ŸÊ@g    €¶Ë@g     p·@g     Ì³@g     m°@g     D«@g     Ò§@g     �§@g     ˜ª@g     ð¯@g     G³@g     ä¶@g     ¡º@g     _¾@g     Á@g    €ÏÂ@g    €„Ä@g     "Æ@g    €¤Ç@g    €É@g     MÊ@g     nË@g    €ìÉ@g     žÈ@g     0Ç@g     ¥Å@g      Ä@g    €DÂ@g     wÀ@g     9½@g     y¹@g     Âµ@g     6²@g     ®@g     \©@g     F§@g     –¨@g     Ð¬@g     k±@g     æ´@g     –¸@g     V¼@g     ÙÁ@g     ™Ã@g     DÅ@g    €ÕÆ@g    €JÈ@g    € É@g     ÕÊ@g     æË@g    €ÑÌ@g    €–Í@g    €3Î@g    €§Î@g    €ñÎ@g    €Ï@g     Ï@g     ÒÎ@g    €sÎ@g    €ëÍ@g    €:Í@g    €bÌ@g     „§@g     æ§@g     p«@g     Š°@g     ì³@g     ’·@g     Q»@g     ¿@g     \Á@g     !Ã@g     ÒÄ@g    €jÆ@g     èÇ@g    €FÉ@g    €„Ê@g    €ŸË@g    €•Ì@g     eÍ@g    €Î@g     ŒÎ@g    €áÎ@i�  éx   rÛ  re   T)rö  rý  )r'   r)   rQ  r   )r,   rí  r  ÚperiodsÚangular_freqs        r1   Útest_list_inputzTestLombscargle.test_list_inputp  sG   € ò
ˆò>ˆô@ —+‘+˜c 3¨Ó-ˆØœ2Ÿ5™5‘y 7Ñ*ˆä�A�q˜,°$À$ÖGr3   c                 ó¢  — d}d}d}d}d}d}d}t         j                  j                  d«      }|j                  |«      }	t        j                  d	t         j
                  z  d
t         j
                  z  |«      |	|k\     }
|t        j                  ||
z  |z   «      z  |z   }t        j                  dd
|«      }t        |
||dd¬«      }|d   dk  sJ ‚y )Nr$   rA   r*  rÚ  ié  rÜ  r   rÝ  rÞ  rß  Tr%  ç-Cëâ6?r&  )r,   ræ  rç  rè  ré  rê  r/   rø  rë  rì  rí  r  r.   rñ  s                 r1   Útest_zero_freqzTestLombscargle.test_zero_freq¹  sÑ   € ð
 ˆØˆØˆØˆØˆØˆØˆô �i‰i×#Ñ# GÓ,ˆØ�H‰H�S‹MˆÜ�K‰K˜œRŸU™U™
 C¬¯©¡I¨sÓ3°A¸±FÑ;ˆð ”2—6‘6˜!˜A™# ™)Ó$Ñ$ vÑ-ˆô �K‰K˜˜3 Ó%ˆô ˜A˜q !¨tÀ4ÔHˆð �Q‰x˜$ŠÐ‰r3   c                 óš  — t        dd«      D �cg c]  }|dz   ‘Œ	 c}}t        j                  t        |«      «      }dt        j                  z  gdz  }t        |||«       t        dd«      D �cg c]
  }|dz  dz   ‘Œ c}}t        j                  t        |«      «      }t        j                  dz  gdz  }t        |||«       y c c}w c c}w )Nr   ry   r    r$   re   r[   )rc  r'   r*   r‰  rQ  r   )r,   rí  r  Úfreqss       r1   Útest_simple_div_zeroz$TestLombscargle.test_simple_div_zeroØ  s°   € ô
 " ! RœLÓ)™L�qˆQ�‹U˜LÑ)ˆÜ�G‰G”C˜“F‹OˆØ”R—U‘U‘�˜a‘ˆÜ�A�q˜%Ô ô $ A rœlÓ+™l˜ˆQˆq‰S�1‹W˜lÑ+ˆÜ�G‰G”C˜“F‹OˆÜ—‘�s‘�˜a‘ˆä�A�q˜%Õ ùò *ùò ,s   �CÁ.Cc                 ó®  — d}d}dt         j                  z  }d}d}d}t         j                  j                  «       }|j                  |«      }t        j                  dt         j                  z  dt         j                  z  |«      ||k\     }	|t        j
                  ||	z  |z   «      z  }
t        j                  dd|«      }t        j                  |
«      }|	j                  «       }|
j                  «       }|j                  «       }|j                  «       }t        |	|
|d	|¬
«       t        |	|«       t        |
|«       t        ||«       t        ||«       y )Nr$   rA   r!   rÚ  rÛ  rÜ  rÞ  rß  T)rö  rá  )
r'   rQ  r`  Údefault_rngr)   rP  rå  rŠ  r   r   )r,   ræ  rç  rè  ré  rê  r/   rë  rì  rí  r  r.   rá  Út_orgÚy_orgÚf_orgÚweights_orgs                    r1   Útest_input_mutationz#TestLombscargle.test_input_mutationé  s  € ð ˆØˆØ”B—E‘E‰kˆØˆØˆØˆô �i‰i×#Ñ#Ó%ˆØ�J‰J�s‹OˆÜ�K‰K˜œRŸU™U™
 C¬¯©¡I¨sÓ3°A¸±FÑ;ˆð ”2—6‘6˜!˜A™# ™)Ó$Ñ$ˆô �K‰K˜˜c 4Ó(ˆä—,‘,˜q“/ˆð —‘“ˆØ—‘“ˆØ—‘“ˆØ—l‘l“nˆä�A�q˜! t°WÕ=ô 	˜1˜eÔ$Ü˜1˜eÔ$Ü˜1˜eÔ$Ü˜7 KÕ0r3   c                 óv  — d}d}dt         j                  z  }d}d}d}d}t         j                  j                  «       }|j                  |«      }	t        j                  dt         j                  z  d	t         j                  z  |«      |	|k\     }
|t        j
                  ||
z  |z   «      z  |z   }t        j                  dd	|«      }t        j                  d
¬«      5  t        |
||d¬«       d d d «       t        j                  d
¬«      5  t        |
||d¬«       d d d «       y # 1 sw Y   Œ8xY w# 1 sw Y   y xY w)Nr$   rA   r!   rÚ  rÛ  rÜ  rô  rÞ  rß  zleave 'precenter' unspecifiedrª   Trõ  F)	r'   rQ  r`  r<  r)   rP  r³   Údeprecated_callr   )r,   ræ  rç  rè  ré  rê  r/   rø  rë  rì  rí  r  r.   s                r1   Útest_precenter_deprecationz*TestLombscargle.test_precenter_deprecation  s  € ð ˆØˆØ”B—E‘E‰kˆØˆØˆØˆØˆô �i‰i×#Ñ#Ó%ˆØ�J‰J�s‹OˆÜ�K‰K˜œRŸU™U™
 C¬¯©¡I¨sÓ3°A¸±FÑ;ˆð ”2—6‘6˜!˜A™# ™)Ó$Ñ$ vÑ-ˆô �K‰K˜˜c 4Ó(ˆô ×#Ñ#Ð*IÖJÜ˜˜1˜a¨4Õ0÷ Kô ×#Ñ#Ð*IÖJÜ˜˜1˜a¨5Õ1÷ KÐJ÷ KÐJú÷ KÐJús   ÃD#Ä
D/Ä#D,Ä/D8z;ignore:.*leave 'precenter' unspecified.*:DeprecationWarningc                 ó¢   — t        j                  d¬«      5  t        j                  dg«      }t	        |||d«       d d d «       y # 1 sw Y   y xY w)Nzuse keyword argumentsrª   rA   F)r³   rC  r'   Úasarrayr   )r,   Úones     r1   Ú test_positional_args_deprecationz0TestLombscargle.test_positional_args_deprecation/  s>   € ô ×#Ñ#Ð*AÖBÜ—*‘*˜c˜UÓ#ˆCÜ˜˜S # uÔ-÷ C×BÑBús   —%AÁAN)r°   r±   r²   rï  rò  r³   r´   r  rú  r  r  r  r  r  r  r#  r(  r-  r/  r4  r7  r:  rA  rD  rH  r¸   r3   r1   rØ  rØ  ÿ  sò   „ ò&1òP6ðB ‡[�[×ÑÐ <Ó=ñ&'ó >ð&'òP"-òHIòB%òIòIò/Eòb-ò> &òD"7òHIð ‡[�[×ÑÐ <Ó=ñFHó >ðFHòP ò>!ð" ‡[�[×ÑÐ <Ó=ñ%1ó >ð%1òN2ð< ‡[�[×ÑØEóñ.óñ.r3   rØ  c                   óê   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zej                  j                  dddg«      d	„ «       Zd
„ Zd„ Zd„ Zej                  j                  dddg«      d„ «       Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestSTFTc                 óê
  — d„ } |d«      5  t        ddd«       d d d «        |d«      5  t        ddd«       d d d «        |d	«      5  t        t        j                  d
«      dd«       d d d «        |d«      5  t        t        j                  d«      dd«       d d d «        |d«      5  t        ddd«       d d d «        |d«      5  t        ddd«       d d d «        |d	«      5  t        t        j                  d
«      dd«       d d d «        |d«      5  t        t        j                  d«      dd«       d d d «        |d«      5  t        ddd«       d d d «       t        j                  d«      }t        |«      d   } |d	«      5  t        |t        j                  d
«      ¬«       d d d «        |d«      5  t        |t        j                  d«      d¬«       d d d «        |d«      5  t        |d¬«       d d d «        |d«      5  t        |dd¬«       d d d «        |d«      5  t        |dd¬«       d d d «        |d«      5  t        |«       d d d «        |d	«      5  t        |t        j                  d
«      ¬«       d d d «        |d«      5  t        |t        j                  d«      d¬«       d d d «        |d«      5  t        |d¬«       d d d «        |d«      5  t        |dd¬«       d d d «        |d«      5  t        |dd¬«       d d d «       t        j                  t        d¬«      5  t        |ddd¬ «       d d d «        |d!«      5  t        |dd¬"«       d d d «        |d#«      5  t        ||d$¬%«       d d d «        |d&«      5  t        |d d' |d'd  d(¬%«       d d d «        |d)«      5  t        ||d$¬*«       d d d «       d+} |d,|›d-�«      5  t        ||¬.«       d d d «        |d,|›d-�«      5  t        ||¬.«       d d d «       y # 1 sw Y   �ŒÿxY w# 1 sw Y   �ŒîxY w# 1 sw Y   �ŒÊxY w# 1 sw Y   �Œ¦xY w# 1 sw Y   �Œ•xY w# 1 sw Y   �Œ„xY w# 1 sw Y   �Œ`xY w# 1 sw Y   �Œ<xY w# 1 sw Y   �Œ+xY w# 1 sw Y   �ŒäxY w# 1 sw Y   �Œ¿xY w# 1 sw Y   �Œ®xY w# 1 sw Y   �ŒœxY w# 1 sw Y   �ŒŠxY w# 1 sw Y   �Œ{xY w# 1 sw Y   �ŒWxY w# 1 sw Y   �Œ2xY w# 1 sw Y   �Œ!xY w# 1 sw Y   �ŒxY w# 1 sw Y   �ŒýxY w# 1 sw Y   �Œ×xY w# 1 sw Y   �ŒÅxY w# 1 sw Y   �Œ³xY w# 1 sw Y   �Œ›xY w# 1 sw Y   �Œ‰xY w# 1 sw Y   �ŒrxY w# 1 sw Y   y xY w)/Nc                 ó8   — t        j                  t        | ¬«      S )z�Assert for a ValueError matching regexp `match`.

            This little wrapper allows a more concise code layout.
            rª   )r³   r   r^   rª   s    r1   Úchk_VEz.TestSTFT.test_input_validation.<locals>.chk_VE;  s   € ô
 —=‘=¤°5Ô9Ð9r3   z"nperseg must be a positive integerr   iöÿÿÿr   z#noverlap must be less than nperseg.rf   rc   zwindow must be 1-D)re   re   z"window must have length of npersegz"noverlap must be less than npersegz&noverlap must be a nonnegative integerr%  iàÿÿÿr]  re   r¬   z>value specified for nperseg is different from length of windowr  r  i ÿÿÿr½   r&  z.nfft must be greater than or equal to nperseg.r%   rB  zInput stft must be at least 2d!zwindow must have length of 256z1NOLA condition failed, STFT may not be invertiblerª   ©r¾   r'  r­   z/Must specify differing time and frequency axes!©Ú	time_axisÚ	freq_axisz=Unknown value for mode foo, must be one of: \{'psd', 'stft'\}r\   )Úmodez'x and y must be equal if mode is 'stft'é   Ústftz[Unknown boundary option 'foo', must be one of: \['even', 'odd', 'constant', 'zeros', None\])ÚboundaryÚ	not_validzParameter scaling=z not in \['spectrum', 'psd'\]!rG   )r   r'   r*   r   r(   rT  Úistftr³   Úwarnsr  r   )r,   rM  r-   ÚzrH   s        r1   Útest_input_validationzTestSTFT.test_input_validation9  sL  € ò	:ñ Ð8Õ9Ü�v˜s AÔ&÷ :áÐ9Õ:Ü�v˜r 2Ô&÷ ;áÐ(Õ)Ü”r—w‘w˜v“¨¨AÔ.÷ *áÐ8Õ9Ü”r—w‘w˜r“{ B¨Ô*÷ :ñ Ð8Õ9Ü�v˜s AÔ&÷ :áÐ8Õ9Ü�v˜r 2Ô&÷ :áÐ(Õ)Ü”r—w‘w˜v“¨¨AÔ.÷ *áÐ8Õ9Ü”r—w‘w˜r“{ B¨Ô*÷ :áÐ<Õ=Ü�v˜r 3Ô'÷ >ô �H‰H�T‹NˆÜ�‹G�A‰Jˆñ Ð(Õ)Ü�œ2Ÿ7™7 6›?Õ+÷ *áð ,õ -ä�œ2Ÿ7™7 2›;°Õ4÷-ñ Ð8Õ9Ü�˜DÕ!÷ :áÐ9Õ:Ü�˜C¨$Õ/÷ ;áÐDÕEÜ�˜C aÕ(÷ Fñ Ð5Õ6Ü�!ŒH÷ 7áÐ(Õ)Ü�!œBŸG™G F›OÕ,÷ *áÐ4Õ5Ü�!œBŸG™G B›K°Õ5÷ 6áÐ8Õ9Ü�!˜TÕ"÷ :áÐ9Õ:Ü�!˜S¨4Õ0÷ ;áÐDÕEÜ�!˜S qÕ)÷ Fä�\‰\œ+ð .7ö 8ä�!˜S¨1°VÕ<÷8ñ ÐEÕFÜ�!˜q¨AÕ.÷ Gñ ð )õ *ä˜Q ¨Õ.÷*ñ Ð=Õ>Ü˜Q˜t ˜W a¨¨ g°FÕ;÷ ?áð Dõ Eä˜Q ¨EÕ2÷Eð ˆÙÐ* ' Ð+IÐJÕKÜ�˜GÕ$÷ LáÐ* ' Ð+IÐJÕKÜ�!˜WÕ%÷ LÐK÷K :Ñ9úç:Ñ:úç)Ñ)úç9Ñ9ú÷ :Ñ9úç9Ñ9úç)Ñ)úç9Ñ9úç=Ñ=ú÷ *Ñ)ú÷-ñ -ú÷ :Ñ9úç:Ñ:úçEÑEú÷ 7Ñ6úç)Ñ)úç5Ñ5úç9Ñ9úç:Ñ:úçEÑEú÷8ñ 8ú÷ GÑFú÷*ñ *ú÷ ?Ñ>ú÷Eñ Eú÷
 LÑKúçKÐKúsB  ŒPªP$Á!P1Á9!P>Â*QÃQÃ&!Q%Ä!Q2ÅQ?Æ	!RÆ:"RÇ,R&È
R3È)S ÉSÉ$!SÊ"S'ËS4Ë%TÌTÌ6TÍT(Í5T5ÎUÎ9UÏUÐ U)ÐP!Ð$P.Ð1P;Ð>QÑQÑQ"Ñ%Q/Ñ2Q<Ñ?R	ÒRÒR#Ò&R0Ò3R=Ó S
ÓSÓS$Ó'S1Ó4S>ÔTÔTÔT%Ô(T2Ô5T?ÕUÕUÕU&Õ)U2c                 ó`   — g d¢}|D ]%  } dj                   |Ž }t        dt        |Ž |¬«       Œ' y )N)©r‡  rf   r   ©r‡  rf   r"   ©rJ  é3   é   ©r   r  é€   ©r   r  éÀ   ©ÚblackmanrI  éÈ   ©©rK  r!   r  r%  ©r   r  éÿ   ú
{}, {}, {}Tr^  )Úformatr   r   )r,   ÚsettingsÚsettingÚmsgs       r1   Útest_check_COLAzTestSTFT.test_check_COLA‹  s8   € ò	ˆó  ˆGØ%�,×%Ñ% wÐ/ˆCÜ˜œz¨7Ð3¸SÖAñ  r3   c                 ó&  — g d¢}|D ]%  } dj                   |Ž }t        dt        |Ž |¬«       Œ' t        j                  d«      }d|d d d…<   |t        |«      t        |«      dz  fdg}|D ]%  } dj                   |Ž }t        d	t        |Ž |¬«       Œ' y )
N)r\  r]  )r‡  rf   r-  r^  )rJ  r_  rf   ra  rc  )r   r  é%   re  )rf  rI  é{   rh  )ri  r  é&   rj  )r   r  é'   rl  Tr^  r   r   re   )r   r%  r   F)rm  r   r   r'   r*   r‰  )r,   Úsettings_passro  rp  Úw_failÚsettings_fails         r1   Útest_check_NOLAzTestSTFT.test_check_NOLA›  s¤   € òˆó  %ˆGØ%�,×%Ñ% wÐ/ˆCÜ˜œz¨7Ð3¸SÖAð %ô —‘˜“ˆØˆ‰s�ˆs‰àœS ›[¬#¨f«+¸Ñ*:Ð;Ø#ð
ˆó %ˆGØ%�,×%Ñ% wÐ/ˆCÜ˜¤
¨GÐ 4¸cÖBñ %r3   c           
      óT  — t         j                  j                  d«      }|j                  d«      }d}d}d}d}t	        |||||ddd ¬«      \  }}}	t        |||||dd	d¬
«      \  }
}t        ||
«       t        t        j                  t        j                  |	«      dz  d¬«      |«       y )Nr\  r]  rA   r   r   r%   F)Úpaddedr@   rU  rF   )r@   rH   rè   re   r#   rt   )	r'   r`  râ  rb  rT  r   r   r»  rv  )r,   rë  r-   rN  r­   r¾   r'  r.   rE  ÚZrÎ  rÏ  s               r1   rÐ  z"TestSTFT.test_average_all_segmentsº  s¦   € Ü�i‰i×#Ñ# DÓ)ˆØ�I‰I�d‹OˆàˆØˆØˆØˆô
 �q˜"˜f g¨xÀØ',°tô=‰ˆˆ1ˆaä�q˜"˜f g¨xÈØ)°5ô:‰ˆˆBô 	˜˜2ÔÜœŸ™¤§¡ q£	¨1¡°2Ô6¸Õ;r3   c           	      óâ  — t         j                  j                  d«      }|j                  d«      }d}d}d}d}t	        |||||«      \  }}}	t	        |j                  d«      ||||d¬	«      \  }
}}t        |	||||«      \  }}t        |j                  ||||dd
¬«      \  }}t        ||
«       t        ||«       t        ||«       t        |	|d d …ddd d …f   «       t        ||d d …ddf   «       y )Nr\  r]  rA   r   r   r%   )r#   r    r    r   rt   r#   rO  )	r'   r`  râ  rb  rT  rk   rW  ÚTr   )r,   rë  r-   rN  r­   r¾   r'  ró   Út1ÚZ1rõ   Út2ÚZ2Út3Úx1Út4Úx2s                    r1   Útest_permute_axeszTestSTFT.test_permute_axesÎ  sø   € Ü�i‰i×#Ñ# DÓ)ˆØ�I‰I�d‹OˆàˆØˆØˆØˆä˜!˜R ¨°(Ó;‰
ˆˆB�Ü˜!Ÿ)™) JÓ/°°V¸WÀhØ ô"‰
ˆˆB�ô �r˜2˜v w°Ó9‰ˆˆBÜ�r—t‘t˜R ¨°(ÀaØ!#ô%‰ˆˆBô 	˜˜BÔÜ˜˜BÔÜ˜˜BÔÜ˜˜Bšq ! Qª˜z™NÔ+Ü˜˜Bšq ! Q˜w™KÕ(r3   rH   rF   Úpsdc           
      ó`  — t         j                  j                  d«      }g d¢}|D ]†  \  }}}}t        j                  |«      }d|j	                  |j
                  «      z  }	t        |	|||d d|¬«      \  }
}
}t        |||||¬«      \  }}|› d|› �}t        |||¬«       t        |	||¬«       Œˆ y )	Nr\  ©©r‡  rÚ  rf   r   ©r‡  rÚ  rf   r"   )rJ  ée   r_  r`  ©r   r]  r  rb  )ri  é€  r  r%  )r   r]  r  rk  rf   F)r¾   r'  r­   rè   r|  rH   )r¾   r'  r­   rH   r>  r^  ©	r'   r`  râ  r<   rb  ÚsizerT  rW  r   ©r,   rH   rë  rn  r­   ÚNr¾   r'  rí  r-   rE  ÚzzÚtrÚxrrp  s                  r1   Útest_roundtrip_realzTestSTFT.test_roundtrip_realå  s»   € ä�i‰i×#Ñ# DÓ)ˆòˆó -5Ñ(ˆF�A�w Ü—	‘	˜!“ˆAØ�3—9‘9˜QŸV™VÓ$Ñ$ˆAä˜A w¸Ø#)°4ÀØ$+ô-‰HˆAˆq�"ô ˜2 w¸Ø"(°'ô;‰FˆB�ð �H˜B˜x˜jÐ)ˆCÜ˜A˜r¨3Õ/Ü˜A˜r¨3Ö/ñ -5r3   c           
      óÌ  — t         j                  j                  d«      }t        j                  d«      }d|d d d…<   |dt	        |«      t	        |«      dz  fdg}|D ]ú  \  }}}}|› d|› d|› d|› �}t        |||«      rJ |«       ‚t        j                  |«      }	d|j                  |	j                  «      z  }
t        |
|||d d	d
¬«      \  }}}t        j                  t        d¬«      5  t        ||||d	¬«      \  }}d d d «       t        j                  |	d t	        |	«       «      sJ |«       ‚t        j                  |
d t	        |
«       «      sŒõJ |«       ‚ y # 1 sw Y   Œ^xY w)Nr\  r   r   re   r  )r   r  r%  r   r>  rf   Tr(   ©r¾   r'  r­   rè   r|  rU  ÚNOLArª   ©r¾   r'  r­   rU  )r'   r`  râ  r*   r‰  r   r<   rb  r’  rT  r³   rX  r  rW  Úallclose)r,   rë  rx  rn  r­   r”  r¾   r'  rp  rí  r-   rE  r•  r–  r—  s                  r1   Útest_roundtrip_not_nolaz TestSTFT.test_roundtrip_not_nola  s^  € Ü�i‰i×#Ñ# DÓ)ˆä—‘˜“ˆØˆ‰s�ˆs‰à˜S¤# f£+¬s°6«{¸aÑ/?Ð@Ø(ð
ˆó
 -5Ñ(ˆF�A�w Ø�H˜B˜q˜c  G 9¨B¨x¨jÐ9ˆCÜ! &¨'°8Ô<ÐA¸cÓAÐ<ä—	‘	˜!“ˆAØ�S—Y‘Y˜qŸv™vÓ&Ñ&ˆAä˜A w¸Ø#)°4ÀØ%,ô.‰HˆAˆq�"ô —‘œk°Ö8Ü˜r¨7¸XØ&,°tô=‘��B÷ 9ô —;‘;˜q " W¤c¨!£f +Ô.Ð3°Ó3Ð.Ü—{‘{ 1 b¨¬#¨a«& kÕ2Ð7°CÓ7Ð2ñ -5÷ 9Ð8ús   Ã)EÅE#	c           
      óô  — t         j                  j                  d«      }g d¢}|D ]Ð  \  }}}}|› d|› d|› �}t        |||«      sJ |«       ‚t	        |||«      rJ |«       ‚t        j
                  |«      }d|j                  |j                  «      z  }	t        |	|||d dd¬«      \  }
}
}t        ||||d¬«      \  }}|› d|› �}t        ||d t        |«       |¬	«       t        |	|d t        |	«       |¬	«       ŒÒ y )
Nr\  ))r‡  rÚ  rf   r�   )rJ  rŽ  r_  rs  )r   r]  r  é   )ri  r�  r  é   )r   r]  r  r�   r>  rf   Tr(   rš  rœ  r^  )r'   r`  râ  r   r   r<   rb  r’  rT  rW  r   r‰  )r,   rë  rn  r­   r”  r¾   r'  rp  rí  r-   rE  r•  r–  r—  s                 r1   Útest_roundtrip_nola_not_colaz%TestSTFT.test_roundtrip_nola_not_cola  s  € Ü�i‰i×#Ñ# DÓ)ˆòˆó -5Ñ(ˆF�A�w Ø�H˜B˜w˜i r¨(¨Ð4ˆCÜ˜f g¨xÔ8Ð=¸#Ó=Ð8Ü! &¨'°8Ô<ÐA¸cÓAÐ<ä—	‘	˜!“ˆAØ�S—Y‘Y˜qŸv™vÓ&Ñ&ˆAä˜A w¸Ø#)°4ÀØ%,ô.‰HˆAˆq�"ô ˜2 w¸Ø"(°4ô9‰FˆB�ð �H˜B˜x˜jÐ)ˆCÜ˜A˜r '¤3 q£6˜{°CÕ8Ü˜A˜r '¤3 q£6˜{°CÖ8ñ# -5r3   c           	      óà  — t         j                  j                  d«      }dg}|D ]Ç  \  }}}}t        j                  |«      }d|j	                  |j
                  «      z  }|j                  t         j                  «      }t        ||||d d¬«      \  }	}	}
t        |
|||¬«      \  }}|› d|› �}t        |||¬«       t        |||d	d
¬«       t        |j                  |j                  k(  «       ŒÉ y )Nr\  r�  rf   F©r¾   r'  r­   rè   r|  rN  r>  r^  r6  gñhãˆµøä>)r_  rÄ   r;   )r'   r`  râ  r<   rb  r’  ÚastypeÚfloat32rT  rW  r   r   rN   ©r,   rë  rn  r­   r”  r¾   r'  rí  r-   rE  r•  r–  r—  rp  s                 r1   Útest_roundtrip_float32zTestSTFT.test_roundtrip_float32:  sá   € Ü�i‰i×#Ñ# DÓ)ˆà,Ð-ˆã,4Ñ(ˆF�A�w Ü—	‘	˜!“ˆAØ�3—9‘9˜QŸV™VÓ$Ñ$ˆAØ—‘œŸ™Ó$ˆAä˜A w¸Ø#)°4ÀôG‰HˆAˆq�"ô ˜2 w¸Ø"(ô*‰FˆB�ð �H˜B˜x˜jÐ)ˆCÜ˜A˜q¨#Õ.Ü˜A˜r¨3°TÀÕEÜ�A—G‘G˜rŸx™xÑ'Õ(ñ -5r3   c                 óÒ  — t         j                  j                  d«      }g d¢}|D ]ª  \  }}}}t        j                  |«      }d|j	                  |j
                  «      z  d|j	                  |j
                  «      z  z   }	t        |	|||d dd|¬«      \  }
}
}t        ||||d|¬«      \  }}|› d|› d|› �}t        |||¬	«       t        |	||¬	«       Œ¬ t        j                  «       5  t        j                  d
dt        «       t        	d dd|¬«      \  }
}
}d d d «       t        d|¬«      \  }}|› d|› d|› �}t        ||¬	«       t        	||¬	«       y # 1 sw Y   ŒDxY w)Nr\  r‹  rf   y              $@F)r¾   r'  r­   rè   r|  r@   rH   )r¾   r'  r­   Úinput_onesidedrH   r>  r^  r  z9Input data is complex, switching to return_onesided=FalseT)r'   r`  râ  r<   rb  r’  rT  rW  r   r  r  r  r  r“  s                  r1   Útest_roundtrip_complexzTestSTFT.test_roundtrip_complexO  s„  € ä�i‰i×#Ñ# DÓ)ˆòˆó -5Ñ(ˆF�A�w Ü—	‘	˜!“ˆAØ�3—9‘9˜QŸV™VÓ$Ñ$ s¨3¯9©9°Q·V±VÓ+<Ñ'<Ñ<ˆAä˜A w¸Ø#)°4ÀØ,1¸7ôD‰HˆAˆq�"ô ˜2 w¸Ø"(¸Ø#*ô,‰FˆB�ð �H˜B˜w˜i r¨(¨Ð4ˆCÜ˜A˜r¨3Õ/Ü˜A˜r¨3Ö/ð -5ô" ×$Ñ$Õ&Ü×#Ñ#ØØKÜôô
 ˜A w¸Ø#)°4ÀØ,0¸'ôC‰HˆAˆq�"÷ 'ô �r 7°XØ$°UÀGôM‰ˆˆBð �˜˜7˜) 2 h ZÐ0ˆÜ˜˜2 sÕ+Ü˜˜2 sÖ+÷ 'Ð&ús   Ã'3EÅE&c                 óÂ  — t         j                  j                  d«      }ddg}|D ]·  \  }}}}t        j                  |«      }d|j	                  |j
                  «      z  }t        ||||d dd ¬«      \  }	}	}
t        |
||d¬«      \  }	}d	D ]P  }t        ||||d d|¬«      \  }	}	}t        |||d¬«      \  }	}|› d
|› d
|› �}t        |||¬«       t        |||¬«       ŒR Œ¹ y )Nr\  rŒ  r�  rf   Trš  F)r'  r­   rU  )ÚevenÚoddÚconstantr(   r>  r^  r‘  )r,   rë  rn  r­   r”  r¾   r'  rí  r-   rE  r•  r—  rU  Úzz_extÚxr_extrp  s                   r1   Ú!test_roundtrip_boundary_extensionz*TestSTFT.test_roundtrip_boundary_extension~  s  € Ü�i‰i×#Ñ# DÓ)ˆð +Ø*ðˆó
 -5Ñ(ˆF�A�w Ü—	‘	˜!“ˆAØ�3—9‘9˜QŸV™VÓ$Ñ$ˆAä˜A w¸Ø"(°$¸tØ$(ô*‰HˆAˆq�"ô ˜" x¸ÈÔO‰EˆAˆrã@�Ü# A¨wÀØ'-°tÀDØ)1ô 3‘��1�fô " &°8ÀFØ)-ô/‘	��6ð  ˜  8 *¨B¨x¨jÐ9�Ü  2¨sÕ3Ü  6°3Ö7ñ Añ -5r3   c           	      óŽ  — t         j                  j                  d«      }ddg}|D ]�  \  }}}}t        j                  |«      }d|j	                  |j
                  «      z  }t        ||||d d¬«      \  }	}	}
t        |
||¬«      \  }}|› d|› �}t        ||d |j
                   |¬	«       t        ||d |j
                   |¬	«       ŒŸ y )
Nr\  )r‡  rŽ  rf   r   )r   rÛ  r  rb  rf   Tr¤  )r'  r­   r>  r^  r‘  r§  s                 r1   Útest_roundtrip_padded_signalz%TestSTFT.test_roundtrip_padded_signalŸ  sÌ   € Ü�i‰i×#Ñ# DÓ)ˆð +Ø,ðˆó
 -5Ñ(ˆF�A�w Ü—	‘	˜!“ˆAØ�3—9‘9˜QŸV™VÓ$Ñ$ˆAä˜A w¸Ø#)°4ÀôF‰HˆAˆq�"ô ˜2¨¸Ô@‰FˆB�à�H˜B˜x˜jÐ)ˆCä˜A˜r ' 1§6¡6˜{°CÕ8Ü˜A˜r ' 1§6¡6˜{°CÖ8ñ -5r3   c                 ó,  — t         j                  j                  d«      }g d¢}|D ]ì  \  }}}}}t        j                  |«      }d|j	                  |j
                  «      z  }	|	t        j                  dt         j                  z  dz  «      z  }
t        |	||||d d¬«      \  }}}t        |
||||d dd¬	«      \  }}}t        |||||¬
«      \  }}t        |||||d¬«      \  }}|› d|› �}t        |||¬«       t        |	||¬«       t        |
||¬«       Œî y )Nr\  ))r   r]  r  rb  rS  )r   r]  r  rb  iõ  )r‡  rÚ  rf   r   é!   )ri  r�  r  r%  r]  rf   y              ð?r[   T)r¾   r'  rƒ   r­   rè   r|  F)r¾   r'  rƒ   r­   rè   r|  r@   )r¾   r'  rƒ   r­   )r¾   r'  rƒ   r­   rª  r>  r^  )r'   r`  râ  r<   rb  r’  ÚexprQ  rT  rW  r   )r,   rë  rn  r­   r”  r¾   r'  rƒ   rí  r-   ÚxcrE  rY  Úzcr–  r—  Úxcrrp  s                     r1   Útest_roundtrip_padded_FFTz"TestSTFT.test_roundtrip_padded_FFTµ  s,  € Ü�i‰i×#Ñ# DÓ)ˆòˆó 3;Ñ.ˆF�A�w ¨$Ü—	‘	˜!“ˆAØ�3—9‘9˜QŸV™VÓ$Ñ$ˆAØ”2—6‘6˜"œRŸU™U™( 1™*Ó%Ñ%ˆBô ˜1 g¸ÀtØ#)°4ÀôF‰GˆAˆq�!ô ˜B¨¸(ÈØ#)°4ÀØ,1ô3‰HˆAˆq�"ô ˜1 g¸ÀtØ"(ô*‰FˆB�ô ˜B¨¸(ÈØ#)¸%ôA‰GˆB�ð �H˜B˜x˜jÐ)ˆCÜ˜A˜r¨3Õ/Ü˜A˜r¨3Õ/Ü˜B ¨SÖ1ñ/ 3;r3   c                 óf  — t         j                  j                  d«      }|j                  d«      }t	        |«      \  }}}t        d«      D ]’  }dgdz  }d||<   |j                  |«      }t	        ||¬«      \  }}}t	        |||j                  z
  ¬«      \  }}}	t        ||j                  «       |¬«       t        ||	j                  «       ||j                  z
  ¬«       Œ” t        |j                  dd¬	«      \  }}
t        |j                  d
d¬	«      \  }}t        ||
d¬«       t        ||d¬«       y )Nr\  r]  r�   r    r#   rt   r^  éþÿÿÿrO  r   zistft transpose minuszistft transpose plus)r'   r`  râ  rb  rT  rc  rk   rd  r   re  rW  r  r   )r,   rë  rf  rE  Úz_flatrh  ri  r-   Úz_plusÚz_minusÚx_transpose_mÚx_transpose_ps               r1   rl  zTestSTFT.test_axis_rollingØ  s  € Ü�i‰i×#Ñ# DÓ)ˆà—‘˜4“ˆÜ˜F“|‰ˆˆ1ˆfä�q–ˆAØ�t˜A‘vˆHØˆH�Q‰KØ—‘˜xÓ(ˆAä ¨œ?‰LˆAˆq�&Ü  ¨¨1¯6©6©Ô2‰MˆAˆq�'ä˜ §¡Ó!1¸1Õ=Ü˜ §¡Ó!2¸A¸a¿f¹f¹HÖEð ô ! §¡°RÀ2ÔFÑˆˆ=Ü  §¡°QÀ!ÔDÑˆˆ=ä˜ Ð7NÕOÜ˜ Ð7MÖNr3   c                 ól  — t        j                  dt        ¬«      }d|d<   t         j                  j	                  |«      }t        |dz  «      t        |«      z  }t        |dd¬«      d   }t        |d	d¬«      d
   }t        ||«       t        t        |ddd…f   «      d«       t        t        |ddd…f   «      d
«       t        t        |ddd…f   «      d«       d|dd…dd…f<   t        |dd…dd…f   dt        j                  |j                  «      j                  ¬«       t        |ddd¬«      d   }t        j
                  |j                  dz  |j                  dz  z   d¬«      |j                   d   z  }t        ||«       t        |dd	d¬«      d
   }t        ||«       t        |d	dd¬«      d   }t        j"                  |ddd…dd…f   «      }	t        |dd…dd…f   |«       t        |dd…dd…f   |	«       t        j
                  |j                  dz  |j                  dz  z   d¬«      t        j
                  |	j                  dz  |	j                  dz  z   d¬«      z   }
|
|j                   d   |	j                   d   z   z  }t        ||«       t        |d	d	d¬«      d
   }t        ||«       y)z&Verify behavior of scaling parameter. i  rM   r]  r  re   r­  rF   )rU  rH   Tr    é?   Nr#   r!   r%  éA   r   éB   r:   Fr‰  )r@   rU  rH   rt   )rª  rU  rH   r½  é�   )r'   r(   Úcomplexr   r   ru  r‰  rT  rW  r   rv  ÚfinforN   Ú
resolutionÚrealÚimagrl   Úconj)r,   ÚXr-   Úpower_xÚZsr…  ÚZpÚpsd_ZpÚZp0ÚZp1Ús2Úpsd_Zp01s               r1   Útest_roundtrip_scalingzTestSTFT.test_roundtrip_scalingò  sy  € ô �H‰H�S¤Ô(ˆØˆˆ#‰Ü�F‰F�L‰L˜‹OˆÜ�a˜‘d“)œc !›fÑ$ˆô �!˜f¨jÔ9¸!Ñ<ˆô �2 ¨jÔ9¸!Ñ<ˆÜ˜˜AÔô 	œ˜B˜r 3 B 3˜w™KÓ(¨#Ô.Üœ˜B˜r 3 B 3˜w™KÓ(¨!Ô,Üœ˜B˜r 3 B 3˜w™KÓ(¨#Ô.àˆˆ2ˆbˆ5�#�2�#ˆ:‰ä˜š1˜c˜r˜c˜6™
 A¬B¯H©H°R·X±XÓ,>×,IÑ,IÕJô �! U°VÀUÔKÈAÑNˆô —‘˜Ÿ™ ™
 R§W¡W¨a¡ZÑ/°aÔ8¸2¿8¹8ÀA¹;ÑFˆä˜ Ô(ô �2 e°dÀEÔJÈ1ÑMˆÜ˜˜AÔô �1 d°VÀUÔKÈAÑNˆô �g‰g�c˜"˜Q˜r˜'¢1˜*‘oÓ&ˆÜ˜˜4˜C˜4¢˜7™ SÔ)Ü˜˜3™4¢˜7™ SÔ)ô �f‰f�S—X‘X ‘] S§X¡X°¡]Ñ2¸Ô;Ü�f‰f�S—X‘X ‘] S§X¡X°¡]Ñ2¸Ô;ñ<ˆà˜Ÿ™ 1™¨¯	©	°!©Ñ4Ñ5ˆÜ˜ 'Ô*ô �3 t°dÀEÔJÈ1ÑMˆÜ˜˜AÕr3   N)r°   r±   r²   rZ  rq  rz  rÐ  rˆ  r³   r´   Úparametrizer˜  rž  r¢  r¨  r«  r²  r´  r»  rl  r×  r¸   r3   r1   rJ  rJ  8  sŸ   „ òP&òdBò Cò><ò()ð. ‡[�[×Ñ˜Y¨°UÐ(;Ó<ñ0ó =ð0ò68ò69ò<)ð* ‡[�[×Ñ˜Y¨°UÐ(;Ó<ñ,,ó =ð,,ò\8òB9ò,!2òFOó4?r3   rJ  c                   óØ   — e Zd ZU dZdZeed<   dZeed<   dZ	eed<   dZ
eed<   ej                  ed	<   ej                  ed
<   eed<   eed<   d„ Zedefd„«       Zedefd„«       Zd„ Zd„ Zy)Ú"TestSampledSpectralRepresentationsa  Check energy/power relations from `Spectral Analysis` section in the user guide.

    A 32 sample cosine signal is used to compare the numerical to the expected results
    stated in :ref:`tutorial_SpectralAnalysis` in
    file ``doc/source/tutorial/signal.rst``
    ry   r‘  rB   r  r�   Úa_refÚl_aÚx_refÚX_refÚE_refÚP_refc                 ó˜  — t        | j                  | j                  «      }t        j                  |«      }d| _        | j                  dz  | j                  z  || j
                  <   t        |«      | _        t        | j                  «      | _
        | j                  | j                  dz  z  dz  | _        | j                  dz  dz  | _        y)z5Create Cosine signal with amplitude a from spectrum. r�   re   N)r   r‘  r  r'   rê   rÜ  rÛ  r   rÝ  r   rÞ  Útaurß  rà  )r,   r.   rÞ  s      r1   Úsetup_methodz/TestSampledSpectralRepresentations.setup_methodE  s–   € ä�T—V‘V˜TŸV™VÓ$ˆÜ—‘˜aÓ ˆØˆŒØŸ*™* Q™,¨¯©Ñ/ˆˆd�h‰h‰Ü˜5“\ˆŒ
Ü˜Ÿ™“_ˆŒ
ð —X‘X §
¡
¨A¡Ñ-°Ñ1ˆŒ
Ø—Z‘Z ‘] QÑ&ˆ�
r3   Úreturnc                 ó4   — | j                   | j                  z  S )zDuration of signal. ©r‘  r  r_   s    r1   râ  z&TestSampledSpectralRepresentations.tauR  s   € ð �v‰v˜Ÿ™‰Ðr3   c                 ó:   — d| j                   | j                  z  z  S )z
Bin width r    ræ  r_   s    r1   Údelta_fz*TestSampledSpectralRepresentations.delta_fW  s   € ð �D—F‘F˜TŸV™V‘OÑ$Ð$r3   c                 ó  — t        d| j                  z  t        j                  | j                  «      d¬«       t        | j
                  t        | j                  dz  «      z  | j                  «       t        | j                  j                  dz  | j                  j                  dz  z   «      }t        | j
                  | j                  z  |z  | j                  «       t        d| j                  dz  z  |z  | j                  «       y)z Test energy and power formulas. re   rL  rO  r    N)r   rÛ  r'   ÚptprÝ  r  ru  rß  rÞ  rË  rÌ  r‘  rà  )r,   Úsum_X_ref_squareds     r1   Útest_reference_signalz8TestSampledSpectralRepresentations.test_reference_signal\  sµ   € ô 	˜˜$Ÿ*™*™¤b§f¡f¨T¯Z©ZÓ&8¸sÕCä˜Ÿ™¤ T§Z¡Z°1¡_Ó!5Ñ5°t·z±zÔBô   §
¡
§¡°Ñ 2°T·Z±Z·_±_ÀaÑ5GÑ GÓHÐÜ˜Ÿ™˜tŸv™v™Ð(9Ñ9¸4¿:¹:ÔFÜ˜˜$Ÿ&™& !™)™Ð&7Ñ7¸¿¹ÕDr3   c                 ó¤  — t        | j                  d¬«      }t        t        |«      «      t	        j
                  t        |j                  dz  |j                  dz  z   «      «      }}t        | j                  |z  «      }t        | j                  || j                     z  |z  | j                  | j                  z  dz  «       t        || j                     |z  | j                  dz  «       | j                  | j                  z  t        ||z  «      dz  z  }| j                  t        ||z  «      dz  z  }t        | j                  t        |«      z  | j                   «       t        | j                  t        |«      z  | j"                  «       t%        d| j                  z  |dd¬«      }t'        | j                  fddi|¤Ž\  }}	t'        | j                  fddi|¤Ž\  }}
t	        j(                  |	j*                  «      j,                  }t        |	t        ||z  «      dz  |t/        |	«      z  ¬	«       t        |
||t/        |
«      z  ¬	«       t%        dt1        | j                  «      d
dœ|¤Ž}t        t3        | j                  fddi|¤Žd   |	|t/        |	«      z  ¬	«       t        t3        | j                  fddi|¤Žd   |
|t/        |
«      z  ¬	«       y)z‡Verify spectral representations of windowed DFT.

        Furthermore, the scalings of `periodogram` and `welch` are verified.
        F)Úsymre   r    )rN  r­   rè   r@   rH   rF   rI   r:   r   r&  Nr¸   )r   r‘  rv  ru  r'   rR  rË  rÌ  r   rÝ  r   râ  rÜ  rÛ  r  rè  rß  rà  rt  r   rÉ  rN   rÊ  rÿ  r‰  r   )r,   rç  Úc_ampÚc_rmsÚXwÚX_ESDÚX_PSDr‹  rE  ÚP_magÚP_psdÚ	float_ress               r1   Útest_windowed_DFTz4TestSampledSpectralRepresentations.test_windowed_DFTh  sF  € ô
 �—‘˜UÔ#ˆÜœ3˜q›6“{¤B§G¡G¬C°·±¸±	¸A¿F¹FÀA¹IÑ0EÓ,FÓ$GˆuˆÜ�—‘˜A‘Óˆô 	˜Ÿ™ 2 d§h¡h¡<Ñ/°%Ñ7¸¿¹ÀdÇhÁhÑ9NÐQRÑ9RÔSä˜˜4Ÿ8™8™ uÑ,¨d¯j©j¸©lÔ;ð —‘˜4Ÿ6™6Ñ!¤C¨¨U©
£O°QÑ$6Ñ6ˆØ—‘œ˜R %™Z›¨!Ñ+Ñ+ˆÜ˜Ÿ™¤s¨5£zÑ1°4·:±:Ô>Ü˜Ÿ™¤s¨5£zÑ1°4·:±:Ô>ô �Q�t—v‘v‘X a°ÈÔNˆÜ˜tŸz™zÑD°:ÐDÀÑD‰ˆˆ5Ü˜tŸz™zÑC°9ÐCÀÑC‰ˆˆ5ô —H‘H˜UŸ[™[Ó)×4Ñ4ˆ	Ü˜œs 2 e¡8›}¨aÑ/°iÄÀEÃ
Ñ6JÕKä˜˜u¨9´S¸³ZÑ+?Õ@ô Ð<œ#˜dŸj™j›/°AÑ<¸Ñ<ˆÜœ˜dŸj™jÑC°*ÐCÀÑCÀAÑFÈØ&¤s¨5£zÑ1õ	3äœ˜dŸj™jÑB°)ÐB¸rÑBÀ1ÑEÀuØ&¤s¨5£zÑ1ö	3r3   N)r°   r±   r²   Ú__doc__r‘  rO   Ú__annotations__r  rþ  rÛ  rÜ  r'   Úndarrayrã  Úpropertyrâ  rè  rì  r÷  r¸   r3   r1   rÚ  rÚ  4  s’   … ñð €A€sƒKØ€A€uƒOØ€Eˆ5ÓØ€CˆƒLà�:‰:ÓØ�:‰:ÓØƒLØƒLò'ð ð�Uò ó ðð ð%˜ò %ó ð%ò
Eó$3r3   rÚ  )2r¶   r  Únumpyr'   Únumpy.testingr   r   r   r   r   r³   r   r]   Úscipyr	   Úscipy._lib._array_apir
   Ú	scipy.fftr   r   r   r   Úscipy.integrater   Úscipy.signalr   r   r   r   r   r   r   r   Úscipy.signal.windowsr   Úscipy.signal._spectral_pyr   Ú,scipy.signal.tests._scipy_spectral_test_shimr   rT  r   rW  r   rº   r{  rÀ  rÊ  rØ  rJ  rÚ  r¸   r3   r1   Ú<module>r     s¯   ðÛ 
Û ã ÷;õ ;ó Ý *å Ý 1ß 3Ó 3Ý %÷?÷ ?ó ?å %Ý 6õ NÝ O÷Z'ñ Z'÷zF0ñ F0÷P
n*ñ n*÷bñ ÷06 ñ 6 ÷pv.ñ v.÷ryñ y÷xX3ò X3r3   