Ë
    âQ(h  ã                   ó¦   — d Z ddlmZ ddlZddlmZ ddlZddlmZ 	 ddl	Z
dZ ed¬«      d	„ «       Zdd
„Zd„ Zedk(  r e«        yy# e$ r Y Œ-w xY w)zëCompute a grid of values for Wright's generalized Bessel function
and save the values to data files for use in tests. Using mpmath directly in
tests would take too long.

This takes about 10 minutes to run on a 2.7 GHz i7 Macbook Pro.
é    )Ú	lru_cacheN)Útime)Ú	mpf2floatçð9úþB.†@é † )Úmaxsizec                 ó‚   — t        j                  |«      5  t        j                  | «      cd d d «       S # 1 sw Y   y xY w)N)ÚmpÚworkdpsÚrgamma)ÚxÚdpss     új/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/scipy/special/_precompute/wright_bessel_data.pyÚrgamma_cachedr      s-   € ä	�‰�C‹ñ Ü�y‰y˜‹|÷÷ ò ús   –5µ>c                 óX  ‡ ‡‡‡— t        j                  ‰«      5  t        j                  ‰ «      t        j                  ‰«      t        j                  ‰«      cŠ ŠŠt        j                  ˆ ˆˆˆfd„dt         j                  g‰d|g¬«      }t        |«      cddd«       S # 1 sw Y   yxY w)zHCompute Wright's generalized Bessel function as Series with mpmath.
    c                 ób   •— ‰| z  t        j                  | «      z  t        ‰| z  ‰z   ‰¬«      z  S )N)r   )r
   Úfacr   )ÚkÚaÚbr   r   s    €€€€r   ú<lambda>z"mp_wright_bessel.<locals>.<lambda>#   s/   ø€   1¡¤r§v¡v¨a£yÑ 0Ü% a¨!¡e¨a¡i°SÔ9ñ!:€ ó    r   Ús)ÚtolÚmethodÚstepsN)r
   r   ÚmpfÚnsumÚinfr   )r   r   r   r   ÚmaxtermsÚress   ````  r   Úmp_wright_besselr"      s|   û€ ô 
�‰�C‹ñ Ü—&‘&˜“)œRŸV™V A›Y¬¯©¨q«	ˆˆˆ1ˆaÜ�g‰gö :àœ"Ÿ&™&�kØ c°(°ôˆô
 ˜‹~÷÷ ò ús   šA<B Â B)c                  ó	  — t        «       } t        t        «       t        j                  j                  t        «      }t        j                  t        «      j                  dz  }t        j                  |dd|z
  z  ddd|z   z  dd|z
  z  ddd|z   z  dddd|z
  z  ddd|z   z  ddd	d
dg«      }t        j                  d|ddddddddg
«      }t        j                  d|d|z
  dd|z   dd|z
  dd|z   d|z
  dd|z   dd|z
  z  ddd|z   z  dd|z
  z  ddd|z   z  dt        ddddg«      }t        j                  |||d¬«      \  }}}|j                  «       }|j                  «       }|j                  «       }|dk  |t        k\  z   }||dk  |t        kD  z   z  }||dk  |dkD  z   z  }||dk  |dkD  z   z  }||dk  |dkD  z   z  }||dk  |dkD  z   z  }||dk  |dkD  z   z  }||d k  |d!kD  z   z  }||d"k  |d#kD  z   z  }||d$k  |d%kD  z   z  }||d&k  |dkD  z   z  }||d'k  |d(kD  z   z  }||d)k  |d*kD  z   z  }||d+k  |d,kD  z   z  }||d-k  |d.kD  z   z  }||d/k  |d0kD  z   z  }||d1k  |d2kD  z   z  }||d3k  |d4kD  z   z  }||d5k  |d6kD  z   z  }||d5k  |d6kD  z   z  }||d7k  |d8kD  z   z  }||d9k  |dkD  z   z  }t        j                  g d:¢g d;¢g d<¢g d=¢g d>¢g d?¢g d@¢g dA¢g dB¢g dC¢g dD¢g dE¢g dF¢g dG¢g dH¢g«      j                  «       }t        j                   |dIt"        ¬J«      }t%        |j&                  «      D ]  }	||	   ||	   ||	   g|v sŒdK||	<   Œ ||   }||   }||   }||   }g }
