+
    /i                         ^ RI t ^ RIt^ RIHtHtHtHtHtH	t	 ^ RI
t
^ RIHt ]
P                  P                  t ! R R4      tR# )    N)xp_assert_equalassert_array_almost_equalassert_almost_equalis_cupymake_xp_test_casemake_xp_pytest_param)ndimagec            
       N  a  ] tR t^t o ]P
                  P                  R. RO4      ]P
                  P                  RRR.4      ]! ]P                  4      R 4       4       4       t
]P
                  P                  RRR.4      ]P
                  P                  RRR.4      ]! ]P                  4      R 4       4       4       t]P
                  P                  R. RO4      ]P
                  P                  RRR.4      ]! ]P                  4      R 4       4       4       t]P
                  P                  RRR.4      ]P
                  P                  RRR.4      ]! ]P                  4      R 4       4       4       t]P
                  P                  RRR.4      ]P
                  P                  RRR.4      ]! ]P                  4      R 4       4       4       t]P
                  P                  RRR.4      ]P
                  P                  RRR.4      ]! ]P                  4      R 4       4       4       t]P
                  P                  R. RO4      ]P
                  P                  RRR.4      ]! ]P$                  4      R	 4       4       4       t]P
                  P                  RRR.4      ]P
                  P                  RRR.4      ]! ]P$                  4      R
 4       4       4       t]! ]P$                  4      R 4       t]! ]P$                  4      R 4       t]P
                  P                  R. RO4      ]P
                  P                  R. R O4      ]P
                  P                  R]! ]P$                  4      ]! ]P                  4      ]! ]P                  4      .4      R 4       4       4       tRtV tR# )!TestNdimageFouriershapez
