§
    fŠtj'  ã                   óP   — d dl Z d dlZd dlZd dlZd dlZd dlZ G d„ d¦  «        ZdS )é    Nc                   ó�   — e Zd ZdZd„ Zd„ Zd„ Zej        j	        ej         
                    d¬¦  «        d„ ¦   «         ¦   «         ZdS )	ÚTestGILzECheck if the GIL is properly released by scipy.interpolate functions.c                 ó   — g | _         d S ©N)Úmessages)Úselfs    ú^/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/interpolate/tests/test_gil.pyÚsetup_methodzTestGIL.setup_method   s   € ØˆŒˆˆó    c                 ó:   — | j                              |¦  «         d S r   )r   Úappend)r   Úmessages     r	   ÚlogzTestGIL.log   s   € ØŒ×Ò˜WÑ%Ô%Ð%Ð%Ð%r   c                 ób   ‡‡‡— | j         Š G ˆˆˆfd„dt          j        ¦  «        } |¦   «         S )Nc                   ó   •— e Zd Zˆ ˆˆfd„ZdS )ú0TestGIL.make_worker_thread.<locals>.WorkerThreadc                 ó>   •—  ‰d¦  «          ‰‰Ž   ‰d¦  «         d S )Núinterpolation startedúinterpolation complete© )r   Úargsr   Útargets    €€€r	   Úrunz4TestGIL.make_worker_thread.<locals>.WorkerThread.run   s6   ø€ Ø�Ð+Ñ,Ô,Ð,Ø�˜��Ø�Ð,Ñ-Ô-Ð-Ð-Ð-r   N)Ú__name__Ú
__module__Ú__qualname__r   )r   r   r   s   €€€r	   ÚWorkerThreadr      s8   ø€ € € € € ð.ð .ð .ð .ð .ð .ð .ð .ð .r   r   )r   Ú	threadingÚThread)r   r   r   r   r   s    `` @r	   Úmake_worker_threadzTestGIL.make_worker_thread   s[   øøø€ ØŒhˆð	.ð 	.ð 	.ð 	.ð 	.ð 	.ð 	.ð 	.ð 	.�9Ô+ñ 	.ô 	.ð 	.ð ˆ|‰~Œ~Ðr   z*race conditions, may depend on system load)Úreasonc                 óJ  ‡‡— d„ Šˆˆfd„}d„ Š |d¬¦  «        }|                       ‰|¦  «        }|                     ¦   «          t          d¦  «        D ]+}t          j        d¦  «         |                      d¦  «         Œ,|                     ¦   «          | j        g d¢k    sJ ‚d S )	Nc                 óv   — t          j        dd| ¦  «        x}}t          j        ||¦  «        \  }}||z  }|||fS )Nr   éè  )ÚnpÚlinspaceÚmeshgrid)Ún_pointsÚxÚyÚx_gridÚy_gridÚzs         r	   Úgenerate_paramsz9TestGIL.test_rectbivariatespline.<locals>.generate_params!   sC   € Ý”K  4¨Ñ2Ô2Ð2ˆA�Ýœ[¨¨AÑ.Ô.‰NˆF�FØ˜‘ˆAØ�a˜�7ˆNr   c                 óº   •— t          j        dd¦  «        D ]C} ‰|¦  «        }t          j        ¦   «         } ‰|Ž  t          j        ¦   «         |z
  | k    r|c S ŒDd S )Niˆ  r$   )Ú	itertoolsÚcountÚtime)Úrequested_timer(   r   Útime_startedr.   Úinterpolates       €€r	   Úcalibrate_delayz9TestGIL.test_rectbivariatespline.<locals>.calibrate_delay'   ss   ø€ Ý%œO¨D°$Ñ7Ô7ð  ð  �Ø&� xÑ0Ô0�Ý#œy™{œ{�Ø�˜TÐ"Ð"Ý”9‘;”; Ñ-°Ò>Ð>Ø�K�K�Kð ?ð	 ð  r   c                 óH   — t           j                             | ||¦  «         d S r   )Úscipyr5   ÚRectBivariateSpline)r)   r*   r-   s      r	   r5   z5TestGIL.test_rectbivariatespline.<locals>.interpolate/   s#   € ÝÔ×1Ò1°!°Q¸Ñ:Ô:Ð:Ð:Ð:r   é   )r3   g      à?Úworking)r   r;   r;   r;   r   )r    ÚstartÚranger2   Úsleepr   Újoinr   )r   r6   r   Úworker_threadÚir.   r5   s        @@r	   Útest_rectbivariatesplinez TestGIL.test_rectbivariatespline   sö   øø€ ð	ð 	ð 	ð	 ð 	 ð 	 ð 	 ð 	 ð 	 ð	;ð 	;ð 	;ð ˆ¨aÐ0Ñ0Ô0ˆØ×/Ò/°¸TÑBÔBˆØ×ÒÑÔÐÝ�q‘”ð 	 ð 	 ˆAÝŒJ�s‰OŒOˆOØ�HŠH�YÑÔÐÐØ×ÒÑÔÐØŒ}ð !
ð !
ð !
ò 
ð 
ð 
ð 
ð 
ð 
r   N)r   r   r   Ú__doc__r
   r   r    ÚpytestÚmarkÚxslowÚxfailrB   r   r   r	   r   r   
   sˆ   € € € € € ØOÐOðð ð ð&ð &ð &ð	ð 	ð 	ð „[ÔØ„[×ÒÐJÐÑKÔKð
ð 
ñ LÔKñ Ôð
ð 
ð 
r   r   )	r0   r   r2   Únumpyr%   rD   Úscipy.interpolater8   r   r   r   r	   ú<module>rJ      sy   ðØ Ð Ð Ð Ø Ð Ð Ð Ø €€€à Ð Ð Ð Ø €€€Ø Ð Ð Ð ð5
ð 5
ð 5
ð 5
ð 5
ñ 5
ô 5
ð 5
ð 5
ð 5
r   