t        dL|j&                  › dM�«       t        dN«       t%        |j&                  «      D ]h  }	||	   }||	   }||	   }dO}|dPk  r|t        dz  k\  rdQ}t)        ||||¬R«      }||	   rt        dS|› dT|› dT|› dT|› dU�	«       ŒT|
j+                  ||||f«       Œj t        j                  |
«      }
t        j                  j-                  |dVdWdXdYdZ«      }t        j.                  ||
«       t        t        «       | z
  d[z  d\›d]�«       y )^Néd   g-Cëâ6?é   gü©ñÒMbP?çš™™™™™¹?ç      à?ç      ø?é   gåÐ"Ûùþ@é   é
   r   ç»½×Ùß|Û=çñhãˆµøä>é   é	   éô  g     @�@g     jø@g    _ Bg@Œµx¯DÚij)Úindexingg{®Gázt?gš™™™™™É?gìQ¸…ëá?g     ˆ³@g     ˆÃ@gffffffö?gÍÌÌÌÌÌü?g    €„.Agš™™™™™@g    ÐcAg      @g    „×—Ag333333@g    eÍÍAgffffff
@gš™™™™™@g   èvH7Bé   g   ¢”mBgš™™™™™@g  @åœ0¢BgÍÌÌÌÌÌ@g  �Ä¼ÖBgffffff@g  4&õkCgš™™™™™@g €à7yÃACg333333@g  Ø…W4vCgÍÌÌÌÌÌ@g ÈNgmÁ«Cg      @g =‘`äXáCgš™™™™™@)r&   r$   r   )r'   r+   r   )r'   r+   éè  )r'   r$   r4   )r%   r.   r   )r%   r$   r   )çd     ð?r.   r   )r5   r$   r   )r(   r   r0   )r(   g      =r0   )r(   r,   r0   )r(   r-   r0   )r(   r&   r0   )r(   r.   r   )r(   r$   r   F)ÚdtypeTz
Computing z single points.z.Tests will fail for the following data points:r4   g�íµ ÷Æ°>éÐ  )r    z%failing data point a, b, x, value = [z, ú]z..ÚtestsÚdataÚlocalzwright_bessel.txté<   z.1fz minutes elapsed)r   ÚprintÚ__doc__ÚosÚpathÚdirnameÚ__file__ÚnpÚfinfoÚfloatÚepsÚarrayÚexp_infÚmeshgridÚflattenÚtolistÚ	full_likeÚboolÚrangeÚsizer"   ÚappendÚjoinÚsavetxt)Út0ÚpwdrF   Úa_rangeÚb_rangeÚx_rangeÚbool_filterÚfailingÚ	does_failÚiÚdatasetr   r   r   r    ÚfÚfilenames                    r   Úmainr_   +   s¹  € Ü	‹€BÜ	Œ'„NÜ
�'‰'�/‰/œ(Ó
#€CÜ
�(‰(”5‹/×
Ñ
 Ñ
#€Cä�h‰h˜Ø  C¡Ñ(¨$°¸¸C¹Ñ0@Ø  C¡Ñ(¨$°¸¸C¹Ñ0@Ø˜SØ˜Q ™W™ q¨!¨q°3©w©-Ø˜Q  q¨"ð.ó /€Gô �h‰h˜˜3  t¨S°!°Q¸¸BÀÐDÓE€GÜ�h‰h˜˜3  C¡¨¨A°©GØØ˜C™  A¨¡GØ˜C™  A¨¡GØ˜a #™g™¨¨B°!°c±'©NØ˜q 3™w™¨¨c°Q¸±W©oØœW c¨3°°dð<ó =€Gô !#§¡¨G°W¸gØ59ô!;Ñ€GˆW�gà�o‰oÓ€GØ�o‰oÓ€GØ�o‰oÓ€Gð ˜t‘^¨´7Ñ(:Ñ;Ð<€KØ 7¨S¡=°W¼wÑ5FÑ"GÐ HÑH€KØ 7¨S¡=°W¸s±]Ñ"CÐ DÑD€KØ 7¨T¡>°gÀ±mÑ"DÐ EÑE€KØ 7¨Q¡;°7¸S±=Ñ"AÐ BÑB€KØ 7¨S¡=°W¸s±]Ñ"CÐ DÑD€KØ 7¨S¡=°W¸s±]Ñ"CÐ DÑD€KØ 7¨S¡=°W¸s±]Ñ"CÐ DÑD€KØ 7¨S¡=°W¸s±]Ñ"CÐ DÑD€KØ 7¨S¡=°W¸s±]Ñ"CÐ DÑD€KØ 7¨S¡=°W¸t±^Ñ"DÐ EÑE€KØ 7¨S¡=°W¸t±^Ñ"DÐ EÑE€KØ 7¨Q¡;°7¸T±>Ñ"BÐ CÑC€KØ 7¨S¡=°W¸t±^Ñ"DÐ EÑE€KØ 7¨S¡=°W¸t±^Ñ"DÐ EÑE€KØ 7¨S¡=°W¸t±^Ñ"DÐ EÑE€KØ 7¨S¡=°W¸t±^Ñ"DÐ EÑE€KØ 7¨S¡=°W¸t±^Ñ"DÐ EÑE€KØ 7¨S¡=°W¸t±^Ñ"DÐ EÑE€KØ 7¨S¡=°W¸t±^Ñ"DÐ EÑE€KØ 7¨S¡=°W¸t±^Ñ"DÐ EÑE€KØ 7¨S¡=°W¸t±^Ñ"DÐ EÑE€Kô �h‰hÚ%Ú$ÚÚÚÚÚ(Ú)ÚÚ)ÚÚÚÚÚð
ó ÷  ‰6‹8ð! ô$ —‘˜W e´4Ô8€IÜ�7—<‘<Ó ò  ˆØ�A‰J˜ ™
 G¨A¡JÐ/°7Ò:ØˆI�aŠLð ð
 �kÑ"€GØ�kÑ"€GØ�kÑ"€GØ˜+Ñ&€Ià€GÜ	ˆJ�w—|‘|�n OÐ
4Ô5Ü	Ð
:Ô;Ü�7—<‘<Ó ò )ˆØ�A‰JˆØ�A‰JˆØ�A‰JˆàˆØˆtŠ8˜œW R™ZšØˆHÜ˜Q  1¨xÔ8ˆØ�QŠ<Üð Ø�S˜˜1˜#˜R ˜s " Q C qð*õ +ð �N‰N˜A˜q ! Q˜<Õ(ð)ô �h‰h�wÓ€Gä�w‰w�|‰|˜C  w°¸Ø/ó1€Hä‡J�Jˆx˜Ô!ä	Œd‹f�r‰k˜2Ñ˜cÐ"Ð"2Ð
3Õ4r   Ú__main__)é2   r7   )r>   Ú	functoolsr   r?   r   ÚnumpyrC   Úscipy.special._mptestutilsr   Úmpmathr
   ÚImportErrorrH   r   r"   r_   Ú__name__© r   r   ú<module>ri      sx   ðñõ  Û 	Ý ã Ý 0ð	Ûð
 €ñ �7Ôñó ðó

òi5ðX ˆzÒÙ…Fð øðO ò 	Ùð	ús   žA ÁAÁA