dtype, decc                   \        VR 4      p\        P                  ! WR7      pRVR	&   VP                  V4      pVP	                  Wa^ ,          ^ R7      pVP                  Wa^,          ^R7      p\        P                  ! VRR.V^ ,          ^ 4      pVP                  Wa^,          ^R7      pVP                  Wa^ ,          ^ R7      p\        \        P                  ! V4      VP                  ^4      VRR7       R# 
fftdtype      ?naxis      @      @Fdecimalcheck_0dNr   r   )getattrnpzerosasarrayrfftr   r	   fourier_gaussianifftirfftr   sumselfr   r   decxpr   as   &&&&&  ^/var/www/html/photoedit/myenv/lib/python3.14/site-packages/scipy/ndimage/tests/test_fourier.pytest_fourier_gaussian_real01/TestNdimageFourier.test_fourier_gaussian_real01   s     b% HHU($JJqMHHQ(H+GGAqG*$$Qc
E!Ha@HHQ(H+IIa8!I,GKKNBJJqM3%*	,    c                    \        VR 4      p\        P                  ! WR7      pRVR	&   VP                  V4      pVP	                  Wa^ ,          ^ R7      pVP	                  Wa^,          ^R7      p\
        P                  ! VRR.R
^ 4      pVP                  Wa^,          ^R7      pVP                  Wa^ ,          ^ R7      p\        \
        P                  ! VP                  V4      4      VP                  R4      VRR7       R# r   r   r   r   r   r   Fr   Nr   )r   r   r   r   r   r	   r!   r"   r   r$   realr%   s   &&&&&  r*   test_fourier_gaussian_complex012TestNdimageFourier.test_fourier_gaussian_complex01(   s     b% HHU($JJqMGGAqG*GGAqG*$$Qc
B:HHQ(H+HHQ(H+GKK
3RZZ_c%*	,r-   c                   \        VR 4      p\        P                  ! WR7      pRVR	&   VP                  V4      pVP	                  Wa^ ,          ^ R7      pVP                  Wa^,          ^R7      p\        P                  ! VRR.V^ ,          ^ 4      pVP                  Wa^,          ^R7      pVP                  Wa^ ,          ^ R7      p\        \        P                  ! V4      VP                  R4      VRR7       R# r   )r   r   r   r   r    r   r	   fourier_uniformr"   r#   r   r$   r%   s   &&&&&  r*   test_fourier_uniform_real01.TestNdimageFourier.test_fourier_uniform_real01:   s     b% HHU($JJqMHHQ(H+GGAqG*##ASz58Q?HHQ(H+IIa8!I,GKKNBJJsOS%*	,r-   c                    \        VR 4      p\        P                  ! WR7      pRVR	&   VP                  V4      pVP	                  Wa^ ,          ^ R7      pVP	                  Wa^,          ^R7      p\
        P                  ! VRR.R
^ 4      pVP                  Wa^,          ^R7      pVP                  Wa^ ,          ^ R7      p\        \
        P                  ! VP                  V4      4      VP                  R4      VRR7       R# r/   )r   r   r   r   r   r	   r5   r"   r   r$   r1   r%   s   &&&&&  r*   test_fourier_uniform_complex011TestNdimageFourier.test_fourier_uniform_complex01L   s     b% HHU($JJqMGGAqG*GGAqG*##ASz2q9HHQ(H+HHQ(H+GKK
3RZZ_c%*	,r-   c                   \        VR 4      p\        P                  ! V^ ,          V^,          ,          VR7      P                  V4      pVP	                  V4      pVP                  Wa^ ,          ^ R7      pVP                  Wq^,          ^R7      p\        P                  ! V^^.V^ ,          ^ 4      pVP                  Wq^,          ^R7      pVP                  Wq^ ,          ^ R7      p\        VR,          VRR1RR13,          VR7       R# )r   r   r   Nr      NNr>   r0   )r   r   arangereshaper   r    r   r	   fourier_shiftr"   r#   r   r&   r   r   r'   r(   r   expectedr)   s   &&&&&   r*   test_fourier_shift_real01,TestNdimageFourier.test_fourier_shift_real01^   s     b% 99U1Xa0>FFuM::h'HHXqH2GGAqG*!!!aVU1Xq9HHQ(H+IIa8!I,!!F)Xcrc3B3h-?Mr-   c                x   \        VR 4      p\        P                  ! V^ ,          V^,          ,          VR7      P                  V4      pVP	                  V4      pVP                  Wa^ ,          ^ R7      pVP                  Wq^,          ^R7      p\        P                  ! V^^.R^ 4      pVP                  Wq^,          ^R7      pVP                  Wq^ ,          ^ R7      p\        VP                  V4      R,          VRR1RR13,          VR7       \        VP                  V4      VP                  V4      VR7       R# )r   r   r   Nr<   r0   r=   )r   r   r@   rA   r   r   r	   rB   r"   r   r1   imagr   rC   s   &&&&&   r*   test_fourier_shift_complex01/TestNdimageFourier.test_fourier_shift_complex01n   s     b% 99U1Xa0>FFuM::h'GGHaqG1GGAqG*!!!aVR3HHQ(H+HHQ(H+!"''!*V"4hssCRCx6HRUV!"''!*bhhuosKr-   c                   \        VR 4      p\        P                  ! WR7      pRVR	&   VP                  V4      pVP	                  Wa^ ,          ^ R7      pVP                  Wa^,          ^R7      p\        P                  ! VRR.V^ ,          ^ 4      pVP                  Wa^,          ^R7      pVP                  Wa^ ,          ^ R7      p\        \        P                  ! V4      VP                  R4      VRR7       R# r   )r   r   r   r   r    r   r	   fourier_ellipsoidr"   r#   r   r$   r%   s   &&&&&  r*   test_fourier_ellipsoid_real010TestNdimageFourier.test_fourier_ellipsoid_real01   s     b% HHU($JJqMHHQ(H+GGAqG*%%a#sU1XqAHHQ(H+IIa8!I,GKKNBJJsOS%*	,r-   c                    \        VR 4      p\        P                  ! WR7      pRVR	&   VP                  V4      pVP	                  Wa^ ,          ^ R7      pVP	                  Wa^,          ^R7      p\
        P                  ! VRR.R
^ 4      pVP                  Wa^,          ^R7      pVP                  Wa^ ,          ^ R7      p\        \
        P                  ! VP                  V4      4      VP                  R4      VRR7       R# r/   )r   r   r   r   r   r	   rL   r"   r   r$   r1   r%   s   &&&&&  r*    test_fourier_ellipsoid_complex013TestNdimageFourier.test_fourier_ellipsoid_complex01   s     b% HHU($JJqMGGAqG*GGAqG*%%a#sR;HHQ(H+HHQ(H+GKK
3RZZ_c%*	,r-   c                    VP                  RVP                  R7      p\        P                  ! \        4      ;_uu_ 4        \
        P                  ! V^4       RRR4       R#   + '       g   i     R# ; i)   r   N)rS         
   )ones
complex128pytestraisesNotImplementedErrorr	   rL   )r&   r(   xs   && r*   )test_fourier_ellipsoid_unimplemented_ndim<TestNdimageFourier.test_fourier_ellipsoid_unimplemented_ndim   sI     GGMG7]].//%%a+ 0///s    A""A3	c                   R F  p\        VP                  VP                  .^^.4       FV  w  r4VP                  W#R7      p\        P
                  ! V^R^ 4      p\        P                  ! V^R^ 4      p\        WgVR7       KX  	  K  	  R# )    r   r<   N))r`   )   r0   )zip	complex64rX   rW   r	   rL   r5   r   )r&   r(   r   type_r'   r\   r)   bs   &&      r*   !test_fourier_ellipsoid_1d_complex4TestNdimageFourier.test_fourier_ellipsoid_1d_complex   sy     &E!2<<"?!RI
GGEG/--aB:++Aq"a8)!<	 J &r-   r   	test_funcc                   \        V4      '       dC   VP                  R 8X  d2   \        P                  ! V4      ^ 8X  d   \        P
                  ! R4       \        WB4      pVP                  WR7      pV! V^4      p\        WV4       R# )rL   z7CuPy's fourier_ellipsoid does not accept size==0 arraysr   N)	r   __name__mathprodrY   xfailr   rW   r   )r&   r   r   rh   r(   r)   re   s   &&&&&  r*   test_fourier_zero_length_dims0TestNdimageFourier.test_fourier_zero_length_dims   sg     BKK""&99		% A%LLRS"GGEG'aOr-    Nr`      ra      )rq   rs   )r?   rV   )float32rT   )float64   )rc   rT   )rX   rw   )ru   rS   )rv      )rc   rS   )rX   rx   )ru      )rc   ry   ))r   )r   rV   )rV   r   )ru   rv   rc   rX   )rj   
__module____qualname____firstlineno__rY   markparametrizer   r	   r!   r+   r2   r5   r6   r9   rB   rE   rI   rL   rM   rP   r]   rf   r   rn   __static_attributes____classdictcell__)__classdict__s   @r*   r   r      s    [[W&CD[[\NO+LMw//0, 1 N E, [[Wx&:;[[\,<>P+QRw//0, 1 S <, [[W&CD[[\NO+LMw../, 0 N E, [[Wx&:;[[\,<>P+QRw../, 0 S <, [[Wx&:;[[\NO+LMw,,-N . N <N [[Wx&:;[[\,<>P+QRw,,-L . S <L [[W&CD[[\NO+LMw001, 2 N E, [[Wx&:;[[\,<>P+QRw001, 2 S <, w001, 2, w001= 2= [[W&?@[[W 'B C[[[273L3LM273K3KL273J3JKMN
	NC A
r-   r   )rk   numpyr   scipy._lib._array_apir   r   r   r   r   r   rY   scipyr	   r}   skip_xp_backendsr   rp   r-   r*   <module>r      s9        ;;// q qr-   