+
    /i                         ^ RI t^ RIHt ^RIHtHt ^RIHtH	t	 ^ RI
HtHt . ROt]P                  ! ^4      tRR ltRR ltRR lt]! R	R
7      RR l4       tRRR/R lltR# )    N)warn)rfftirfft)loggammapoch)array_namespacexp_capabilitiesc           
         \        V 4      pVP                  V 4      p V P                  R,          pV^ 8w  dY   V^,
          ^,          pVP                  WeP                  R7      pWP                  V) W,
          ,          V,          4      ,          p VP                  \        WaW#VR7      4      p	\        W	VR7      p
V^ 8w  d5   WP                  V) XX,
          V,          V,           ,          4      ,          p
V
# )   dtype)offsetbias)xpr   asarrayshapearangefloat64expfhtcoeff_fhtq)adlnmur   r   r   nj_cjuAs   &&&&&      W/var/www/html/photoedit/myenv/lib/python3.14/site-packages/scipy/fft/_fftlog_backend.pyfhtr#      s    		B


1A 	
A qysAgIIazzI*uags*++ 	

8ABDABA 	arA qy	VVTEAGS=61233H    c                    \        V 4      pVP                  V 4      p V P                  R,          pV^ 8w  d_   V^,
          ^,          pVP                  WeP                  R7      pWP                  WHV,
          V,          V,           ,          4      ,          p VP                  \        WaW#VRR7      4      p	\        W	RVR7      p
V^ 8w  d.   WP                  V) XX,
          ,          V,          4      ,          p
V
# )r   r   T)r   r   inverse)r&   r   r   r   )r!   r   r   r   r   r   r   r   r   r    r   s   &&&&&      r"   ifhtr'   *   s    		B


1A 	
A qysAgIIazzI*t#gs]V3455 	

8ABD$OPA 	aDR(A qy	VVTE1s7OC'((Hr$   c                   Y4rvV^,           V,           ^,          pV^,           V,
          ^,          p	\         P                  ! ^ \         P                  V ^,          ,          W,          ,          V ^,          ^,           4      p
\         P                  ! V ^,          ^,           \        R7      p\         P                  ! V ^,          ^,           \        R7      pWP
                  R&   WP                  R&   \        WR7       WP                  R&   \        WR7       V
^\        V,
          ,          ,          p
V;P                  VP                  ,          un        V;P                  \        V,          ,          un        V;P
                  VP
                  ,          un        V;P
                  V
,          un        \         P                  ! WR7       V ^,          ^ 8X  d   ^ VP
                  R&   \         P                  ! V^ ,          4      '       g$   ^V,          \        WV	,
          4      ,          V^ &   \         P                  ! V^ ,          4      '       d3   V'       g+   \        R^R7       \         P                  ! V4      p^ V^ &   V# V^ ,          ^ 8X  d?   V'       d7   \        R^R7       \         P                  ! V4      p\         P                  V^ &   V# )z:Compute the coefficient array for a fast Hankel transform.r   :NNN)outz.singular transform; consider changing the bias)
stacklevelz6singular inverse transform; consider changing the biasr   )nplinspacepiemptycompleximagrealr   LN_2r   isfiniter   isinfr   copyinf)r   r   r   r   r   r&   lnkrqr   xmyr    vs   &&&&&&       r"   r   r   F   s   !
 Q$q&!B
Q$q&!B
Aruuad|QU+QT!V4A
Aaw'A
Aaw'AFF1IFF1IQFF1IQD4KAFFaffFFFd1fFFFaffFFFaKFFF1 	1uzr
 ;;qt !td2"uo%!
 
xx!~~g=!LGGAJ! H 
1wERSTGGAJvv!Hr$   T)out_of_scopec                   Y#rTV^,           V,           ^,          pV^,           V,
          ^,          p\         P                  ^V ,          ,          p\        VRV,          ,           4      p	\        VRV,          ,           4      p
\        V,
          V ,          V	P                  V
P                  ,           \         P                  ,          ,           pWK\         P
                  ! V4      ,
          V ,          ,           # )a^  Return optimal offset for a fast Hankel transform.

Returns an offset close to `initial` that fulfils the low-ringing
condition of [1]_ for the fast Hankel transform `fht` with logarithmic
spacing `dln`, order `mu` and bias `bias`.

Parameters
----------
dln : float
    Uniform logarithmic spacing of the transform.
mu : float
    Order of the Hankel transform, any positive or negative real number.
initial : float, optional
    Initial value for the offset. Returns the closest value that fulfils
    the low-ringing condition.
bias : float, optional
    Exponent of power law bias, any positive or negative real number.

Returns
-------
offset : float
    Optimal offset of the uniform logarithmic spacing of the transform that
    fulfils a low-ringing condition.

Examples
--------
>>> from scipy.fft import fhtoffset
>>> dln = 0.1
>>> mu = 2.0
>>> initial = 0.5
>>> bias = 0.0
>>> offset = fhtoffset(dln, mu, initial, bias)
>>> offset
0.5454581477676637

See Also
--------
fht : Definition of the fast Hankel transform.

References
----------
.. [1] Hamilton A. J. S., 2000, MNRAS, 312, 257 (astro-ph/9905191)

y              ?)r+   r-   r   r2   r0   round)r   r   initialr   r7   r8   r   r9   r:   zpzmargs   &&&&        r"   	fhtoffsetrC   y   s    ^ !
Q$q&!B
Q$q&!B
quA	"r!t)	B	"r!t)	B$;
rww0"%%7
7C#&+++r$   r   c                   Vf   \         pV P                  R,          p\        V RR7      pV'       g
   WQ,          pMWSP                  V4      ,          p\	        WTRR7      pVP                  VRR7      pV# )zMCompute the biased fast Hankel transform.

This is the basic FFTLog routine.
)axisr   )r+   r   r   conjr   flip)r   r    r&   r   r   r!   s   &&&$  r"   r   r      si    
 
z 	
A 	QRA	 	
WWQZaA
AHr$   )r#   r'   rC   )        rH   )rH   rH   F)F)numpyr+   warningsr   _basicr   r   specialr   r   scipy._lib._array_apir   r	   __all__logr2   r#   r'   r   rC   r    r$   r"   <module>rQ      s^       $ B
& 
vvay880f d#6, $6,rT r$   