+
    nDjvB                        ^ RI t ^ RIt^ RIt^ RIHtHtHtHt ^ RI	H
t
HtHt ^ RIHtHt ]P                   P"                  t]P                   P$                  tR t]P                   P)                  RRR7       ! R	 R
4      4       tR# )    N)is_cupyxp_assert_closexp_default_dtype	concat_1d)symiirorder1_icsymiirorder2_ic_fwdsymiirorder2_ic_bwd)symiirorder1symiirorder2c                 B   W,          p\         P                  ! V 4      p \         P                  ! W R ,          4      pVRV,           ,          RV,
          ,          ^^V,          \         P                  ! ^V,          4      ,          ,
          W",          ,           ,          pRV,
          RV,           ,          \         P                  ! V4      ,          pWe,          \         P                  ! W0,          4      V\         P
                  ! W0,          4      ,          ,           ,          # )       @      ?)npabspowercostansin)kcsrsqomegacssqrsupkc0gammas   &&&&    Y/data/cameron/venvs/s3viz/lib/python3.14/site-packages/scipy/signal/tests/test_splines.py_compute_symiirorder2_bwd_hsr      s    7D
q	AHHSc'"E
#)
c	
*q3wE	***SY68B3Y39%u5E:	*URVVEI5F-FFGG    Fprivatereasonc            	       (  a  ] tR t^t o ]! RRR7      ]P                  P                  R. R!O4      ]P                  P                  R. R"O4      R 4       4       4       t]! RRR7      R	 4       t	]! RR
.RR7      ]
! R
RR7      ]! RRR7      ]P                  P                  R. R!O4      ]P                  P                  R. R"O4      R 4       4       4       4       4       t]
! R
RR7      ]! RR
.RR7      ]P                  P                  RRR.4      R 4       4       4       t]! RRR7      ]P                  P                  RRR.4      ]P                  P                  R. R"O4      R 4       4       4       t]! RRR7      ]P                  P                  RRR.4      ]P                  P                  R. R"O4      R 4       4       4       t]! RRR7      ]! RRR7      ]P                  P                  RRR.4      ]P                  P                  R. R"O4      R 4       4       4       4       t]! RR
.RR7      ]P                  P                  RRR.4      R 4       4       t]! RR
.RR7      ]
! R
RR7      R 4       4       t]! RR
.RR7      ]
! R
RR7      R 4       4       tRtV tR # )#
TestSymIIRTz(_ic functions are private and numpy-only)np_onlyr"   dtypefloat32float64	precisionc                B   \        W14      pTpVR 8:  g   VR8  d"   WP                  VP                  09   d   RpMRpRp\        \        P
                  ! \        P                  ! V4      \        P                  ! V4      ,          4      4      pVP                  ^WV,          ,
          ^V,
          ,          ..VR7      p^WW,          ,           pVP                  V^,           VR7      p\        \        WV4      VRRR7       VP                  WQR7      p	\        P                  ! ^R	V	,          V,          ,
          ^R	V	,          ,
          ,          ..VR7      p^W,          ,           p^VP                  V^,           VR7      ) ,          p\        \        WV4      VRRR7       R
# )        r   ư>dy=333333?r&   >gH׊>atolrtol      ?N)getattrr'   	complex64intmathceillogasarrayonesr   r   r   arange)
selfr&   r)   xpc_precisionbn_expexpectedxb_ds
   &&&&      r   test_symiir1_icTestSymIIR.test_symiir1_ic   s\    "y3R\\22"# DIIdhh{3dhhqkABC::QZAE :;<E:Jq|# GGEAIUG+i8(!	. jjj(::C#I%''AsO<=>eMs~% "))EAIU)333i8(!	.r   c                .   R pVP                  ^dVP                  R7      p^^V,
          ,          p\        P                  ! \        \
        W2V4       \        P                  ! \        \
        VRR4       \        P                  ! \        \
        VRR4       R# )r.   r/   r   r   N)r<   r(   pytestraises
