
&]\c        h   @` s  d  d l  m Z m Z m Z d  d l Z d  d l Z d  d l m Z d  d l 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 m Z m Z m Z d	 f  f d
 f  f d f  f d f  f d f  f d f  f d f  f d f  f d f  f d f  f d f  f d f  f d d f f d d f f d d f f d d d f f d d f f d d f f d f  f d  f  f d! f  f d" d f f g Z d# e f d$     YZ d% e f d&     YZ d' e f d(     YZ  d) e f d*     YZ! d+ e f d,     YZ" d- e f d.     YZ# e d/ d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d: d; d< d= d> d? d@ dA dB dC dD dE dF dG dH dI dH dG dF dE dD dC dB dA d@ d? d> d= d< d; d: d9 d8 d7 d6 d5 d4 d3 d2 d1 d0 d/ g5  Z$ e dJ dK dL dM dN dO dP dQ dR dS dT dU dV dW dX dY dZ d[ d\ d] d^ d_ d` da db dc dI dI dc db da d` d_ d^ d] d\ d[ dZ dY dX dW dV dU dT dS dR dQ dP dO dN dM dL dK dJ g6  Z% dd e f de     YZ& i e df dg dI dg g  dh e' di e( f 6e dj dk dk dj g  dh e' di e) f 6e dl dm dI dm g  dh e' dI e( f 6e dn do do dn g  dh e' dI e) f 6e df dg dI dg g  dh d di e( f 6e' dh d di e) f 6e dl dm dI dm g  dh d dI e( f 6e' dh d dI e) f 6e df dg dI dg df g  dp e' di e) f 6e dl dm dI dm dl g  dp e' dI e) f 6e' dp d di e) f 6e' dp d dI e) f 6Z* dq   Z+ dr e f ds     YZ, dt e f du     YZ- dv e f dw     YZ. dx e f dy     YZ/ dz e f d{     YZ0 d| e f d}     YZ1 d~ e f d     YZ2 d e f d     YZ3 d e f d     YZ4 d e f d     YZ5 i e d dI dI d g  dh d e) f 6e d d d d g  dh d e) f 6e d d d d g  dh dI e) f 6e d dI dI dI g  dh d e( f 6e d d dI d g  dh d e( f 6e d d dI d g  dh dI e( f 6e dI dI dI dI dI g  dp d e) f 6e d d dI d d g  dp d e) f 6e d d dI d d g  dp dI e) f 6d d d d d d g d d  f 6d d d d d d d g d d  f 6d  d d d d d  g d d f 6d  d d d d d d  g d d f 6d  d dI dI d d  g d f 6d  d dI dI dI d d  g d f 6d  d dI dI d d  g d d f 6d  d d dI d d d  g d d f 6d  d d d d d  g d d f 6d  d d dI d d d  g d d f 6Z6 d e f d     YZ7 i d d d d g d d d d g g d d g f dh d d f 6d d d g d d d g d d d g g d d d g f d d d f 6d d d d d g d d d d d g d d d d d g d d d d d g d d d d d g g d d d d d g f dp d dp f 6d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d gd d d d d d d d d d d d ddddddddd	d
dddddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYgd dZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~ddddddddddddddddddddddddddd~d}d|d{dzdydxdwdvdudtdsdrdqdpdodndmdldkdjdidhdgdfdedddcdbdad`d_d^d]d\d[dZgd ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddgd g ddddg f dd dh f 6Z8 de f d    YZ9 de f d    YZ: d  Z; d  Z< d  Z= d  Z> d S(  i    (   t   divisiont   print_functiont   absolute_importN(   t   array(   t   assert_array_almost_equalt   assert_array_equalt   assert_allcloset   assert_equalt   assert_t   assert_array_less(   t   raises(   t   suppress_warnings(   t   fftpack(   t   windowst
   get_windowt   resamplet   hannt   boxcart   triangt   parzent   bohmant   blackmant   nuttallt   blackmanharrist   flattopt   bartlettt   hanningt   barthannt   hammingt   kaiseri   t   dpssi   t   gaussiang      ?t   general_gaussiang      ?t   chebwint   slepiant   cosineR   t   exponentialt   tukeyt   TestBartHannc           B` s   e  Z d    Z RS(   c      	   C` s   t  t j d d t d d d d d d g  t  t j d  d d d	 d
 d	 d d g  t  t j d t  d d d	 d
 d	 d g  d  S(   Ni   t   symi    gA,q?g	5xB$?gA,q?i   gHzG?g\(\?g      ?(   R   R   R   t   Truet   False(   t   self(    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt
   test_basic-   s    	(   t   __name__t
   __module__R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR&   +   s   t   TestBartlettc           B` s   e  Z d    Z RS(   c      	   C` s   t  t j d  d d d d d d g  t  t j d  d d
 d d	 d d d g  t  t j d t  d d d d	 d d g  d  S(   Ni   i    g?g?i   i   i   i   g      ?gUUUUUU?gUUUUUU?gUUUUUU?gUUUUUU?gUUUUUU?gUUUUUU?gUUUUUU?gUUUUUU?(   R   R   R   R)   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+   9   s    (+(   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR.   7   s   t   TestBlackmanc           B` s   e  Z d    Z RS(   c      	   C` s   t  t j d d t d d d d d d g d d t  t j d	 d t d d
 d d d d d
 g d d t  t j d  d d d d d d g d d t  t j d	 t  d d d d d d d g d d d  S(   Ni   R'   i    gp=
ף?g)\(?g      ?t   atolg+=i   gFi'?gb@c?gZgs?g:0yE>g쳩ֲ?g,,?(   R   R   R   R)   R(   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+   B   s    		(   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR/   @   s   t   TestBlackmanHarrisc           B` s   e  Z d    Z RS(   c      	   C` s   t  t j d t  d d d d d d g  t  t j d d t d d d	 d
 d d d g  t  t j d  d d d d d d g  t  t j d d t d d d d d d d g  d  S(   Ni   giUMu?g0_^}?g猨?g      ?i   R'   gjP?g'm$M?gu?gu?g*m$M?gjP?g^?gU׈g?gU׈g?(   R   R   R   R)   R(   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+   S   s    		(   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR1   Q   s   t
   TestBohmanc           B` s   e  Z d    Z RS(   c      	   C` s   t  t j d  d d d d d d g  t  t j d d t d d d	 d
 d d d g  t  t j d t  d d d	 d
 d d g  d  S(   Ni   i    g$I ?g6 D?g I ?i   R'   gPG?g4}|?g      ?g6}|?(   R   R   R   R(   R)   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+   d   s    	(   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR2   b   s   t
   TestBoxcarc           B` s   e  Z d    Z RS(   c      	   C` s   t  t j d  d d d d d d g  t  t j d  d d d d d d d g  t  t j d t  d d d d d d g  d  S(   Ni   i   i   (   R   R   R   R)   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+   r   s    (+(   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR3   p   s   gCV?gCԳ ?gQ&E?g:*?g;Bu?g9#?g=[?gZ
G?gٵݒ?gLg?g(+ ?gT=?g zR&5?gscH?gu?g]/M`?gxC8?g??g9?gmo?g[?gT:?gsK!q?g/M.?g×?g)s?g      ?g?2?gw.v?gf*#?g`?gd${!?g?gM?gut\?gLjh?gxak?gWY?gqj?g<)[?g@ի?gMEs?g/?g{l?g[^6?g:Ug$?g: U\?gI.!v?gClp?ggF?g$p?gVLy?g.?t   TestChebWinc           B` s5   e  Z d    Z d   Z d   Z d   Z d   Z RS(   c         C` s  t     } | j t d  t t j d d  d d d d d d g  t t j d d  d d	 d
 d d
 d	 d g  t t j d d  d d d d d d g  t t j d d  d d d d d d d g  t t j d d t  d d d d d d g  Wd  QXd  S(   Ns   This window is not suitablei   id   g}	ɺ?gL >?g      ?i   gS?gD1mPC?g%5R?i
   gTEm?g	-o?gF3?gNO?g	r]?(   R   t   filtert   UserWarningR   R   R!   R)   (   R*   t   sup(    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+      s(    				c         C` sN   t    , } | j t d  t j d d d } Wd  QXt | t d d d  S(   Ns   This window is not suitablei5   t   atit   decimali   (   R   R5   R6   R   R!   R   t   cheb_odd_true(   R*   R7   t   cheb_odd(    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_cheb_odd_high_attenuation   s    c         C` sN   t    , } | j t d  t j d d d } Wd  QXt | t d d d  S(   Ns   This window is not suitablei6   R8   i(   R9   i   (   R   R5   R6   R   R!   R   t   cheb_even_true(   R*   R7   t	   cheb_even(    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_cheb_even_high_attenuation   s    c         C` so   t  d d d d d d d g  } t   , } | j t d  t j d d d } Wd  QXt | | d	 d
 d  S(   Ng      ?gm?g&k?gc[?s   This window is not suitablei   R8   i
   R9   i   (   R   R   R5   R6   R   R!   R   (   R*   t   cheb_odd_low_at_trueR7   R;   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_cheb_odd_low_attenuation   s    	c      	   C` sr   t  d d d d d d d d g  } t   , } | j t d  t j d d d } Wd  QXt | | d	 d
 d  S(   Ng      ?gR?gN(D!T?g#R?s   This window is not suitablei   R8   iR9   i   (   R   R   R5   R6   R   R!   R   (   R*   t   cheb_even_low_at_trueR7   R>   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_cheb_even_low_attenuation   s    	(   R,   R-   R+   R<   R?   RA   RC   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR4      s
   					g|dy?gvS?{?i   g?g1B?g%?ǵR?g8,6V?g\Kr?g
oh?i   c          C` se   x^ t  j   D]P \ }  } | d  k r; t t t j |   q t j |    } t | | d d q Wd  S(   Nt   rtolg+=(   t   exponential_datat   itemst   Nonet   assert_raisest
   ValueErrorR   R$   R   (   t   kt   vt   win(    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_exponential   s
    t   TestFlatTopc           B` s   e  Z d    Z RS(   c      	   C` s   t  t j d d t d d d d d d g  t  t j d d t d d d	 d
 d
 d	 d g  t  t j d  d d d d d d g  t  t j d t  d d d d d d d g  d  S(   Ni   R'   gbF;gs*?gdR	p^?g      ?i   g`p|ܢg?gJ?g<#Ug_&k?(   R   R   R   R)   R(   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+      s    
	
(   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyRN      s   t   TestGaussianc           B` s   e  Z d    Z RS(   c      	   C` s   t  t j d d  d d d d d d g  t  t j d d  d d d	 d d	 d d g  t  t j d d
  d d d d d d d g  t  t j d d
 t  d d d d d d g  d  S(   Ni   g      ?g|~?gw$?g"$j=?i   g333333?g
"?g;eܜ?i   g
oh?g?gyLE?(   R   R   R   R)   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+     s     			(   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyRO     s   t   TestGeneralCosinec           B` s   e  Z d    Z RS(   c         C` si   t  t j d d d d g  d d d d d g  t  t j d d d d g d t d d d d g  d  S(	   Ni   g      ?g333333?g?g?i   i   R'   (   R   R   t   general_cosineR)   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+   #  s    !(   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyRP   !  s   t   TestGeneralHammingc           B` s   e  Z d    Z RS(   c         C` s   t  t j d d  d d d d d g  t  t j d d d t d d d	 d	 d g  t  t j d
 d d t d d d	 d	 d d g  d  S(   Ni   gffffff?g?g      ?g      ?R'   g      ?gy&"?gx?i   (   R   R   t   general_hammingR)   R(   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+   +  s    		(   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyRR   )  s   t   TestHammingc           B` s   e  Z d    Z RS(   c      	   C` s   t  t j d t  d d d d d d g  t  t j d d t d d d	 d
 d
 d	 d g  t  t j d  d d d d d d g  t  t j d d t d d d d d d d g  d  S(   Ni   g{Gz?gףp=
?gp=
ף?g      ?i   R'   gCW4?g	/5?g4Cъ?g6 iv?gP0?(   R   R   R   R)   R(   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+   8  s    		(   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyRT   6  s   t   TestHannc           B` s   e  Z d    Z RS(   c      	   C` s   t  t j d d t d d d d d d g  t  t j d d t d d d	 d
 d
 d	 d g  t  t j d t  d d d d d d g  t  t j d  d d d d d d d g  d  S(   Ni   R'   i    g      ?g      ?g      ?i   g\$:?gH`r?g8T^j?gXhd?gTͻ?(   R   R   R   R)   R(   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+   H  s    		(   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyRU   F  s   t
   TestKaiserc           B` s   e  Z d    Z RS(   c      	   C` s   t  t j d d  d d d d d d g  t  t j d d  d d d d	 d d d g  t  t j d d
  d d d d d d g  t  t j d d
  d d d d	 d d d g  t  t j d d
 t  d d d d	 d d g  d  S(   Ni   g      ?gl?g<3N?gi>%?i   g	$?g6?g      ?g@g§Aը?gO F?g$?g*'?g=a?(   R   R   R   R)   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+   X  s(    			(   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyRV   V  s   t   TestNuttallc           B` s   e  Z d    Z RS(   c      	   C` s   t  t j d d t d d d d d d g  t  t j d d t d d d	 d
 d
 d d g  t  t j d  d d d d d d g  t  t j d t  d d d d d d d g  d  S(   Ni   R'   gA"7?gv;O<g?g$2bUs?g      ?i   gx&yxXW?g??g?g??g&yxXW?gEJ?g=`T?g>`T?gEJ?(   R   R   R   R)   R(   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+   q  s    
		(   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyRW   o  s   t
   TestParzenc           B` s   e  Z d    Z RS(   c      	   C` s   t  t j d  d d d d d d g  t  t j d d t d d d	 d
 d	 d d g  t  t j d t  d d d	 d
 d	 d g  d  S(   Ni   ge/?g      ?g88?i   R'   g%OZQ%w?g2|&?g݁?g      ?(   R   R   R   R(   R)   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+     s    			(   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyRX     s   t
   TestTriangc           B` s   e  Z d    Z RS(   c      
   C` s   t  t j d t  d	 d
 d d d d g  t  t j d  d d d d d d d g  t  t j d d t d d d d d d g  d  S(   Ni   i   i   i   i   i   i   R'   gUUUUUU?g      ?g?g?g      ?gUUUUUU?g      ?g      ?g      ?g      ?g      ?g      ?g      ?g      ?g      ?g      ?g      ?(   R   R   R   R(   R)   (   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+     s    (   R,   R-   R+   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyRY     s   g        g?g?g      ?grnOC?gYx?g?i   i   g      ?gTͻ?gRͻ?gxų	&?gvų	&?g#}`yq?g)!?g#}`yq?gXhd?t	   TestTukeyc           B` s   e  Z d    Z d   Z RS(   c         C` se   x^ t  j   D]P \ } } | d  k r; t t t j |  q t j |   } t | | d d q Wd  S(   NRD   g+=(   t
   tukey_dataRF   RG   RH   RI   R   R%   R   (   R*   RJ   RK   RL   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+     s
    c         C` s`   t  j d d  } t  j d  } t | |  t  j d d  } t  j d  } t | |  d  S(   Nid   i    i   (   R   R%   R   R   R   (   R*   t   tuk0t   box0t   tuk1t   han1(    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_extremes  s    (   R,   R-   R+   R`   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyRZ     s   		gIP?g;]L?g/vI<t?gE@?gE@̿g/vI<tgV?g$aȲ`?g?gыBA?gnjk?g>ef?g>efg	#n?gLogm/ ?g96+?g雦br?i   gffffff?g w?V?g>J#?g;Wi?g֙}I#?gr?V?g:7A!(?gcHX?gcHXgS[@!(ܿgqh4?gT1a~²?gEܿgS[@!(?gu+t?gX>߿g36?g;St?gML?gh5"z?g\v4?gPa?gd?gsk8Si?gp&p?g5Bu?gOL{?g08À?gw-<?gkF?g^R?gkPz?g1?gY^Q?gX9?gdkѐ^ś?g3aJ?g)IQ?g-?gѫ"?g.?g~9P?g~n[?g8Wϭ?g	%fҳ?g!KI?gPJd?g/ĳ?g$~s	?gpkuP?g%ꙷ?g
?gq*?g%wo?gZo?g?gӃ?gB@%?gg3?g/ߗ#@?g0?g@?g=?g.F!?git3?g:.?gX.?gGkNVs?g"Hk?g 'F?g`?giGU?g#!5#?gUw|?gTP?gj?gwĢ?gDъO?g_{?g< ?gȁk?gꬃt?g(P;?gHñ?gBKXP?g.mˏ޴?g nik?g"=?gOu?g{?ggU?g/u?gN׏$s?g ]?gГE?goY*?gܛ?gbu?g`?gɪJS?ga`gT*r?g.{?gYn?g.|TK?g紸?gzþ?gfU?g,?gԙ=?gg'?gws䕽?g?g[\	?g#k	?g%*?gLw<w?g,h-A?g[::<?g199l?g.4䓦%?gG/?gƢhlO?g[$v?g[$vgƢhlOgG/g.4䓦%g199lg[::<񍭿g,h-AgLw<wg%*浿g#k	g[\	g㻿gws䕽gg'gԙ=g,gfUgzþg紸¿g.|TK¿gYn¿g.{¿ga`gT*r¿gɪJS¿g`¿gbugܛgoY*gГEg ]gN׏$sg/uggUg{캿gOug"=g nikg.mˏ޴gBKXPgHñg(P;gꬃtgȁkg< g_{gDъOgwĢgjgTPgUw|g|W◰?g	͓?g?g
8ρ?g\i?gٮ32A?g!;f?g+?g3sXL2?g?J?g5QG?gAo?gW?g }2?g␉k?gIǇ?gF6?gf?gch'?g%"a?gh/K?g:?g>}?gDC1?XB?gQST`?gs\NK?g
3?g<s?go?g@1O?g5M?g#$7?g,9ṗ?gC)?gW]{?g#Ysg臈Egn꛿gx;ig6
gv^
gmg-b3g[Ehpg[6gag0g_:WRg~戺g0ъҺgI!w.?gMu?g%Pld?g3z?g>?gd?g!DKy?g+o ?gYh{b?g{^y?gSh1?gy%@?g|hzj??gP\D?gz	?gVx<҅?g?gq&?gb˱?g8|p?g_cH?g6K	?gwp΍?g"Q	q?g@m8Migǐ3g7/`_qgS!g8QJg68gu\qg/Z~ܳgpQZgCg3`g7<w䷿ggp鷿g<Wulg~`gTg#qvg,]Bigw|gvľg3gagLHgU,gvA]PvgvA]Pv?gU,?gLH?ga?g3?gvľ?gw|?g,]Bi?g#qv?gT?g~`?g<Wul?gp?g?g7<w?g3`?gC?gpQZ?g/Z~ܳ?gu\q?g68?g8QJ?gS!?g7/`_q?gǐ3?g@m8Mi?g"Q	qgwp΍g6K	g_cHg8|pgb˱gq&ggVx<҅gz	gP\Dg|hzj?gy%@¿gSh1ÿg{^yÿgYh{bĿg+o Ŀg!DKyſgdſg>ſg3zĿg%PldĿgMuÿgI!w.ÿg?g"?gy?'?g `?id   t   TestDPSSc           B` s,   e  Z d    Z d   Z d   Z d   Z RS(   c      
   C` s|   xu t  j   D]g \ } } t j d t |  \ } } t | | d d d d | t | | d d d d d d | q Wd  S(	   Nt   return_ratiosi    R0   gHz>t   err_msgi   RD   gh㈵>(   t	   dpss_dataRF   R   R   R(   R   (   R*   RJ   RK   RL   t   ratios(    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR+     s    c         C` s4  x-t  d d  D]} t j | | d  } | d } t t j | d  j   | d d | f t j | | d d d	 } | d k r t t j | d  j   | d d | f t | | d
 d n  t j | | d d d } | d k r d n d } t t j | d  j   | d d | f q Wd  S(   Ni   i   g @i   g      ?Rc   s   %st   normt	   subsampleRD   gQ?i    (   t   rangeR   R   R   t   npt   iscloset   sumR   (   R*   t   MRL   t   expectedt   win_subt   win_2(    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt
   test_unity  s    
c         C` s   t  j d d d d t d } t | d  t  j d d d d t d } t | d  t  j d d d d t d } t | d  d  S(	   Ni   i   i   Rb   i   g      ?i   i   (   R   R   R(   R   (   R*   t   lam(    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyR`     s    c         C` s   t  t t j d d d  t  t t j d d d  t  t t j d d d  t  t t j d d d  t  t t j d d d  t  t t j d d d  t  t t j d d d  d  S(	   Ni   g      ?iig?i   i    i   (   RH   RI   R   R   t	   TypeError(   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_degenerate  s    (   R,   R-   R+   Rp   R`   Rs   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyRa     s   				t   TestGetWindowc           B` s>   e  Z d    Z d   Z d   Z d   Z d   Z d   Z RS(   c         C` sT   t  j d d  } t | t j |   t  j d d  } t | t j |   d  S(   NR   i   i   (   R   (   R   R   R   Ri   t	   ones_like(   R*   t   w(    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_boxcar  s    c      	   C` sQ   t    / } | j t d  t j d d d t } Wd  QXt | t d d d  S(	   Ns   This window is not suitableR!   ii5   t   fftbinsR9   i   (   R!   i(   R   R5   R6   R   R   R)   R   R:   (   R*   R7   Rv   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_cheb_odd  s    c      	   C` sQ   t    / } | j t d  t j d d d t } Wd  QXt | t d d d  S(	   Ns   This window is not suitableR!   i(   i6   Rx   R9   i   (   R!   i(   (   R   R5   R6   R   R   R)   R   R=   (   R*   R7   Rv   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_cheb_even  s    c         C` s8   t  j d d  } t  j d d t  } t | |  d  S(   Ng@i@   (   R   R   R   R)   R   (   R*   t   win1t   win2(    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_kaiser_float#  s    c         C` s6   t  t t j t d  d  t  t t j d d  d  S(   NR   i   t   brokeni   (   RH   RI   R   R   t   set(   R*   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_invalid_inputs(  s    c         C` sY   d } t  j d  } t j d | d  } t t t | t |  | f i | d 6 d  S(   Ni   R   g       @i   t   window(   R   g       @(   Ri   t   arangeR   R   RH   RI   R   t   len(   R*   t   osfactort   sigRL   (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_array_as_window/  s
    	(   R,   R-   Rw   Ry   Rz   R}   R   R   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyRt     s   					c          C` s  xt  D]\ }  } t t |   } t   e} | j t d  |  d k rZ | j t  n  | d d t | } | d d t | } t	 | d  |  | d d t | } | d d t | } t	 | d  |  t
 t | d	 d t |  d	  t
 t | d	 d t |  d	  t
 t | d d t |  d  t
 t | d d t |  d  t t | d
 |  t t | d |  t | d d t | g   t | d d t | g   t | d d t | d g  t | d d t | d g  t | d d t | j d k  t | d d t | j d k  t | d d t | j d k  t | d d t | j d k  t | d	 d t | j d k  t | d	 d t | j d k  t | d d t | d  t | d d t | d  t | d d t | d  t | d d t | d  t t j | d d t |  j d d d t t j | d d t |  j d d d Wd  QXq Wd  S(   Ns   This window is not suitableR"   R   i   R'   i   ii	   i   g      @ii    i   t   floati
   g)\(?R0   g+=i   (   R"   R   (   t   window_funcst   getattrR   R   R5   R6   t   DeprecationWarningR(   R)   R   R   R   RH   RI   R   R   t   dtypeR	   R   R   t   fftt   imag(   t   window_namet   paramsR   R7   t   w1t   w2(    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_windowfunc_basics9  sH    """"""""""!!c          C` sj   xc d d d d d d d d d	 d
 d d d d d d d d d d d d g D] }  t  t t |  d  qI Wd  S(   NR   t   ksrR   t   gausst   gsss   general gaussianR    s   general gausst   general_gausst   ggsR"   t   optimalt   slept   dssR   R!   t   chebR$   t   poissonR%   t   tuki   (   RH   RI   R   (   t   winstr(    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_needs_paramsn  s    	c           C` s?   t  j d  k	 r; t d t  j k  t d t j j k  n  d  S(   Ns   signal.hann is deprecatedt
   deprecated(   t   dep_hannt   __doc__RG   R   R   R   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_deprecationx  s    c          C` s,   t  j t  j t   }  t |  t k  d  S(   N(   t   picklet   loadst   dumpsR   R   (   t	   dep_hann2(    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   test_deprecated_pickleable~  s    (?   t
   __future__R    R   R   R   t   numpyRi   R   t   numpy.testingR   R   R   R   R   R	   t   pytestR
   RH   t   scipy._lib._numpy_compatR   t   scipyR   t   scipy.signalR   R   R   R   R   R   t   objectR&   R.   R/   R1   R2   R3   R:   R=   R4   RG   R)   R(   RE   RM   RN   RO   RP   RR   RT   RU   RV   RW   RX   RY   R[   RZ   Rd   Ra   Rt   R   R   R   R   (    (    (    s>   lib/python2.7/site-packages/scipy/signal/tests/test_windows.pyt   <module>   s   ."																																7					"	""	"%	%""%:C    2,	5	
	