ValueErrorr   )r>   r?   rA   rD   r)   s   &&   r   test_symiir1_ic_fails TestSymIIR.test_symiir1_ic_failsP   sj     GGCrzzG* QK	j/1C 	j/1c2>j/1c2>r   cupyzinternals are numpy-only)cpu_only
exceptionsr"   zsum did not converger!   z	jax.numpyzitem assignment in testsc                Z   \        W14      pTpVR 8:  g   VR8  d"   WP                  VP                  09   d   RpMRpRpRp^pVP                  WqR7      p\	        \
        P                  ! \
        P                  ! V4      \
        P                  ! V4      ,          4      4      p	VP                  ^Wi,          ,
          ^V,
          ,          VR7      p
^Wj,          ,           p
VP                  VP                  V4      V4      pWV,          ,          pVP                  WqR7      pV) ^V,
          ,          WkRR ,          ,          VR&   VP                  WqR7      p^^V,
          ,          VR&   W,           V,           pV) VR,
          ,          VR,          ,          pVP                  WqR7      pVV^ &   \        ^V4       F?  pW_V^,
          V,
          ,          ,          VVV^,
          ,          ,          ,           VV&   KA  	  VP                  V4      p\        WWb4      p\        VVR	R
R7       R# )r+   r   r,   r-   g333333?r.   r/   N:   NN>v!>r1   rI   )r5   r'   r6   r<   r7   r8   r9   r:   r;   astyper=   zerosrangeflipr
   r   )r>   r&   r)   r?   r@   r   z1nsignalrB   initialposcomp1comp2comp3expected_fwdsym_condexp_outiouts   &&&&                r   test_symiir1TestSymIIR.test_symiir1_   s    "y3R\\22"# ( DIIdhh{3dhhrlBCD**a"+o!b&9*Gbl" ii		!e,c'! (C1r6NRSb\1b	 (RLb	}u, 3"s(#l2&66 ((1(*
q!A1q51955WQU^8KKGAJ  '''"6r5W4d;r   c                   \         P                  P                  R 4      pVP                  ^R7      P	                  V4      p\        W!4      pVP                  V4      p\        VRR4      pVP                  . R	OVP                  R7      pVP                  RVP                  R/V,          p\        WVVR7       VP                  R
VP                  WBP                  4      R7      pWH,          p\        VRR4      pWP                  8X  d   VP                  VP                  8X  g   Q hVP                  '       g   Q h\        WXV,          VR7       R# )  sizer4   皙?r/   gV瞯<gHz>r2   N)gzj?g|ꚁ?g7F?g$d"?gv)u?gx?gF4˯0?g/yR?gdOm6wP?g^ۂ?gnI:5?g(?giԴIM?g|
?gIq?g?      ?      ?)r   randomRandomStateuniformrV   r5   r;   r
   r&   r(   r'   r   result_typer6   
complex128)	r>   r&   r?   rngsresexp_resr2   I1s	   &&&      r   test_symiir1_valuesTestSymIIR.test_symiir1_values   s    ii##D)KKRK ''."JJqM1c3' **   #yy	  *
 

E2::t4U;40ZZ"..LL9  
 F1c3',1ZZ,?syyBLL(RRR]]]RR'\5r   z1_initial_fwd functions are private and numpy-onlyc                   \        W14      pTpVR 8:  g   VR8  d"   WP                  VP                  09   d   RpMRpVP                  RVR7      pVP                  \        P
                  R,          VR7      p^^V,          VP                  V4      ,          ,
          V^,          ,           pVP                  VP                  WCP                  V4      ,          4      \        P                  ! V4      ,          4      pVP                  \        P
                  V,          4      ^,
          p	\        W4      p
V^V,          VP                  V4      ,          ,           V^,          ,
          WZ^,           ,          VP                  Wj^,           ,          4      ,          VP                  V4      ,          ,
          WZ^,           ,          VP                  Wj^,           ,          4      ,          VP                  V4      ,          ,           pVP                  VP                  WCP                  V4      ,          4      \        P                  ! V4      ,          4      pVP                  VP
                  V,          4      ^,
          p	\        W4      p
Ww^,          V,          VP                  V4      ,          ,           V^,          VP                  ^V,          4      ,          V^,          VP                  ^V,          4      ,          ,
          WZ^,           ,          VP                  Wj^,           ,          4      ,          ,
          WZ^,           ,          VP                  Wj^,           ,          4      ,          ,           VP                  V4      ,          ,           p\        W;V4      R,          pVP                  W4      p^dp\        P                  ! WR7      p\        WWb4      p\!        VVRR	R
7       R# )r+   r   r,   r-   r4   r/         @NrT   rU   r1   )NNNN)r5   r'   r6   r;   r   pir   r9   r:   r   r8   minr   rV   r<   r   r   )r>   r&   r)   r?   r@   rr   r   ublbrB   fwd_initial_1fwd_initial_2rC   r[   r\   rf   s   &&&&             r   test_symiir2_initial_fwd#TestSymIIR.test_symiir2_initial_fwd   s    "y3R\\22"# JJs%J(

2553;e
4Q&&A- WWRVVK&&-78488K;PPQWWTWWu_%)B EBFF5M!"qD 	NRVVEQY$788266%=HI 	NRVVEQY$788266%=H	I 	 WWRVVK&&-78488K;PPQWWRUUU]#a'B a!bffUm++TBFF1u9%%TBFF1u9%%&^bffUai%899: ^bffUai%899: >@VVE]KK 	 R>wG99X-(!&U>XDt<r   z1_initial_bwd functions are private and numpy-onlyc                   \        W14      pTpVR 8:  g   VR8  d"   WP                  VP                  09   d   RpMRpVP                  RVR7      pVP                  VP                  R,          VR7      p^^V,          VP                  V4      ,          ,
          WU,          ,           p^V,          VP                  V4      ,          pV) V,          p	^dp
VP                  WR7      p\        WWb4      pVP                  V
^,           VR7      pV^ ,          VR&   \        ^V
^,           4       FQ  pW{V^,
          ,          ,          WV^,
          ,          ,          ,           WV^,
          ,          ,          ,           W&   KS  	  VP                  ^VR7      pVP                  V
4      p\        VWuV,          V4      \        V^,           WuV,          V4      ,           p\        P                  ! VVR^R1,          ,          4      pVP                  V^,          V8  4      ^ ,          pVV^ ,          ,          V^ &   \        V^,
          WuV,          V4      \        V^,           WuV,          V4      ,           pVP                  VVR^R1,          ,          4      pVP                  V^,          V8  4      ^ ,          pVV^ ,          ,          V^&   \!        WWb4      ^ ,          p\#        VVR	R
R7       R# )r+   r   r,   r-   r4   r/   r}   N   NNrT   rU   r1   rI   )r5   r'   r6   r;   r   r   r<   r   rW   rX   r=   r   r   cumsumnonzerocumulative_sumr	   r   )r>   r&   r)   r?   r@   r   r   r   a2a3r[   r\   icrf   re   ic2idxdiff	ic2_0_allr^   	ic2_1_allout_ics   &&&&                  r   test_symiir2_initial_bwd#TestSymIIR.test_symiir2_initial_bwd  so    "y3R\\22"#JJs%J(

2553;e
4Q&&.URVVE]"R!V( !E=hhq1uEh*Q%B q!a%AQ-'"1q5z/9BQUOKCF ! hhqh&iil,S"!eUC,S1Wba%GHIIdS!BZ/0	jj[01!43q6"A,S1Wba%G,S1Wba%GH %%dS!BZ&78	jj[01!43q6"A$SU>qA$T:r   )rP   r"   c                   \        W14      pR p\        P                  R,          p^^V,          \        P                  ! V4      ,          ,
          WD,          ,           p^V,          \        P                  ! V4      ,          pV) V,          p^dp	VP	                  WR7      p
\
        P                  ! V
4      p\        WWR4      pVP                  V4      pVP                  V	^,           VR7      pVR,          VR&   \        ^V	^,           4       FQ  pWjV^,
          ,          ,          W}V^,
          ,          ,          ,           WV^,
          ,          ,          ,           W&   KS  	  \        \
        P                  ! V4      WEV4      ^ ,          pVP                  V4      pVP                  WR7      pVP                  V4      VR	R% \        V	^,
          R
R
4       FM  pWmV,          ,          VVV^,           ,          ,          ,           VVV^,           ,          ,          ,           VV&   KO  	  \        WWR4      p\        VVRRR7       R# )r4   r}   r/   r   NrT   rU   r1   )r   r~   rI   )r5   r8   r   r   r<   r   r;   r   rW   rX   r	   emptyrY   r   r   )r>   r&   r)   r?   r   r   r   r   r   r[   r\   	signal_npr   out1re   r   exprf   s   &&&&              r   test_symiir2TestSymIIR.test_symiir2B  s    "#Q%((150UTXXe_$R!V( JJv&	 u@ZZ^xxAUx+d8R q!a%A!a%=(2QU+;;bA;>NNDG ! ""**T"2AiHKjjo hhqh&773<BCq1ub"%Aq'\BQUO3b3q1u:oECF & 6e7St$7r   zC internalsdtypc                f   \         P                  P                  R 4      pVP                  ^R7      P	                  V4      pVP                  V4      p\        V4      '       d   VP                  M
\        W!4      p\        VRRRR7      pVP                  . R
OVR7      p\        WgRR7       VP                  RVP                  WBP                  4      R7      pWH,          p\        P                  ! \        \         34      ;_uu_ 4        \        VRR4      pR	R	R	4       R	#   + '       g   i     R	# ; i)rj   rk   rm   g|=)r)   r/   r0   rn   r4   N)g윏 ?g_VQQ/?g|n4T?gAٌ?gJ8]<?gZ(Z?gTV?gRs?g?gd'Q?g*&?g$SЊ?g%֘?g4O?gM4?g!?ro   )r   rp   rq   rr   rV   r;   r   r(   r5   r   r   rs   r6   rJ   rK   	TypeErrorrL   )	r>   r   r?   ru   rv   r&   rw   rx   ry   s	   &&&      r   test_symiir2_valuesTestSymIIR.test_symiir2_valuesm  s     ii##D)KKRK ''-JJqM &bkk

wr/@1c3%8 ** !&	  
 	40ZZbnnQ&EZFF]]Iz233q#s+C 4333s   DD0	z#cupy does not accept integer arraysc                D   VP                  VP                  VP                  ^d4      ^,          VP                  4      VP	                  R4      VP	                  ^4      4      p\        VP                  V\        V4      4      RR4      p\        VRR4      p\        WC4       R# )d   r4   NrI   )whererV   r=   boolr;   r
   r   r   r>   r?   rv   rC   rf   s   &&   r   test_symiir1_integer_input%TestSymIIR.test_symiir1_integer_input  s~     HHIIbiinq("''2JJrNJJqM

  		!-=b-A BCM1c3'&r   c                   VP                  VP                  VP                  ^d4      ^,          VP                  4      VP	                  R4      VP	                  ^4      4      p\        VP                  V\        V4      4      RVP                  R,          4      p\        VRVP                  R,          4      p\        WC4       R# )r   r4   r}   NrI   )	r   rV   r=   r   r;   r   r   r   r   r   s   &&   r   test_symiir2_integer_input%TestSymIIR.test_symiir2_integer_input  s     HHIIbiinq("''2JJrNJJqM

  		!-=b-A BCQTU1c2553;/&r    N)r'   r(   r6   rt   )g      gffffff?r4   g      ?gQ~?)__name__
__module____qualname____firstlineno__skip_xp_backendsrJ   markparametrizerF   rM   xfail_xp_backendsrg   rz   r   r   r   r   r   r   __static_attributes____classdictcell__)__classdict__s   @r   r$   r$      s     d+UV[[BD[[[*HI-. JD W-.^ d+UV? W? 6(3M v&<=k*DE[[BD[[[*HIB< JD F >B<H v&<=6(3M [[Wy)&<=6 > >
60 dPR[[)Y')[[[*HI>= J)R
>=@ dPR[[)Y')[[[*HI.; J)R
.;` t,FGk*DE[[)Y')[[[*HI$8 J) F H
$8L tO[[Vi%;< , = P ,D tOv&KL' M P' tOv&KL' M P'r   r$   )r8   numpyr   rJ   scipy._lib._array_apir   r   r   r   scipy.signal._spliner   r   r	   scipy.signalr
   r   r   r   r   r   uses_xp_capabilitiesr$   r   r   r   <module>r      sw       W W? ? 3;;// KK11 H !!%	!:L' L' ;L'r   