§
    µ³Ùg«é  ã                   ó²  — d dl 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
mZmZmZmZ d dlmZmZmZmZmZmZmZ d dlmZmZmZmZ d dlmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$ d d	l%m&Z& d d
l'm(Z(  G d„ d¦  «        Z) G d„ d¦  «        Z* G d„ d¦  «        Z+ G d„ d¦  «        Z, G d„ d¦  «        Z- G d„ d¦  «        Z. G d„ d¦  «        Z/dd„Z0 G d„ d¦  «        Z1dS )é    N)ÚLock)Úsuppress_warnings)Úraises)Úxp_assert_equalÚxp_assert_closeÚassert_almost_equalÚassert_array_almost_equal)ÚarrayÚdiffÚlinspaceÚmeshgridÚonesÚpiÚshape)ÚbisplrepÚbisplevÚsplrepÚspalde)	ÚUnivariateSplineÚLSQUnivariateSplineÚInterpolatedUnivariateSplineÚLSQBivariateSplineÚSmoothBivariateSplineÚRectBivariateSplineÚLSQSphereBivariateSplineÚSmoothSphereBivariateSplineÚRectSphereBivariateSpline)Ú_run_concurrent_barrier)Úmake_splrepc                   óÂ   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zej        j        d„ ¦   «         Zd„ ZdS )ÚTestUnivariateSplinec                 óF  — g d¢}g d¢}t          ||d¬¦  «        }t          |                     ¦   «         ddg¦  «         t          |                     ¦   «         ddg¦  «         t	          |                     ¦   «         ¦  «        dk     sJ ‚t           |g d¢¦  «        g d¢¦  «         t          ||dt          |¦  «        ¬¦  «        }t          |j	        dd	…         |                     ¦   «         d
¬¦  «         t          |j
        |                     ¦   «         d
¬¦  «         d S )N©é   é   é   )r&   r&   r&   r$   ©Úkr&   g»½×Ùß|Û=©r$   ç      ø?r%   )r(   ÚséÿÿÿÿçVçž¯Ò<©Úatol)r   r	   Ú	get_knotsÚ
get_coeffsÚabsÚget_residualr   Úlenr   ÚtÚc)ÚselfÚxÚyÚlutÚspls        ú[/granary/edev/quantum/lib/python3.11/site-packages/scipy/interpolate/tests/test_fitpack2.pyÚtest_linear_constantz)TestUnivariateSpline.test_linear_constant   s  € ØˆGˆGˆØˆGˆGˆÝ˜q  QÐ'Ñ'Ô'ˆÝ! #§-¢-¡/¤/°A°q°6Ñ:Ô:Ð:Ý! #§.¢.Ñ"2Ô"2°Q¸°FÑ;Ô;Ð;Ý�3×#Ò#Ñ%Ô%Ñ&Ô&¨Ò.Ð.Ð.Ð.Ý! # # k k kÑ"2Ô"2°I°I°IÑ>Ô>Ð>å˜!˜Q !¥s¨1¡v¤vÐ.Ñ.Ô.ˆÝ˜œ˜a ˜dœ S§]¢]¡_¤_¸5ÐAÑAÔAÐAÝ˜œ˜sŸ~š~Ñ/Ô/°eÐ<Ñ<Ô<Ð<Ð<Ð<ó    c                 ó¦  — g d¢}g d¢}t          ||d¬¦  «        }d}t          |¦  «        t           ||¦  «        ¦  «        k    sJ ‚t          |¦  «        t           ||d¬¦  «        ¦  «        k    sJ ‚g d¢}t          |¦  «        t           ||¦  «        ¦  «        k    sJ ‚t          |¦  «        t           ||d¬¦  «        ¦  «        k    sJ ‚d S )Nr#   ©r   r%   é   r$   r'   r%   )Únu)r*   r%   ç      @)r   r   )r7   r8   r9   r:   Úargs        r<   Útest_preserve_shapez(TestUnivariateSpline.test_preserve_shape&   sÜ   € ØˆIˆIˆØˆIˆIˆÝ˜q ! qÐ)Ñ)Ô)ˆØˆÝ�S‰zŒz�U 3 3 s¡8¤8™_œ_Ò,Ð,Ð,Ð,Ý�S‰zŒz�U 3 3 s¨q >¡>¤>Ñ2Ô2Ò2Ð2Ð2Ð2ØˆmˆmˆÝ�S‰zŒz�U 3 3 s¡8¤8™_œ_Ò,Ð,Ð,Ð,Ý�S‰zŒz�U 3 3 s¨q >¡>¤>Ñ2Ô2Ò2Ð2Ð2Ð2Ð2Ð2r>   c                 óR  — g d¢}g d¢}t          ||d¬¦  «        }t          |                     ¦   «         ddg¦  «         t          |                     ¦   «         ddg¦  «         t	          |                     ¦   «         ¦  «        dk     sJ ‚t           |g d	¢¦  «        g d
¢¦  «         d S )Nr#   r@   r$   r'   r&   r   rA   r-   r)   )r   r$   r%   )r   r	   r0   r1   r2   r3   )r7   r8   r9   r:   s       r<   Útest_linear_1dz#TestUnivariateSpline.test_linear_1d1   s­   € ØˆGˆGˆØˆGˆGˆÝ˜q  QÐ'Ñ'Ô'ˆÝ! #§-¢-¡/¤/°1°Q°%Ñ8Ô8Ð8Ý! #§.¢.Ñ"2Ô"2°A°a°5Ñ9Ô9Ð9Ý�3×#Ò#Ñ%Ô%Ñ&Ô&¨Ò.Ð.Ð.Ð.Ý! # # i i i¡.¤.°°°Ñ9Ô9Ð9Ð9Ð9r>   c                 óŠ   —  G d„ dt           ¦  «        } |g d¢g d¢d¬¦  «        }t           |ddg¦  «        d	d	g¦  «         d S )
Nc                   ó   — e Zd Zd„ ZdS )ú9TestUnivariateSpline.test_subclassing.<locals>.ZeroSplinec                 ó&   — dt          |¦  «        z  S )Nr   )r
   )r7   r8   s     r<   Ú__call__zBTestUnivariateSpline.test_subclassing.<locals>.ZeroSpline.__call__>   s   € Ø�˜q™œ‘zÐ!r>   N)Ú__name__Ú
__module__Ú__qualname__rL   © r>   r<   Ú
ZeroSplinerJ   =   s#   € € € € € ð"ð "ð "ð "ð "r>   rQ   ©r$   r%   r&   rA   é   )r&   r%   r&   r%   r&   r%   r'   r*   rC   ç        )r   r   )r7   rQ   Úsps      r<   Útest_subclassingz%TestUnivariateSpline.test_subclassing:   ss   € ð	"ð 	"ð 	"ð 	"ð 	"Õ)ñ 	"ô 	"ð 	"ð ˆZ˜˜˜ [ [ [°AÐ6Ñ6Ô6ˆÝ˜˜˜C ˜:™œ¨¨R¨Ñ1Ô1Ð1Ð1Ð1r>   c                 ó†   — g d¢}g d¢}t          ||d¬¦  «        }t           |g ¦  «        t          g ¦  «        ¦  «         d S )N©r$   r&   rS   é   é	   ©r   rA   rZ   é   é   r&   r'   )r   r   r
   ©r7   r8   r9   r;   s       r<   Útest_empty_inputz%TestUnivariateSpline.test_empty_inputD   sL   € àˆKˆKˆØˆMˆMˆÝ˜q ! qÐ)Ñ)Ô)ˆÝ˜˜˜B™œ¥ r¡¤Ñ+Ô+Ð+Ð+Ð+r>   c                 óŠ   — g d¢}g d¢}t          ||d¬¦  «        }t          |                     ¦   «         d         d¦  «         d S )NrX   r[   r&   r'   r   g7Ã£ŽýÍð?)r   r   Úrootsr^   s       r<   Ú
test_rootszTestUnivariateSpline.test_rootsK   sM   € ØˆOˆOˆØÐÐˆÝ˜q ! qÐ)Ñ)Ô)ˆÝ˜CŸIšI™KœK¨œNÐ,=Ñ>Ô>Ð>Ð>Ð>r>   c                 óæ   — t          j        ddt           j        z  d¦  «        }t          j        |¦  «        }t	          ||d¬¦  «        }t          |                     ¦   «         ¦  «        dk    sJ ‚d S )Nr   é2   iè  ©r+   )Únpr   r   Úcosr   r4   ra   r^   s       r<   Útest_roots_lengthz&TestUnivariateSpline.test_roots_lengthQ   sc   € ÝŒK˜˜2¥¤™: tÑ,Ô,ˆÝŒF�1‰IŒIˆÝ˜q ! qÐ)Ñ)Ô)ˆÝ�3—9’9‘;”;ÑÔ 2Ò%Ð%Ð%Ð%Ð%Ð%r>   c                 ó„   — g d¢}g d¢}t          ||d¬¦  «        }t          |                     d¦  «        g d¢¦  «         d S )NrX   r[   r&   r'   ç      @)gÌó;¨@gpZ•é<oû?gOÀ¼¶mÇ¿g      Ô?)r   r   Úderivativesr^   s       r<   Útest_derivativesz%TestUnivariateSpline.test_derivativesW   sb   € ØˆOˆOˆØÐÐˆÝ˜q ! qÐ)Ñ)Ô)ˆÝ˜CŸOšO¨CÑ0Ô0ØFÐFÐFñ	Hô 	Hð 	Hð 	Hð 	Hr>   c                 ó&  — t          j        d¦  «        }|dz  d|dz  z  z   }t          ||d¬¦  «        }t          d|¦  «        }t	          |g d¢d¬	¦  «         t          ||dd¬
¦  «        }t	          |                     d¦  «        |d¬	¦  «         d S )Né   r&   ç       @r%   r   re   )g     €F@g     €C@g      6@ç      @r-   r.   )r+   r(   )rf   Úaranger   r   r   r   rk   )r7   r8   r9   ÚtckÚdersr;   s         r<   Útest_derivatives_2z'TestUnivariateSpline.test_derivatives_2^   s¿   € ÝŒI�a‰LŒLˆØˆq‰D�2�a˜‘d‘7‰Nˆå�Q˜˜QÐÑÔˆÝ�a˜‰~Œ~ˆÝ˜ð #ð #ð #ð #ð		$ñ 	$ô 	$ð 	$õ
 ˜q ! q¨AÐ.Ñ.Ô.ˆÝ˜Ÿš¨Ñ*Ô*ØØ"ð	$ñ 	$ô 	$ð 	$ð 	$ð 	$r>   c                 ó    — g d¢}g d¢}g d¢}t          |||d¬¦  «        }t          g d¢¦  «        }t           |g d¢¦  «        |d¬	¦  «         dS )
zRegression test for #1375.)ç      ð¿gææ<ß&Îä¿g_�µ€Õâ¿g@ø³Ìà7Ñ¿gš46	<Æ¿gŠÅóBÏ ¹¿rT   gŠÅóBÏ ¹?gš46	<Æ?g@ø³Ìà7Ñ?g_�µ€Õâ?gææ<ß&Îä?ç      ð?)rw   ç1\_#ä?ç~aèÇ�â?çwõÆÿ“Ù?ç¶ß5?×?ç0¯m›sÖ?gî­x—‰Ö?r|   r{   rz   ry   rx   rw   )ç   ¢”mBçoÙ!þ‡…@çuª)	•~@ç¡eÝ?Ö­z@ç½Œbùý‚@ç¦Öû�v5|@geS®ð®×s@r‚   r�   r€   r   r~   r}   N)r8   r9   Úwr+   )gJ·dØvÖ?gÔc�Œà?gœž=¸ì?gt²—ï?©çš™™™™™¹?ç      à?çÍÌÌÌÌÌì?g®Gáz®ï?gü©ñÒMb@?r.   )r   r
   r   )r7   r8   r9   rƒ   r;   Údesireds         r<   Útest_resize_regressionz+TestUnivariateSpline.test_resize_regressionn   s�   € ðð ð ˆðð ð ˆðð ð ˆõ   a¨1°Ð5Ñ5Ô5ˆÝÐHÐHÐHÑIÔIˆÝ˜˜Ð1Ð1Ð1Ñ2Ô2°GÀ$ÐGÑGÔGÐGÐGÐGr>   c           
      óÐ  — t          j        dt          ¬¦  «        }|dz  }t          ddd¦  «        }|                     ¦   «         }d|t          j        |dk     |d	k    ¦  «        <   |                     ¦   «         }|d         |||d         k     <   |d
         |||d
         k    <   t          t          fD �]$} |||¬¦  «        }dD ]L}t           |||¬¦  «        |dz  d¬¦  «         t            ||||¬¦  «        |¦  «        |dz  d¬¦  «         ŒMdD ]L}t           |||¬¦  «        |dz  d¬¦  «         t            ||||¬¦  «        |¦  «        |dz  d¬¦  «         ŒMdD ]$}t          t          ||fi t          |¬¦  «        ¤Ž Œ%dD ]L}t           |||¬¦  «        |dz  d¬¦  «         t            ||||¬¦  «        |¦  «        |dz  d¬¦  «         ŒM�Œ&|                     ¦   «         dd…         }	t          |||	¦  «        }t           ||d¬¦  «        |dz  d¬¦  «         t           ||d¬¦  «        |dz  d¬¦  «         t          t          ||fi t          d¬¦  «        ¤Ž t           ||d¬¦  «        |dz  d¬¦  «         dD ]\}t          ||¦  «        }t          t          ||fi t          |¬¦  «        ¤Ž t          t          t          fi t          |||¬¦  «        ¤Ž Œ]d S )NrS   ©Údtyper&   éøÿÿÿé   éd   r   rT   ç      @r,   )r8   r9   )r   Úextrapolate)Úextg¼‰Ø—²Òœ<r.   )r$   Úzeros)r%   Úraise)r&   Úconstg¼‰Ø—²Ò¬<rA   r$   r%   )r,   Úunknown)r8   r9   r’   )rf   rq   Úfloatr   ÚcopyÚ
logical_orr   r   r   Úassert_raisesÚ
ValueErrorÚdictr0   r   )
r7   r8   r9   ÚxpÚxp_zerosÚxp_clipÚclsr;   r’   r5   s
             r<   Útest_out_of_range_regressionz1TestUnivariateSpline.test_out_of_range_regression~   s‰  € åŒI�a�uÐ%Ñ%Ô%ˆØˆq‰Dˆå�b˜"˜cÑ"Ô"ˆØ—7’7‘9”9ˆØ@Aˆ•”˜x¨"š}¨h¸ªmÑ<Ô<Ñ=Ø—'’'‘)”)ˆØ"# A¤$ˆ�˜!˜Aœ$’ÑØ#$ R¤5ˆ�˜!˜Bœ%’Ñ å$Õ&BÐCð 	Pñ 	PˆCØ�#˜˜Q�-‘-”-ˆCØ)ð Kð K�Ý   B¨CÐ 0Ñ 0Ô 0°"°a±%¸eÐDÑDÔDÐDÝÐ 2   A q¨cÐ 2Ñ 2Ô 2°2Ñ 6Ô 6¸¸A¹ÀEÐJÑJÔJÐJÐJØ#ð Qð Q�Ý   B¨CÐ 0Ñ 0Ô 0°(¸A±+ÀEÐJÑJÔJÐJÝÐ 2   A q¨cÐ 2Ñ 2Ô 2°2Ñ 6Ô 6¸À!¹È%ÐPÑPÔPÐPÐPØ#ð Dð D�Ý�j¨#¨rÐCÐCµT¸c°]±]´]ÐCÐCÐCÐCØ#ð Pð P�Ý   B¨CÐ 0Ñ 0Ô 0°'¸1±*À5ÐIÑIÔIÐIÝÐ 2   A q¨cÐ 2Ñ 2Ô 2°2Ñ 6Ô 6¸À¹
ÈÐOÑOÔOÐOÐOñPð
 �MŠM‰OŒO˜A˜a˜CÔ ˆÝ! ! Q¨Ñ*Ô*ˆÝ˜˜˜B A˜™œ¨¨A©°EÐ:Ñ:Ô:Ð:Ý˜˜˜B A˜™œ¨°!©¸%Ð@Ñ@Ô@Ð@Ý•j # rÐ9Ð9­T°a¨[©[¬[Ð9Ð9Ð9Ý˜˜˜B A˜™œ¨°©
¸Ð?Ñ?Ô?Ð?ð #ð 	/ð 	/ˆCÝ" 1 aÑ(Ô(ˆCÝ�* c¨2Ð?Ð?µ¸#°±´Ð?Ð?Ð?Ý�*Õ&6ð /ð /Ý˜Q !¨Ð-Ñ-Ô-ð/ð /ð /ð /ð	/ð 	/r>   c                 óÐ   — t          j        d¦  «        dz  }t          j        d¦  «        dz  }t          j        ddd¦  «        }d}t          t          t
          ||||¬¦  «         d S )Nr�   rw   r   éc   é
   )r,   ée   ©Úbbox)rf   rq   r   rš   r›   r   )r7   ÚxsÚysÚknotsr§   s        r<   Útest_lsq_fpchecz$TestUnivariateSpline.test_lsq_fpchec§   sm   € ÝŒY�s‰^Œ^˜bÑ ˆÝŒY�s‰^Œ^˜bÑ ˆÝ”˜A˜r 2Ñ&Ô&ˆØˆÝ•jÕ"5°r¸2¸uØð	!ñ 	!ô 	!ð 	!ð 	!ð 	!r>   c                 ó´  — t          j        ddd¦  «        dz  }t          j        |¦  «        }t          ||d¬¦  «        }|                     d¦  «                             d¦  «        }t           |d¦  «         |d¦  «        ¦  «         |                     d¦  «        }t           |d¦  «         |d	¦  «        z
  |                     d	d¦  «        ¦  «         d S )
Nr   r$   éF   r&   re   r%   ç333333Ó?g333333ã?çš™™™™™É?)rf   r   rg   r   ÚantiderivativeÚ
derivativer   Úintegral)r7   r8   r9   r;   Úspl2s        r<   Ú"test_derivative_and_antiderivativez7TestUnivariateSpline.test_derivative_and_antiderivative¯   sÓ   € åŒK˜˜1˜bÑ!Ô! 1Ñ$ˆÝŒF�1‰IŒIˆå˜q ! qÐ)Ñ)Ô)ˆØ×!Ò! !Ñ$Ô$×/Ò/°Ñ2Ô2ˆÝ˜˜˜C™œ $ $ s¡)¤)Ñ,Ô,Ð,à×!Ò! !Ñ$Ô$ˆÝ˜˜˜S™	œ	 D D¨¡I¤IÑ-ØŸš S¨#Ñ.Ô.ñ	0ô 	0ð 	0ð 	0ð 	0r>   c                 óÂ   — g d¢}g d¢}t          ||dd¬¦  «        }g d¢}t           |                     ¦   «         |¦  «        t          j        |¦  «        d¬¦  «         d S )	N©r$   r%   rA   é   g      !@)r†   çš™™™™™é?çÍÌÌÌÌÌô?rC   rS   r•   r&   )r’   r(   )r,   r   g      à¿rZ   g      #@r¤   r-   r.   )r   r   r±   rf   Ú
zeros_like)r7   Úx_valuesÚy_valuesÚfr8   s        r<   Útest_derivative_extrapolationz2TestUnivariateSpline.test_derivative_extrapolation¼   sr   € ð %Ð$Ð$ˆØ*Ð*Ð*ˆÝ˜X x°WÀÐBÑBÔBˆà%Ð%Ð%ˆÝ˜˜Ÿš™œ qÑ)Ô)­2¬=¸Ñ+;Ô+;À%ÐHÑHÔHÐHÐHÐHr>   c                 óÞ   — t          j        ddd¦  «        }t          d¦  «        D ]F}t          ||d|¬¦  «        }dD ].\  }}t	          |                     ||¦  «        ¦  «        dk     sJ ‚Œ/ŒGd S )	NrT   rw   rY   rA   r   )r+   r’   ))r$   r$   )r$   rS   )r%   rS   ©r   r   )éþÿÿÿr   )rÁ   r,   r-   )rf   r   Úranger   r2   r²   )r7   r8   r’   r½   ÚaÚbs         r<   Útest_integral_out_of_boundsz0TestUnivariateSpline.test_integral_out_of_boundsÆ   s�   € õ ŒK˜˜B Ñ"Ô"ˆÝ˜‘8”8ð 	5ð 	5ˆCÝ   A¨°Ð4Ñ4Ô4ˆAð6ð 5ð 5‘��Aå˜1Ÿ:š: a¨Ñ+Ô+Ñ,Ô,¨uÒ4Ð4Ð4Ð4Ð4ð5ð	5ð 	5r>   c                 ó4  — t          j        dt          ¬¦  «        }|dz  }t          j        |¦  «        }t	          ||d¬¦  «        }|                     ¦   «         dd…         }|d         }t           j        t           j        t           j         fD �]}||d<   t          t          t          fi t          ||d¬¦  «        ¤Ž t          t          t          fi t          ||d¬¦  «        ¤Ž t          t          t          fi t          |||d¬	¦  «        ¤Ž ||d<   ||d<   t          t          t          fi t          |||d¬
¦  «        ¤Ž t          t          t          fi t          |||d¬
¦  «        ¤Ž t          t          t          fi t          ||||d¬¦  «        ¤Ž �Œ	d S )Nr¤   r‹   r&   T©Úcheck_finiterA   r,   ©r8   r9   rÈ   )r8   r9   r5   rÈ   )r8   r9   rƒ   rÈ   ©r8   r9   r5   rƒ   rÈ   )rf   rq   r—   Ú	ones_liker   r0   ÚnanÚinfrš   r›   rœ   r   r   )r7   r8   r9   rƒ   r;   r5   Úy_endÚzs           r<   Útest_nanzTestUnivariateSpline.test_nanÐ   sí  € åŒI�b¥Ð&Ñ&Ô&ˆØˆq‰DˆÝŒL˜‰OŒOˆå˜q !°$Ð7Ñ7Ô7ˆØ�MŠM‰OŒO˜A˜a˜CÔ ˆØ�"”ˆÝ”&�"œ&¥2¤6 'Ð*ð 	Cñ 	CˆAØˆAˆb‰EÝ�*Õ&6ð 9ð 9Ý˜Q !°$Ð7Ñ7Ô7ð9ð 9ð 9å�*Õ&Bð 9ð 9Ý˜Q !°$Ð7Ñ7Ô7ð9ð 9ð 9å�*Õ&9ð >ð >Ý˜Q ! q°tÐ<Ñ<Ô<ð>ð >ð >àˆAˆb‰EØˆAˆb‰EÝ�*Õ&6ð >ð >Ý˜Q ! q°tÐ<Ñ<Ô<ð>ð >ð >å�*Õ&Bð >ð >Ý˜Q ! q°tÐ<Ñ<Ô<ð>ð >ð >å�*Õ&9ð Cð CÝ˜Q ! q¨A¸DÐAÑAÔAðCð Cð Cñ Cð	Cð 	Cr>   c           
      ó  — t          j        dt          ¬¦  «        }|dz  }t          j        dt          ¬¦  «        }|d         |d<   |dz  }t          j        |¦  «        }t	          ||d¬¦  «        }|                     ¦   «         dd…         }t	          |||dd¬	¦  «         t          ||||d¬
¦  «         t          t          t          fi t          ||dd¬¦  «        ¤Ž t          t          t          fi t          ||d¬¦  «        ¤Ž d S )Nr¤   r‹   r&   r   r$   TrÇ   rA   )r8   r9   rƒ   r+   rÈ   rÊ   )r8   r9   r+   rÈ   rÉ   )rf   rq   r—   rË   r   r0   r   rš   r›   rœ   r   ©r7   ÚxxÚyyr8   r9   rƒ   r;   r5   s           r<   Útest_strictly_increasing_xz/TestUnivariateSpline.test_strictly_increasing_xê   s&  € õ
 ŒY�r¥Ð'Ñ'Ô'ˆØ�‰UˆÝŒI�b¥Ð&Ñ&Ô&ˆØ�Œtˆˆ!‰Øˆq‰DˆÝŒL˜‰OŒOˆå˜r 2°DÐ9Ñ9Ô9ˆØ�MŠM‰OŒO˜A˜a˜CÔ ˆÝ˜1  Q¨!¸$Ð?Ñ?Ô?Ð?Ý˜a 1¨¨Q¸TÐBÑBÔBÐBÝ•jÕ"2ð 	:ð 	:Ý˜˜a 1°4Ð8Ñ8Ô8ð	:ð 	:ð 	:å•jÕ">ð 	5ð 	5Ý˜˜a¨dÐ3Ñ3Ô3ð	5ð 	5ð 	5ð 	5ð 	5r>   c                 ó  — t          j        dt          ¬¦  «        }|dz  }t          j        dt          ¬¦  «        }|d         dz
  |d<   |dz  }t          j        |¦  «        }t	          ||d¬¦  «        }|                     ¦   «         dd	…         }t          t          t          fi t          ||d¬
¦  «        ¤Ž t          t          t          fi t          ||d¬
¦  «        ¤Ž t          t          t          fi t          ||||d¬¦  «        ¤Ž d S )Nr¤   r‹   r&   r   rw   r$   TrÇ   rA   rÉ   rÊ   )rf   rq   r—   rË   r   r0   rš   r›   rœ   r   r   rÒ   s           r<   Útest_increasing_xz&TestUnivariateSpline.test_increasing_xÿ   s+  € åŒY�r¥Ð'Ñ'Ô'ˆØ�‰UˆÝŒI�b¥Ð&Ñ&Ô&ˆØ�Œt�c‰zˆˆ!‰Øˆq‰DˆÝŒL˜‰OŒOˆå˜r 2°DÐ9Ñ9Ô9ˆØ�MŠM‰OŒO˜A˜a˜CÔ ˆÝ•jÕ"2ð 	5ð 	5Ý˜˜a¨dÐ3Ñ3Ô3ð	5ð 	5ð 	5å•jÕ">ð 	5ð 	5Ý˜˜a¨dÐ3Ñ3Ô3ð	5ð 	5ð 	5å•jÕ"5ð 	?ð 	?Ý˜˜a 1¨¸Ð=Ñ=Ô=ð	?ð 	?ð 	?ð 	?ð 	?r>   c                 óŠ  — t          t          ¦  «        5 }g d¢}g d¢}t          ||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }g d¢}g d¢}g d¢}t          |||¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }d}t          |||¬	¦  «         d d d ¦  «         n# 1 swxY w Y   d
t          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          ||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          ||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚d S )Nr¶   ©r†   r¸   r¹   rC   ú!x and y should have a same length©r†   r¸   r¹   rC   gffffff@©rv   rw   rw   rw   ©rƒ   ú%x, y, and w should have a same lengthr,   r¦   úbbox shape should be (2,)r·   r'   úk should be 1 <= k <= 5rv   re   ús should be s >= 0.0)rš   r›   r   ÚstrÚvalue©r7   Úinfor»   r¼   Úw_valuesr§   s         r<   Ú(test_invalid_input_for_univariate_splinez=TestUnivariateSpline.test_invalid_input_for_univariate_spline  s  € å�:Ñ&Ô&ð 	1¨$Ø(Ð(Ð(ˆHØ+Ð+Ð+ˆHÝ˜X xÑ0Ô0Ð0ð	1ð 	1ð 	1ñ 	1ô 	1ð 	1ð 	1ð 	1ð 	1ð 	1ð 	1øøøð 	1ð 	1ð 	1ð 	1ð 3µc¸$¼*±o´oÐEÐEÐEÐEå�:Ñ&Ô&ð 	=¨$Ø(Ð(Ð(ˆHØ0Ð0Ð0ˆHØ,Ð,Ð,ˆHÝ˜X x°8Ð<Ñ<Ô<Ð<ð		=ð 	=ð 	=ñ 	=ô 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=øøøð 	=ð 	=ð 	=ð 	=ð
 7½#¸d¼j¹/¼/ÐIÐIÐIÐIå�:Ñ&Ô&ð 	<¨$ØˆDÝ˜X x°dÐ;Ñ;Ô;Ð;ð	<ð 	<ð 	<ñ 	<ô 	<ð 	<ð 	<ð 	<ð 	<ð 	<ð 	<øøøð 	<ð 	<ð 	<ð 	<ð +­c°$´*©o¬oÐ=Ð=Ð=Ð=å�:Ñ&Ô&ð 	6¨$Ý˜X x°1Ð5Ñ5Ô5Ð5ð	6ð 	6ð 	6ñ 	6ô 	6ð 	6ð 	6ð 	6ð 	6ð 	6ð 	6øøøð 	6ð 	6ð 	6ð 	6à(­C°´
©O¬OÐ;Ð;Ð;Ð;å�:Ñ&Ô&ð 	9¨$Ý˜X x°4Ð8Ñ8Ô8Ð8ð	9ð 	9ð 	9ñ 	9ô 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9øøøð 	9ð 	9ð 	9ð 	9à%­¨T¬Z©¬Ð8Ð8Ð8Ð8Ð8Ð8sU   •:º>Á>Á1BÂB Â#B ÃC4Ã4C8Ã;C8Ä+E
Å
EÅEÆF Æ F$Æ'F$c                 óÞ  — t          t          ¦  «        5 }g d¢}g d¢}t          ||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }g d¢}g d¢}g d¢}t          |||¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }d}t          |||¬	¦  «         d d d ¦  «         n# 1 swxY w Y   d
t          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          ||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚d S )Nr¶   rÙ   rÚ   rÛ   rÜ   rÝ   rÞ   r,   r¦   rß   r·   r'   rà   )rš   r›   r   râ   rã   rä   s         r<   Ú5test_invalid_input_for_interpolated_univariate_splinezJTestUnivariateSpline.test_invalid_input_for_interpolated_univariate_spline-  s­  € å�:Ñ&Ô&ð 	=¨$Ø(Ð(Ð(ˆHØ+Ð+Ð+ˆHÝ(¨°8Ñ<Ô<Ð<ð	=ð 	=ð 	=ñ 	=ô 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=øøøð 	=ð 	=ð 	=ð 	=ð 3µc¸$¼*±o´oÐEÐEÐEÐEå�:Ñ&Ô&ð 	I¨$Ø(Ð(Ð(ˆHØ0Ð0Ð0ˆHØ,Ð,Ð,ˆHÝ(¨°8¸xÐHÑHÔHÐHð		Ið 	Ið 	Iñ 	Iô 	Ið 	Ið 	Ið 	Ið 	Ið 	Ið 	Iøøøð 	Ið 	Ið 	Ið 	Ið
 7½#¸d¼j¹/¼/ÐIÐIÐIÐIå�:Ñ&Ô&ð 	H¨$ØˆDÝ(¨°8À$ÐGÑGÔGÐGð	Hð 	Hð 	Hñ 	Hô 	Hð 	Hð 	Hð 	Hð 	Hð 	Hð 	Høøøð 	Hð 	Hð 	Hð 	Hð +­c°$´*©o¬oÐ=Ð=Ð=Ð=å�:Ñ&Ô&ð 	B¨$Ý(¨°8¸qÐAÑAÔAÐAð	Bð 	Bð 	Bñ 	Bô 	Bð 	Bð 	Bð 	Bð 	Bð 	Bð 	Bøøøð 	Bð 	Bð 	Bð 	Bà(­C°´
©O¬OÐ;Ð;Ð;Ð;Ð;Ð;sC   •:º>Á>Á1BÂB Â#B ÃC4Ã4C8Ã;C8Ä+E
Å
EÅEc                 óÜ  — g d¢}g d¢}t          ||d¬¦  «        }|                     ¦   «         dd…         }t          t          ¦  «        5 }g d¢}g d¢}t	          |||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }g d¢}g d¢}g d	¢}t	          ||||¬
¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚d}t          t          |¬¦  «        5 }d}t	          ||||¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          t          ¦  «        5 }d}t	          ||||¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t	          |||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚d S )Nr¶   rÛ   TrÇ   r&   rA   rÙ   rÚ   )rw   rw   rw   rw   rÝ   rÞ   z;Interior knots t must satisfy Schoenberg-Whitney conditions)Úmatch)r�   éœÿÿÿr¦   r,   rß   r·   r'   rà   )r   r0   rš   r›   r   râ   rã   )	r7   r»   r¼   r;   Út_valuesrå   ræ   Úmessager§   s	            r<   Ú,test_invalid_input_for_lsq_univariate_splinezATestUnivariateSpline.test_invalid_input_for_lsq_univariate_splineE  s�  € à$Ð$Ð$ˆØ,Ð,Ð,ˆÝ˜x¨ÀÐEÑEÔEˆØ—=’=‘?”? 1 Q 3Ô'ˆå�:Ñ&Ô&ð 	>¨$Ø(Ð(Ð(ˆHØ+Ð+Ð+ˆHÝ ¨(°HÑ=Ô=Ð=ð	>ð 	>ð 	>ñ 	>ô 	>ð 	>ð 	>ð 	>ð 	>ð 	>ð 	>øøøð 	>ð 	>ð 	>ð 	>ð 3µc¸$¼*±o´oÐEÐEÐEÐEå�:Ñ&Ô&ð 	J¨$Ø(Ð(Ð(ˆHØ0Ð0Ð0ˆHØ+Ð+Ð+ˆHÝ ¨(°HÀÐIÑIÔIÐIð		Jð 	Jð 	Jñ 	Jô 	Jð 	Jð 	Jð 	Jð 	Jð 	Jð 	Jøøøð 	Jð 	Jð 	Jð 	Jð
 7½#¸d¼j¹/¼/ÐIÐIÐIÐIàOˆÝ�:¨WÐ5Ñ5Ô5ð 	I¸ØˆDÝ ¨(°HÀ4ÐHÑHÔHÐHð	Ið 	Ið 	Iñ 	Iô 	Ið 	Ið 	Ið 	Ið 	Ið 	Ið 	Iøøøð 	Ið 	Ið 	Ið 	Iõ �:Ñ&Ô&ð 	I¨$ØˆDÝ ¨(°HÀ4ÐHÑHÔHÐHð	Ið 	Ið 	Iñ 	Iô 	Ið 	Ið 	Ið 	Ið 	Ið 	Ið 	Iøøøð 	Ið 	Ið 	Ið 	Ið +­c°$´*©o¬oÐ=Ð=Ð=Ð=å�:Ñ&Ô&ð 	C¨$Ý ¨(°HÀÐBÑBÔBÐBð	Cð 	Cð 	Cñ 	Cô 	Cð 	Cð 	Cð 	Cð 	Cð 	Cð 	Cøøøð 	Cð 	Cð 	Cð 	Cà(­C°´
©O¬OÐ;Ð;Ð;Ð;Ð;Ð;sZ   ÁA1Á1A5Á8A5Â( CÃCÃCÄD1Ä1D5Ä8D5ÅE2Å2E6Å9E6Æ)G	Ç	GÇGc                 óÞ  — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        ddg¦  «        }t          ||||¬¦  «        }t          |                     ¦   «         |                     ¦   «         |                     ¦   «         |                     ¦   «         ¬¦  «        }t	           |g d¢¦  «         |g d¢¦  «        ¦  «         d S )Nr¶   rÛ   )rw   rw   rw   rw   rw   rì   r�   )r8   r9   rƒ   r§   r„   )rf   r
   r   Útolistr   )r7   r»   r¼   ræ   r§   Úspl1r³   s          r<   Útest_array_like_inputz*TestUnivariateSpline.test_array_like_inputg  s  € Ý”8Ð-Ð-Ð-Ñ.Ô.ˆÝ”8Ð5Ð5Ð5Ñ6Ô6ˆÝ”8Ð5Ð5Ð5Ñ6Ô6ˆÝŒx˜˜s˜Ñ$Ô$ˆå (¨h¸(Ø%)ð+ñ +ô +ˆõ   (§/¢/Ñ"3Ô"3°x·²Ñ7HÔ7HØ"*§/¢/Ñ"3Ô"3¸$¿+º+¹-¼-ðIñ Iô Iˆõ 	˜˜Ð2Ð2Ð2Ñ3Ô3Ø˜Ð2Ð2Ð2Ñ3Ô3ñ	5ô 	5ð 	5ð 	5ð 	5r>   c                 ó   — t          d¦  «        }g d¢}t          ¦   «         5 }|                     t          d¦  «        }t	          ||d¬¦  «         t          |¦  «        dk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Ném   )mrT   rT   rT   rT   rT   çÍÌÌÌÌÌ%@rT   ç      &@rT   rT   rT   rö   rT   rT   rT   rT   rT   rT   rö   rT   rT   rT   r÷   rT   rT   rT   rö   rT   rT   rT   ç      %@rT   rT   rT   çffffff%@rT   rT   rT   r÷   rT   rT   rT   rT   rT   rT   rö   rT   rT   rù   rT   rT   rT   ç333333%@rT   rT   rT   rø   rT   rT   rù   rT   rT   rø   rT   rT   g      '@rT   rT   rT   rù   rT   rT   rù   rT   rT   rö   rT   rT   çš™™™™™%@rT   rT   rT   rù   rT   rT   rú   rT   rT   rT   çÍÌÌÌÌÌ$@rT   rT   rú   rT   rT   rø   rT   rT   rT   rù   rT   rT   rT   rü   rT   rT   rT   rû   rT   a#  
The maximal number of iterations maxit \(set to 20 by the program\)
allowed for finding a smoothing spline with fp=s has been reached: s
too small.
There is an approximation returned but the corresponding weighted sum
of squared residuals does not satisfy the condition abs\(fp-s\)/s < tol.r$   r'   )rÂ   r   ÚrecordÚUserWarningr   r4   )r7   r8   r9   ÚsupÚrs        r<   Útest_fpknot_oob_crashz*TestUnivariateSpline.test_fpknot_oob_crashv  sÙ   € õ �#‰JŒJˆð;ð ;ð ;ˆõ Ñ Ô ð 
	 CØ—
’
ÝðLñMô MˆAõ ˜Q  QÐ'Ñ'Ô'Ð'Ý�q‘6”6˜Q’;�;�;�;�;ð
	ð 
	ð 
	ñ 
	ô 
	ð 
	ð 
	ð 
	ð 
	ð 
	ð 
	ð 
	øøøð 
	ð 
	ð 
	ð 
	ð 
	ð 
	s   ¢AA3Á3A7Á:A7c                 óà   — t          j        dt          ¬¦  «        }|dz  }t          j        dt          ¬¦  «        }|d         |d<   t          ||d¬¦  «        }d„ }t	          d	|||¦  «         d S )
Nr�   r‹   r&   r   r$   TrÇ   c                 ó   —  ||¦  «         d S )NrP   )Ú_Úinterpr8   s      r<   Ú	worker_fnz8TestUnivariateSpline.test_concurrency.<locals>.worker_fn›  s   € ØˆF�1‰IŒIˆIˆIˆIr>   r¤   )rf   rq   r—   r   r   )r7   rÓ   rÔ   r8   r;   r  s         r<   Útest_concurrencyz%TestUnivariateSpline.test_concurrency’  s�   € õ ŒY�s¥%Ð(Ñ(Ô(ˆØ�‰UˆÝŒI�c¥Ð'Ñ'Ô'ˆØ�Œtˆˆ!‰Ý˜r 2°DÐ9Ñ9Ô9ˆð	ð 	ð 	õ 	   I¨s°AÑ6Ô6Ð6Ð6Ð6r>   N)rM   rN   rO   r=   rE   rG   rV   r_   rb   rh   rl   rt   r‰   r¡   r«   r´   r¾   rÅ   rÐ   rÕ   r×   rç   ré   rï   ró   ÚpytestÚmarkÚthread_unsafer  r  rP   r>   r<   r!   r!      sœ  € € € € € ð=ð =ð =ð	3ð 	3ð 	3ð:ð :ð :ð2ð 2ð 2ð,ð ,ð ,ð?ð ?ð ?ð&ð &ð &ðHð Hð Hð$ð $ð $ð Hð Hð Hð '/ð '/ð '/ðR!ð !ð !ð0ð 0ð 0ðIð Ið Ið5ð 5ð 5ðCð Cð Cð45ð 5ð 5ð*?ð ?ð ?ð$9ð 9ð 9ð8<ð <ð <ð0 <ð  <ð  <ðD5ð 5ð 5ð „[Ôðð ñ Ôðð67ð 7ð 7ð 7ð 7r>   r!   c                   óì   — e Zd Zej        j        d„ ¦   «         Zd„ Zej        j        d„ ¦   «         Zej        j        d„ ¦   «         Z	d„ Z
ej        j        d„ ¦   «         Zej        j        d„ ¦   «         ZdS )	ÚTestLSQBivariateSplinec           
      ó|  — g d¢}g d¢}g d¢}d}d|z   d|z
  g}d|z   d|z
  g}t          ¦   «         5 }|                     t          d¦  «        }t          |||||dd¬¦  «        }	t	          |¦  «        dk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   t           |	d	d	¦  «        t          j        d
¦  «        ¦  «         d S )N©	r$   r$   r$   r%   r%   r%   r&   r&   r&   ©	r$   r%   r&   r$   r%   r&   r$   r%   r&   ©	r&   r&   r&   r&   r&   r&   r&   r&   r&   r…   r$   r&   ú
The coefficients of the spline©ÚkxÚkyr%   ç      @)r   rý   rþ   r   r4   r   rf   Úasarray©
r7   r8   r9   rÏ   r+   ÚtxÚtyrÿ   r   r:   s
             r<   r=   z+TestLSQBivariateSpline.test_linear_constant£  s  € àÐÐˆØÐÐˆØÐÐˆØˆØ�‰c�!�A‘#ˆYˆØ�‰c�!�A‘#ˆYˆÝÑ Ô ð 	 CØ—
’
�;Ð(JÑKÔKˆAÝ$ Q q¨¨2¨b°A¸Ð;Ñ;Ô;ˆCÝ�q‘6”6˜Q’;�;�;�;�;ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ
 	˜C˜C  1™IœI¥r¤z°"¡~¤~Ñ6Ô6Ð6Ð6Ð6ó   ±ABÂB	ÂB	c           
      óî  — g d¢}g d¢}g d¢}d}d|z   d|z
  g}d|z   d|z
  g}t          ¦   «         5 }|                     t          d¦  «         t          |||||dd¬¦  «        }d d d ¦  «         n# 1 swxY w Y   |                     ¦   «         \  }}t          |d d	…         |dd …         ¦  «        D ]Ã\  }	}
t          |d d	…         |dd …         ¦  «        D ]�\  }}d
D ]•}dD ]�}|	d|z
  z  |
|z  z   }|d|z
  z  ||z  z   } ||	|¦  «        
 d|z
  z  d|z
  z   ||
|¦  «        |z  d|z
  z  z    ||	|¦  «        d|z
  z  |z  z    ||
|¦  «        |z  |z  z   }t           |||¦  «        |¦  «         Œ‘Œ–ŒžŒÄd S )Nr  r  ©	r   rY   rn   r&   rA   rY   r$   r&   rA   r…   r$   r&   r  r  r,   )r…   r†   r‡   )r®   çš™™™™™Ù?gffffffæ?)r   Úfilterrþ   r   r0   Úzipr   )r7   r8   r9   rÏ   r+   r  r  rÿ   r:   ÚxaÚxbÚyaÚybr5   r�   ÚypÚzps                    r<   Útest_bilinearityz'TestLSQBivariateSpline.test_bilinearity²  sD  € ØÐÐˆØÐÐˆØÐÐˆØˆØ�‰c�!�A‘#ˆYˆØ�‰c�!�A‘#ˆYˆÝÑ Ô ð 	< Cà�JŠJ•{Ð$FÑGÔGÐGÝ$ Q q¨¨2¨b°A¸Ð;Ñ;Ô;ˆCð	<ð 	<ð 	<ñ 	<ô 	<ð 	<ð 	<ð 	<ð 	<ð 	<ð 	<øøøð 	<ð 	<ð 	<ð 	<ð
 —’‘”‰ˆˆBÝ˜"˜S˜b˜Sœ' 2 a b b¤6Ñ*Ô*ð 
	<ð 
	<‰FˆB�Ý˜b  " œg r¨!¨"¨"¤vÑ.Ô.ð 	<ð 	<‘��BØ(ð <ð <�AØ,ð <ð <˜Ø  1¡™X¨¨1©™_˜Ø  1¡™X¨¨1©™_˜Ø #  B¨¡¤˜m¨Q¨q©SÑ1°1°Q±3Ñ7Ø #  B¨¡¤¨A¡¨q°©sÑ 3ñ4à #  B¨¡¤¨Q¨q©SÑ 1°!Ñ 3ñ4ð !$  B¨¡¤¨A¡¨a¡ñ0˜õ ,¨C¨C°°2©J¬J¸Ñ;Ô;Ð;Ð;ð<ð<ð	<ð
	<ð 
	<s   ±2A/Á/A3Á6A3c                 óP  — g d¢}g d¢}t          g d¢¦  «        }d}d|z   d|z
  g}d|z   d|z
  g}t          ¦   «         5 }|                     t          d¦  «        }t	          |||||dd¬¦  «        }	t          |¦  «        dk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   |	                     ¦   «         \  }} |	||¦  «        }
d	t          |¦  «        d d …d f         t          |¦  «        d d d …f         z  |
d d
…d d
…f         |
dd …d d
…f         z   |
d d
…dd …f         z   |
dd …dd …f         z   z                       ¦   «         z  }t          t          j        |	                     |d         |d
         |d         |d
         ¦  «        ¦  «        t          j        |¦  «        ¦  «         d S )N)	r$   r$   r$   r%   r%   r%   rn   rn   rn   r  r  r…   r$   r&   r  r  ç      Ð?r,   r   )r
   r   rý   rþ   r   r4   r0   r   Úsumr   rf   r  r²   )r7   r8   r9   rÏ   r+   r  r  rÿ   r   r:   ÚtzÚtrpzs               r<   Útest_integralz$TestLSQBivariateSpline.test_integralË  s
  € àÐÐˆØÐÐˆÝÐ%Ð%Ð%Ñ&Ô&ˆàˆØ�‰c�!�A‘#ˆYˆØ�‰c�!�A‘#ˆYˆÝÑ Ô ð 	 CØ—
’
�;Ð(JÑKÔKˆAÝ$ Q¨¨1¨b°"¸¸qÐAÑAÔAˆCÝ�q‘6”6˜Q’;�;�;�;�;ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð —’‘”‰ˆˆBØˆS��R‰[Œ[ˆØ•D˜‘H”H˜Q˜Q˜Q˜t˜VÔ$¥T¨"¡X¤X¨d°1°1°1¨fÔ%5Ñ5Ø˜#˜2˜#˜c˜r˜c˜'”{ 2 a b b¨¨"¨ f¤:Ñ-¨b°°"°°Q°R°R°¬jÑ8¸¸A¸B¸B¸q¸r¸r¸E¼ÑBñDßEHÂSÁUÄUñKˆõ 	�BœJ s§|¢|°B°q´E¸2¸b¼6À2ÀaÄ5È"ÈRÌ&Ñ'QÔ'QÑRÔRÝœJ tÑ,Ô,ñ	.ô 	.ð 	.ð 	.ð 	.s   ¾ABÂBÂBc           
      óØ  — g d¢}g d¢}g d¢}d}d|z   d|z
  g}d|z   d|z
  g}t          ¦   «         5 }|                     t          d¦  «        }t          |||||dd¬¦  «        }	t	          |¦  «        dk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   t           |	g g ¦  «        t          j        d	¦  «        ¦  «         t           |	g g d
¬¦  «        t          j        d¦  «        ¦  «         d S )Nr  r  r  r…   r$   r&   r  r  rÀ   F©Úgrid©r   )r   rý   rþ   r   r4   r   rf   r“   r  s
             r<   r_   z'TestLSQBivariateSpline.test_empty_inputà  sB  € ð  ÐÐˆØÐÐˆØÐÐˆØˆØ�‰c�!�A‘#ˆYˆØ�‰c�!�A‘#ˆYˆÝÑ Ô ð 	 CØ—
’
�;Ð(JÑKÔKˆAÝ$ Q¨¨1¨b°"¸¸qÐAÑAÔAˆCÝ�q‘6”6˜Q’;�;�;�;�;ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ
 	˜˜˜B ™œ¥R¤X¨e¡_¤_Ñ5Ô5Ð5Ý˜˜˜B ¨Ð/Ñ/Ô/µ´¸$±´Ñ@Ô@Ð@Ð@Ð@r  c           
      ój  — d}d|z   d|z
  g}d|z   d|z
  g}t          t          ¦  «        5 }t          j        dd¦  «        }t          j        dd¦  «        }t          j        ddd¬¦  «        }t	          |||||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          j        dd¦  «        }t          j        dd¦  «        }t          j        dd¦  «        }t          j        ddd	¬¦  «        }t	          ||||||¬
¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          j        dd¦  «        }t	          ||||||¬
¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }d}	t	          ||||||	¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t	          |||||dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }
t	          |||||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |
j        ¦  «        v sJ ‚t          t          ¦  «        5 }
t	          |||||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |
j        ¦  «        v sJ ‚d S )Nr…   r$   r&   rw   ç      $@r¤   ©Únumú%x, y, and z should have a same lengthé   rÝ   ú(x, y, z, and w should have a same lengthrv   úw should be positive©rì   r�   rì   r¦   úbbox shape should be (4,)r  ú;The length of x, y and z should be at least (kx+1) * (ky+1)rT   ©Úepsúeps should be between (0, 1))rš   r›   rf   r   r   râ   rã   )r7   r+   r  r  rå   r8   r9   rÏ   rƒ   r§   Úexc_infos              r<   Útest_invalid_inputz)TestLSQBivariateSpline.test_invalid_inputñ  sæ  € ØˆØ�!‰e�Q˜‘Uˆ^ˆØ�!‰e�Q˜‘Uˆ^ˆå�:Ñ&Ô&ð 	0¨$Ý”˜C Ñ&Ô&ˆAÝ”˜C Ñ&Ô&ˆAÝ”˜C ¨2Ð.Ñ.Ô.ˆAÝ˜q ! Q¨¨BÑ/Ô/Ð/ð		0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0ð
 7½#¸d¼j¹/¼/ÐIÐIÐIÐIå�:Ñ&Ô&ð 	5¨$Ý”˜C Ñ&Ô&ˆAÝ”˜C Ñ&Ô&ˆAÝ”˜C Ñ&Ô&ˆAÝ”˜C ¨2Ð.Ñ.Ô.ˆAÝ˜q ! Q¨¨B°!Ð4Ñ4Ô4Ð4ð	5ð 	5ð 	5ñ 	5ô 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5øøøð 	5ð 	5ð 	5ð 	5ð :½SÀÄ¹_¼_ÐLÐLÐLÐLå�:Ñ&Ô&ð 	5¨$Ý”˜D $Ñ'Ô'ˆAÝ˜q ! Q¨¨B°!Ð4Ñ4Ô4Ð4ð	5ð 	5ð 	5ñ 	5ô 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5øøøð 	5ð 	5ð 	5ð 	5ð &­¨T¬Z©¬Ð8Ð8Ð8Ð8å�:Ñ&Ô&ð 	;¨$Ø$ˆDÝ˜q ! Q¨¨B°TÐ:Ñ:Ô:Ð:ð	;ð 	;ð 	;ñ 	;ô 	;ð 	;ð 	;ð 	;ð 	;ð 	;ð 	;øøøð 	;ð 	;ð 	;ð 	;ð +­c°$´*©o¬oÐ=Ð=Ð=Ð=å�:Ñ&Ô&ð 	>¨$Ý˜q ! Q¨¨B°2¸"Ð=Ñ=Ô=Ð=ð	>ð 	>ð 	>ñ 	>ô 	>ð 	>ð 	>ð 	>ð 	>ð 	>ð 	>øøøð 	>ð 	>ð 	>ð 	>àLÝ�4”:‰Œðð ð ð õ �:Ñ&Ô&ð 	9¨(Ý˜q ! Q¨¨B°CÐ8Ñ8Ô8Ð8ð	9ð 	9ð 	9ñ 	9ô 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9øøøð 	9ð 	9ð 	9ð 	9à-µ°X´^Ñ1DÔ1DÐDÐDÐDÐDå�:Ñ&Ô&ð 	9¨(Ý˜q ! Q¨¨B°CÐ8Ñ8Ô8Ð8ð	9ð 	9ð 	9ñ 	9ô 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9øøøð 	9ð 	9ð 	9ð 	9à-µ°X´^Ñ1DÔ1DÐDÐDÐDÐDÐDÐDs   «ABÂBÂBÃA,D;Ä;D?ÅD?Å2+F)Æ)F-Æ0F-Ç HÈHÈHÈ;IÉI"É%I"ÊJ7Ê7J;Ê>J;Ë.LÌLÌLc           
      óv  — d}t          j        d|z   d|z
  g¦  «        }t          j        d|z   d|z
  g¦  «        }t          j        dd¦  «        }t          j        dd¦  «        }t          j        dd¦  «        }t          j        dd¦  «        }t          j        g d¢¦  «        }t          ¦   «         5 }	|	                     t
          d¦  «        }
t          |||||||¬¦  «        }t          |                     ¦   «         |                     ¦   «         |                     ¦   «         |                     ¦   «         |                     ¦   «         |                     ¦   «         |¬¦  «        }t           |d	d	¦  «         |d	d	¦  «        ¦  «         t          |
¦  «        d
k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr…   r$   r&   rw   r2  )rw   r2  rw   r2  r  )rƒ   r§   ro   r%   )
rf   r
   r   r   rý   rþ   r   rñ   r   r4   )r7   r+   r  r  r8   r9   rÏ   rƒ   r§   rÿ   r   rò   r³   s                r<   ró   z,TestLSQBivariateSpline.test_array_like_input  sÃ  € àˆÝŒX�q˜1‘u˜a !™e�nÑ%Ô%ˆÝŒX�q˜1‘u˜a !™e�nÑ%Ô%ˆÝŒK˜˜TÑ"Ô"ˆÝŒK˜˜TÑ"Ô"ˆÝŒK˜˜TÑ"Ô"ˆÝŒK˜˜TÑ"Ô"ˆÝŒxÐ.Ð.Ð.Ñ/Ô/ˆåÑ Ô ð 		 CØ—
’
�;Ð(JÑKÔKˆAå% a¨¨A¨r°2¸ÀÐFÑFÔFˆDå% a§h¢h¡j¤j°!·(²(±*´*¸a¿hºh¹j¼jØ&(§i¢i¡k¤k°2·9²9±;´;À!Ç(Â(Á*Ä*Ø+/ð1ñ 1ô 1ˆDõ ˜D˜D  c™NœN¨D¨D°°c©N¬NÑ;Ô;Ð;Ý�q‘6”6˜Q’;�;�;�;�;ð		ð 		ð 		ñ 		ô 		ð 		ð 		ð 		ð 		ð 		ð 		ð 		øøøð 		ð 		ð 		ð 		ð 		ð 		s   Â3C-F.Æ.F2Æ5F2c                 ó  — t           j        dd…dd…f         \  }}|                     ¦   «         }|                     ¦   «         }dt          j        |¦  «        z  }t          j        ddd¦  «        }t          j        ddd¦  «        }t          ¦   «         5 }|                     t          d¦  «        }t          |||||¦  «        }t          |¦  «        d	k    sJ ‚	 d
d
d
¦  «         n# 1 swxY w Y   t           |||d¬¦  «        |¦  «         d
S )zkTest for the case when the input knot-location arrays in x and y are
        of different lengths.
        r   r�   r  r…   g     €X@é   é!   r  r$   NFr.  )rf   ÚmgridÚravelrË   r   r   rý   rþ   r   r4   r   )	r7   r8   r9   rÏ   r  r  rÿ   r   r:   s	            r<   Útest_unequal_length_of_knotsz3TestLSQBivariateSpline.test_unequal_length_of_knots2  s7  € õ
 Œx˜˜#˜˜q ˜u˜Ô%‰ˆˆ1Ø�GŠG‰IŒIˆØ�GŠG‰IŒIˆØ•"”,˜q‘/”/Ñ!ˆÝŒ[˜˜d BÑ'Ô'ˆÝŒ[˜˜d BÑ'Ô'ˆÝÑ Ô ð 	 CØ—
’
�;Ð(JÑKÔKˆAÝ$ Q q¨¨2¨bÑ1Ô1ˆCÝ�q‘6”6˜Q’;�;�;�;�;ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ
 	˜C˜C  1¨5Ð1Ñ1Ô1°1Ñ5Ô5Ð5Ð5Ð5s   ÂAC&Ã&C*Ã-C*N)rM   rN   rO   r  r	  r
  r=   r&  r,  r_   r@  ró   rG  rP   r>   r<   r  r  ¡  sÜ   € € € € € à„[Ôð7ð 7ñ Ôð7ð<ð <ð <ð2 „[Ôð.ð .ñ Ôð.ð( „[ÔðAð Añ ÔðAð )Eð )Eð )EðV „[Ôðð ñ Ôðð* „[Ôð6ð 6ñ Ôð6ð 6ð 6r>   r  c                   óV   — e Zd Zd„ Zd„ Zej        j        d„ ¦   «         Zd„ Z	d„ Z
d„ ZdS )ÚTestSmoothBivariateSplinec                 ó|  — g d¢}g d¢}g d¢}t          |||dd¬¦  «        }|                     ¦   «         D ]}t          |g d¢¦  «         Œt          |                     ¦   «         g d¢¦  «         t	          |                     ¦   «         ¦  «        dk     sJ ‚t           |g d	¢dd
g¦  «        ddgddgddgg¦  «         d S )Nr  r  r  r$   r  )r$   r$   r&   r&   )r&   r&   r&   r&   r-   r)   r*   r&   )r   r0   r	   r1   r2   r3   ©r7   r8   r9   rÏ   r:   r5   s         r<   r=   z.TestSmoothBivariateSpline.test_linear_constantF  së   € ØÐÐˆØÐÐˆØÐÐˆÝ# A a¨¨Q°!Ð4Ñ4Ô4ˆØ—’‘”ð 	7ð 	7ˆAÝ% a¨¨¨Ñ6Ô6Ð6Ð6å! #§.¢.Ñ"2Ô"2°L°L°LÑAÔAÐAÝ�3×#Ò#Ñ%Ô%Ñ&Ô&¨Ò.Ð.Ð.Ð.Ý! # # k k k°A°s°8Ñ"<Ô"<ÀÀ1¸vÈÈ1ÀvÐPQÐSTÈvÐ>VÑWÔWÐWÐWÐWr>   c                 ó   — g d¢}g d¢}g d¢}t          |||dd¬¦  «        }|                     ¦   «         D ]&}t          |t          j        g d¢¦  «        ¦  «         Œ't          |                     ¦   «         g d¢¦  «         t          |                     ¦   «         ¦  «        dk     sJ ‚t           |g d	¢dd
g¦  «        ddgddgddgg¦  «         d S )Nr  r  )	r   r   r   r%   r%   r%   rA   rA   rA   r$   r  )rw   r$   r&   r&   )r   r   rA   rA   r-   r)   r*   r   r%   )	r   r0   r   rf   r  r	   r1   r2   r3   rK  s         r<   rG   z(TestSmoothBivariateSpline.test_linear_1dR  só   € ØÐÐˆØÐÐˆØÐÐˆÝ# A a¨¨Q°!Ð4Ñ4Ô4ˆØ—’‘”ð 	;ð 	;ˆAÝ˜A�rœz¨.¨.¨.Ñ9Ô9Ñ:Ô:Ð:Ð:Ý! #§.¢.Ñ"2Ô"2°L°L°LÑAÔAÐAÝ�3×#Ò#Ñ%Ô%Ñ&Ô&¨Ò.Ð.Ð.Ð.Ý! # # i i i°°3°Ñ"8Ô"8¸1¸Q¸%ÀÀ1ÀÀqÈÀeÐ9LÑMÔMÐMÐMÐMr>   c                 óî  — g d¢}g d¢}t          g d¢¦  «        }t          ¦   «         5 }|                     t          d¦  «         t	          |||ddd¬¦  «        }d d d ¦  «         n# 1 swxY w Y   g d¢}g d	¢} |||¦  «        }d
t          |¦  «        d d …d f         t          |¦  «        d d d …f         z  |d d…d d…f         |dd …d d…f         z   |d d…dd …f         z   |dd …dd …f         z   z                       ¦   «         z  }	t          t          j	        | 
                    |d         |d         |d         |d         ¦  «        ¦  «        t          j	        |	¦  «        ¦  «         t	          |||ddd¬¦  «        }
t          t          j	        |
 
                    |d         |d         |d         |d         ¦  «        ¦  «        t          j	        |	¦  «        d¬¦  «          ||d d…         |d d…         ¦  «        }d
t          |d d…         ¦  «        d d …d f         t          |d d…         ¦  «        d d d …f         z  |d d…d d…f         |dd …d d…f         z   |d d…dd …f         z   |dd …dd …f         z   z                       ¦   «         z  }	t          t          j	        | 
                    |d         |d         |d         |d         ¦  «        ¦  «        t          j	        |	¦  «        ¦  «         d S )N)	r$   r$   r$   r%   r%   r%   rA   rA   rA   r  r  z
The required storage spacer$   r   )r  r  r+   )r$   r%   rA   r#   r(  r,   r%   )ÚdecimalrÁ   )r
   r   r  rþ   r   r   r)  r   rf   r  r²   )r7   r8   r9   rÏ   rÿ   r:   r  r  r*  r+  Úlut2s              r<   r,  z'TestSmoothBivariateSpline.test_integral]  sf  € àÐÐˆØÐÐˆÝÐ%Ð%Ð%Ñ&Ô&ˆåÑ Ô ð 	B Cà�JŠJ•{Ð$BÑCÔCÐCÝ'¨¨1¨a°A¸!¸qÐAÑAÔAˆCð	Bð 	Bð 	Bñ 	Bô 	Bð 	Bð 	Bð 	Bð 	Bð 	Bð 	Bøøøð 	Bð 	Bð 	Bð 	Bð
 ˆWˆWˆØˆWˆWˆàˆS��R‰[Œ[ˆØ•D˜‘H”H˜Q˜Q˜Q˜t˜VÔ$¥T¨"¡X¤X¨d°1°1°1¨fÔ%5Ñ5Ø˜#˜2˜#˜c˜r˜c˜'”{ 2 a b b¨¨"¨ f¤:Ñ-¨b°°"°°Q°R°R°¬jÑ8¸¸A¸B¸B¸q¸r¸r¸E¼ÑBñDßEHÂSÁUÄUñKˆå�BœJ s§|¢|°B°q´E¸2¸b¼6À2ÀaÄ5È"ÈRÌ&Ñ'QÔ'QÑRÔRÝœJ tÑ,Ô,ñ	.ô 	.ð 	.õ % Q¨¨1°°q¸AÐ>Ñ>Ô>ˆÝ�BœJ t§}¢}°R¸´U¸B¸r¼FÀBÀqÄEÈ2ÈbÌ6Ñ'RÔ'RÑSÔSÝœJ tÑ,Ô,Ø$%ð	'ñ 	'ô 	'ð 	'ð ˆS��C�R�C”˜"˜S˜b˜Sœ'Ñ"Ô"ˆØ•D˜˜C˜R˜Cœ‘M”M ! ! ! D &Ô)­$¨r°#°2°#¬w©-¬-¸¸Q¸Q¸Q¸Ô*?Ñ?Ø˜#˜2˜#˜c˜r˜c˜'”{ 2 a b b¨¨"¨ f¤:Ñ-¨b°°"°°Q°R°R°¬jÑ8¸¸A¸B¸B¸q¸r¸r¸E¼ÑBñDßEHÂSÁUÄUñKˆå�BœJ s§|¢|°B°q´E¸2¸b¼6À2ÀaÄ5È"ÈRÌ&Ñ'QÔ'QÑRÔRÝœJ tÑ,Ô,ñ	.ô 	.ð 	.ð 	.ð 	.s   ¨1A%Á%A)Á,A)c                 ó^  — t          j        ddd¦  «        }t          j        ddd¦  «        }||z   }t          j        ddd¦  «        }t          j        ddd¦  «        }t          |||¦  «        }t          |||¦  «        }t	          |||¦  «        } |||¦  «        }	t          ||	¦  «         d S )NrÁ   r%   éP   r,   r$   r�   )rf   r   r   r   r   r   )
r7   r8   r9   rÏ   ÚxiÚyirr   Úres1Úinterp_Úres2s
             r<   Útest_rerun_lwrk2_too_smallz4TestSmoothBivariateSpline.test_rerun_lwrk2_too_small|  s±   € õ ŒK˜˜A˜rÑ"Ô"ˆÝŒK˜˜A˜rÑ"Ô"ˆØ�‰EˆÝŒ[˜˜Q Ñ$Ô$ˆÝŒ[˜˜Q Ñ$Ô$ˆÝ�q˜!˜QÑÔˆÝ�r˜2˜sÑ#Ô#ˆÝ'¨¨1¨aÑ0Ô0ˆØˆw�r˜2‰ŒˆÝ˜D $Ñ'Ô'Ð'Ð'Ð'r>   c                 óÐ  — t          t          ¦  «        5 }t          j        dd¦  «        }t          j        dd¦  «        }t          j        ddd¬¦  «        }t	          |||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          j        dd¦  «        }t          j        dd¦  «        }t          j        dd¦  «        }t          j        ddd¬¦  «        }t	          ||||¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          j        d	d¦  «        }t	          ||||¬¦  «         d d d ¦  «         n# 1 swxY w Y   d
t          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }d}t	          ||||¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t	          |||dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t	          |||d	¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t	          |||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t	          |||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚d S )Nrw   r2  r¤   r3  r5  r6  rÝ   r7  rv   r8  r9  r¦   r:  r  r;  re   rá   rT   r<  r>  )rš   r›   rf   r   r   râ   rã   )r7   rå   r8   r9   rÏ   rƒ   r§   r?  s           r<   r@  z,TestSmoothBivariateSpline.test_invalid_input‹  s3  € å�:Ñ&Ô&ð 	+¨$Ý”˜C Ñ&Ô&ˆAÝ”˜C Ñ&Ô&ˆAÝ”˜C ¨2Ð.Ñ.Ô.ˆAÝ! ! Q¨Ñ*Ô*Ð*ð		+ð 	+ð 	+ñ 	+ô 	+ð 	+ð 	+ð 	+ð 	+ð 	+ð 	+øøøð 	+ð 	+ð 	+ð 	+ð
 7½#¸d¼j¹/¼/ÐIÐIÐIÐIå�:Ñ&Ô&ð 	0¨$Ý”˜C Ñ&Ô&ˆAÝ”˜C Ñ&Ô&ˆAÝ”˜C Ñ&Ô&ˆAÝ”˜C ¨2Ð.Ñ.Ô.ˆAÝ! ! Q¨¨QÐ/Ñ/Ô/Ð/ð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0ð :½SÀÄ¹_¼_ÐLÐLÐLÐLå�:Ñ&Ô&ð 	0¨$Ý”˜D $Ñ'Ô'ˆAÝ! ! Q¨¨QÐ/Ñ/Ô/Ð/ð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0ð &­¨T¬Z©¬Ð8Ð8Ð8Ð8å�:Ñ&Ô&ð 	6¨$Ø$ˆDÝ! ! Q¨°Ð5Ñ5Ô5Ð5ð	6ð 	6ð 	6ñ 	6ô 	6ð 	6ð 	6ð 	6ð 	6ð 	6ð 	6øøøð 	6ð 	6ð 	6ð 	6ð +­c°$´*©o¬oÐ=Ð=Ð=Ð=å�:Ñ&Ô&ð 	9¨$Ý! ! Q¨¨b°RÐ8Ñ8Ô8Ð8ð	9ð 	9ð 	9ñ 	9ô 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9øøøð 	9ð 	9ð 	9ð 	9àLÝ�4”:‰Œðð ð ð õ �:Ñ&Ô&ð 	3¨$Ý! ! Q¨¨TÐ2Ñ2Ô2Ð2ð	3ð 	3ð 	3ñ 	3ô 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3øøøð 	3ð 	3ð 	3ð 	3à%­¨T¬Z©¬Ð8Ð8Ð8Ð8å�:Ñ&Ô&ð 	4¨(Ý! ! Q¨¨sÐ3Ñ3Ô3Ð3ð	4ð 	4ð 	4ñ 	4ô 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4øøøð 	4ð 	4ð 	4ð 	4à-µ°X´^Ñ1DÔ1DÐDÐDÐDÐDå�:Ñ&Ô&ð 	4¨(Ý! ! Q¨¨sÐ3Ñ3Ô3Ð3ð	4ð 	4ð 	4ñ 	4ô 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4øøøð 	4ð 	4ð 	4ð 	4à-µ°X´^Ñ1DÔ1DÐDÐDÐDÐDÐDÐDs‘   •AA4Á4A8Á;A8Â+A*D!Ä!D%Ä(D%Å)FÆFÆFÇG&Ç&G*Ç-G*ÈH>È>IÉIÉ5JÊJÊJËK,Ë,K0Ë3K0Ì#MÍMÍ
Mc           	      ó6  — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          |||||dd¬¦  «        }t          |                     ¦   «         |                     ¦   «         |                     ¦   «         |                     ¦   «         |                     ¦   «         dd¬¦  «        }t	           |d	d
¦  «         |d	d
¦  «        ¦  «         d S )Nr  r  r  )	r$   r$   r$   r$   r$   r$   r$   r$   r$   )rw   r  rw   r  r$   )rƒ   r§   r  r  )r§   rƒ   r  r  r…   r†   )rf   r
   r   rñ   r   )r7   r8   r9   rÏ   rƒ   r§   rò   r³   s           r<   ró   z/TestSmoothBivariateSpline.test_array_like_input·  s  € ÝŒHÐ0Ð0Ð0Ñ1Ô1ˆÝŒHÐ0Ð0Ð0Ñ1Ô1ˆÝŒHÐ0Ð0Ð0Ñ1Ô1ˆÝŒHÐ0Ð0Ð0Ñ1Ô1ˆÝŒxÐ,Ð,Ð,Ñ-Ô-ˆå$ Q¨¨1°¸ÀÀqÐIÑIÔIˆå$ Q§X¢X¡Z¤Z°·²±´¸Q¿XºX¹Z¼ZØ*.¯+ª+©-¬-¸1¿8º8¹:¼:Ø()¨að1ñ 1ô 1ˆõ 	˜˜˜S #™œ¨¨¨S°#©¬Ñ7Ô7Ð7Ð7Ð7r>   N)rM   rN   rO   r=   rG   r  r	  r
  r,  rW  r@  ró   rP   r>   r<   rI  rI  E  sŠ   € € € € € ð
Xð 
Xð 
Xð	Nð 	Nð 	Nð „[Ôð.ð .ñ Ôð.ð<(ð (ð (ð*Eð *Eð *EðX8ð 8ð 8ð 8ð 8r>   rI  c                   ó,   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestLSQSphereBivariateSplinec                 óL  — d\  }}t          d|dz
  z  dd|dz
  z  z
  |¦  «        t          z  }t          d|dz
  z  dd|dz
  z  z
  |¦  «        dz  t          z  }t          |j        d         |j        d         f¦  «        }|d d d…         }|d d d…         }|d d d…d d d…f         }t	          ||¦  «        \  }	}
t          |	                     ¦   «         |
                     ¦   «         |j                             ¦   «         ||¦  «        }|| _        || _	        ||c| _
        | _        d S )N©r­   éZ   r†   r$   ro   r   rS   )r   r   r   r   r   r   rF  ÚTÚlut_lsqÚdataÚnew_lonsÚnew_lats)r7   ÚnthetaÚnphiÚthetaÚphira  ÚknotstÚknotspÚknotdataÚlatsÚlonsr`  s               r<   Úsetup_methodz)TestLSQSphereBivariateSpline.setup_methodÇ  s(  € à‰ˆ�Ý˜˜f q™jÑ)¨1¨s°F¸Q±JÑ/?Ñ+?ÀÑHÔHÍ2ÑMˆÝ�s˜D 1™H‘~ q¨3°°q±©>Ñ'9¸4Ñ@Ô@À2ÑEÍÑJˆÝ�U”[ ”^ S¤Y¨q¤\Ð2Ñ3Ô3ˆà�s�s˜�s”ˆØ�S�S�q�S”ˆØ˜˜˜!˜˜S˜S˜q˜S˜”>ˆå˜e SÑ)Ô)‰
ˆˆdÝ*¨4¯:ª:©<¬<¸¿º¹¼Ø+/¬6¯<ª<©>¬>¸6À6ñKô KˆàˆŒØˆŒ	Ø'-¨vÐ$ˆŒ�t”}�}�}r>   c                 óÄ   — t          | j                             ¦   «         ¦  «        dk     sJ ‚t          |                      | j        | j        ¦  «        | j        ¦  «         d S )Nr-   )r2   r`  r3   r	   rc  rb  ra  ©r7   s    r<   r=   z1TestLSQSphereBivariateSpline.test_linear_constantÙ  s^   € Ý�4”<×,Ò,Ñ.Ô.Ñ/Ô/°%Ò7Ð7Ð7Ð7Ý! $§,¢,¨t¬}¸d¼mÑ"LÔ"LØ"&¤)ñ	-ô 	-ð 	-ð 	-ð 	-r>   c                 óâ   — t          |                      g g ¦  «        t          j        d¦  «        ¦  «         t          |                      g g d¬¦  «        t          j        d¦  «        ¦  «         d S ©NrÀ   Fr.  r0  )r	   r`  rf   r“   ro  s    r<   r_   z-TestLSQSphereBivariateSpline.test_empty_inputÞ  sX   € Ý! $§,¢,¨r°2Ñ"6Ô"6½¼À¹¼ÑHÔHÐHÝ! $§,¢,¨r°2¸E ,Ñ"BÔ"BÅBÄHÈTÁNÄNÑSÔSÐSÐSÐSr>   c           	      óf  — d\  }}t          d|dz
  z  dd|dz
  z  z
  |¦  «        t          z  }t          d|dz
  z  dd|dz
  z  z
  |¦  «        dz  t          z  }t          |j        d         |j        d         f¦  «        }|d d d…         }|d d d…         }t	          t
          ¦  «        5 }t          dd|¬	¦  «        t          z  }	t          |	|¦  «        \  }
}t          |
                     ¦   «         |                     ¦   «         |j	                             ¦   «         ||¦  «         d d d ¦  «         n# 1 swxY w Y   d
t          |j        ¦  «        v sJ ‚t	          t
          ¦  «        5 }t          dd|¬	¦  «        t          z  }	t          |	|¦  «        \  }
}t          |
                     ¦   «         |                     ¦   «         |j	                             ¦   «         ||¦  «         d d d ¦  «         n# 1 swxY w Y   d
t          |j        ¦  «        v sJ ‚t	          t
          ¦  «        5 }t          dd|¬	¦  «        dz  t          z  }t          ||¦  «        \  }}t          |                     ¦   «         |                     ¦   «         |j	                             ¦   «         ||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t	          t
          ¦  «        5 }t          dd|¬	¦  «        dz  t          z  }t          ||¦  «        \  }}t          |                     ¦   «         |                     ¦   «         |j	                             ¦   «         ||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          ||¦  «        \  }}t	          t
          ¦  «        5 }t          j        |¦  «        }d|d<   t          |                     ¦   «         |                     ¦   «         |j	                             ¦   «         ||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t	          t
          ¦  «        5 }t          j        |¦  «        }t          |d<   t          |                     ¦   «         |                     ¦   «         |j	                             ¦   «         ||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t	          t
          ¦  «        5 }t          j        |¦  «        }d|d<   t          |                     ¦   «         |                     ¦   «         |j	                             ¦   «         ||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t	          t
          ¦  «        5 }t          j        |¦  «        }dt          z  |d<   t          |                     ¦   «         |                     ¦   «         |j	                             ¦   «         ||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t	          t
          ¦  «        5 }t          g d¢¦  «        }t          |                     ¦   «         |                     ¦   «         |j	                             ¦   «         |||¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t	          t
          ¦  «        5 }t          |                     ¦   «         |                     ¦   «         |j	                             ¦   «         ||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t	          t
          ¦  «        5 }t          |                     ¦   «         |                     ¦   «         |j	                             ¦   «         ||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚d S )Nr]  r†   r$   ro   r   rS   çš™™™™™¹¿rw   r3  útheta should be between [0, pi]r…   çš™™™™™ñ?úphi should be between [0, 2pi]rT   ztt should be between (0, pi)ztp should be between (0, 2pi)r%   ©	rv   rw   r*   r†   rw   r*   r†   rw   rw   rÝ   r8  r<  r>  )r   r   r   r   rš   r›   r   r   rF  r_  râ   rã   rf   r˜   r
   )r7   rd  re  rf  rg  ra  rh  ri  r?  Úinvalid_thetaÚinvalid_latsrl  Úinvalid_phirk  Úinvalid_lonsÚinvalid_knotstÚinvalid_knotspÚ	invalid_ws                     r<   r@  z/TestLSQSphereBivariateSpline.test_invalid_inputâ  s†
  € Ø‰ˆ�Ý˜ ¨¡
Ñ+¨Q°¸À¹
Ñ1CÑ-CØñ!ô !Ý#%ñ&ˆå�s˜d Q™hÑ'¨¨S°D¸1±HÑ-=Ñ)=¸tÑDÔDÀrÑIÍBÑNˆÝ�U”[ ”^ S¤Y¨q¤\Ð2Ñ3Ô3ˆà�s�s˜�s”ˆØ�S�S�q�S”ˆå�:Ñ&Ô&ð 	E¨(Ý$ T¨3°FÐ;Ñ;Ô;½bÑ@ˆMÝ!)¨-¸Ñ!=Ô!=ÑˆL˜$Ý$ \×%7Ò%7Ñ%9Ô%9¸4¿:º:¹<¼<Ø%)¤V§\¢\¡^¤^°V¸VñEô Eð Eð	Eð 	Eð 	Eñ 	Eô 	Eð 	Eð 	Eð 	Eð 	Eð 	Eð 	Eøøøð 	Eð 	Eð 	Eð 	Eð
 1µC¸¼Ñ4GÔ4GÐGÐGÐGÐGå�:Ñ&Ô&ð 	E¨(Ý$ S¨#°6Ð:Ñ:Ô:½RÑ?ˆMÝ!)¨-¸Ñ!=Ô!=ÑˆL˜$Ý$ \×%7Ò%7Ñ%9Ô%9¸4¿:º:¹<¼<Ø%)¤V§\¢\¡^¤^°V¸VñEô Eð Eð	Eð 	Eð 	Eñ 	Eô 	Eð 	Eð 	Eð 	Eð 	Eð 	Eð 	Eøøøð 	Eð 	Eð 	Eð 	Eð
 1µC¸¼Ñ4GÔ4GÐGÐGÐGÐGå�:Ñ&Ô&ð 	E¨(Ý" 4¨°&Ð9Ñ9Ô9¸CÑ?Å"ÑDˆKÝ!)¨%°Ñ!=Ô!=ÑˆD�,Ý$ T§Z¢Z¡\¤\°<×3EÒ3EÑ3GÔ3GØ%)¤V§\¢\¡^¤^°V¸VñEô Eð Eð	Eð 	Eð 	Eñ 	Eô 	Eð 	Eð 	Eð 	Eð 	Eð 	Eð 	Eøøøð 	Eð 	Eð 	Eð 	Eð
 0µ3°x´~Ñ3FÔ3FÐFÐFÐFÐFå�:Ñ&Ô&ð 	E¨(Ý" 3¨°Ð8Ñ8Ô8¸3Ñ>ÅÑCˆKÝ!)¨%°Ñ!=Ô!=ÑˆD�,Ý$ T§Z¢Z¡\¤\°<×3EÒ3EÑ3GÔ3GØ%)¤V§\¢\¡^¤^°V¸VñEô Eð Eð	Eð 	Eð 	Eñ 	Eô 	Eð 	Eð 	Eð 	Eð 	Eð 	Eð 	Eøøøð 	Eð 	Eð 	Eð 	Eð
 0µ3°x´~Ñ3FÔ3FÐFÐFÐFÐFå˜e SÑ)Ô)‰
ˆˆdå�:Ñ&Ô&ð 	M¨(ÝœW V™_œ_ˆNØ $ˆN˜1ÑÝ$ T§Z¢Z¡\¤\°4·:²:±<´<Ø%)¤V§\¢\¡^¤^°^ÀVñMô Mð Mð	Mð 	Mð 	Mñ 	Mô 	Mð 	Mð 	Mð 	Mð 	Mð 	Mð 	Møøøð 	Mð 	Mð 	Mð 	Mð
 .µ°X´^Ñ1DÔ1DÐDÐDÐDÐDå�:Ñ&Ô&ð 	M¨(ÝœW V™_œ_ˆNÝ "ˆN˜1ÑÝ$ T§Z¢Z¡\¤\°4·:²:±<´<Ø%)¤V§\¢\¡^¤^°^ÀVñMô Mð Mð	Mð 	Mð 	Mñ 	Mô 	Mð 	Mð 	Mð 	Mð 	Mð 	Mð 	Møøøð 	Mð 	Mð 	Mð 	Mð
 .µ°X´^Ñ1DÔ1DÐDÐDÐDÐDå�:Ñ&Ô&ð 	M¨(ÝœW V™_œ_ˆNØ $ˆN˜1ÑÝ$ T§Z¢Z¡\¤\°4·:²:±<´<Ø%)¤V§\¢\¡^¤^°V¸^ñMô Mð Mð	Mð 	Mð 	Mñ 	Mô 	Mð 	Mð 	Mð 	Mð 	Mð 	Mð 	Møøøð 	Mð 	Mð 	Mð 	Mð
 /µ#°h´nÑ2EÔ2EÐEÐEÐEÐEå�:Ñ&Ô&ð 	M¨(ÝœW V™_œ_ˆNØ !¥B¡ˆN˜1ÑÝ$ T§Z¢Z¡\¤\°4·:²:±<´<Ø%)¤V§\¢\¡^¤^°V¸^ñMô Mð Mð	Mð 	Mð 	Mñ 	Mô 	Mð 	Mð 	Mð 	Mð 	Mð 	Mð 	Møøøð 	Mð 	Mð 	Mð 	Mð
 /µ#°h´nÑ2EÔ2EÐEÐEÐEÐEå�:Ñ&Ô&ð 	B¨(ÝÐLÐLÐLÑMÔMˆIÝ$ T§Z¢Z¡\¤\°4·:²:±<´<ÀÄÇÂÁÄØ%+¨V°yðBñ Bô Bð Bð	Bð 	Bð 	Bñ 	Bô 	Bð 	Bð 	Bð 	Bð 	Bð 	Bð 	Bøøøð 	Bð 	Bð 	Bð 	Bð &­¨X¬^Ñ)<Ô)<Ð<Ð<Ð<Ð<å�:Ñ&Ô&ð 	>¨(Ý$ T§Z¢Z¡\¤\°4·:²:±<´<ÀÄÇÂÁÄØ%+¨V¸ð>ñ >ô >ð >ð	>ð 	>ð 	>ñ 	>ô 	>ð 	>ð 	>ð 	>ð 	>ð 	>ð 	>øøøð 	>ð 	>ð 	>ð 	>ð .µ°X´^Ñ1DÔ1DÐDÐDÐDÐDå�:Ñ&Ô&ð 	>¨(Ý$ T§Z¢Z¡\¤\°4·:²:±<´<ÀÄÇÂÁÄØ%+¨V¸ð>ñ >ô >ð >ð	>ð 	>ð 	>ñ 	>ô 	>ð 	>ð 	>ð 	>ð 	>ð 	>ð 	>øøøð 	>ð 	>ð 	>ð 	>ð .µ°X´^Ñ1DÔ1DÐDÐDÐDÐDÐDÐDsÑ   Â*A<D2Ä2D6Ä9D6Å)A<G1Ç1G5Ç8G5È(A?J3Ê3J7Ê:J7Ë*A?M5Í5M9Í<M9Î?A(P3Ð3P7Ð:P7Ñ*A-S#Ó#S'Ó*S'ÔA(VÖVÖV×A0YÙYÙYÙ8A"[&Û&[*Û-[*ÜA]:Ý:]>Þ]>Þ1A`à`à`c           	      ó  — d\  }}t          d|dz
  z  dd|dz
  z  z
  |¦  «        t          z  }t          d|dz
  z  dd|dz
  z  z
  |¦  «        dz  t          z  }t          ||¦  «        \  }}t          |j        d         |j        d         f¦  «        }|d d d…         }|d d d…         }	t          |                     ¦   «         j        d         ¦  «        }
t          |                     ¦   «         |                     ¦   «         |j                             ¦   «         ||	|
¬¦  «        }t          |                     ¦   «                              ¦   «         |                     ¦   «                              ¦   «         |j                             ¦   «                              ¦   «         |                     ¦   «         |	                     ¦   «         |
                     ¦   «         ¬¦  «        }t           |dd¦  «         |dd¦  «        ¦  «         d S )	Nr]  r†   r$   ro   r   rS   rÝ   rw   )
r   r   r   r   r   rF  r   r_  rñ   r	   )r7   rd  re  rf  rg  rk  rl  ra  rh  ri  rƒ   rò   r³   s                r<   ró   z2TestLSQSphereBivariateSpline.test_array_like_input6  sÔ  € Ø‰ˆ�Ý˜ ¨¡
Ñ+¨Q°¸À¹
Ñ1CÑ-CØñ!ô !Ý#%ñ&ˆå�s˜d Q™hÑ'¨¨S°D¸1±HÑ-=Ñ)=Øñô Ø!ñ"Ý$&ñ'ˆå˜e SÑ)Ô)‰
ˆˆdÝ�U”[ ”^ S¤Y¨q¤\Ð2Ñ3Ô3ˆà�s�s˜�s”ˆØ�S�S�q�S”ˆÝ�—’‘”Ô# AÔ&Ñ'Ô'ˆõ (¨¯
ª
©¬°d·j²j±l´lØ(,¬¯ª©¬¸ÀÈ!ðMñ Mô Mˆõ (¨¯
ª
©¬×(;Ò(;Ñ(=Ô(=Ø(,¯
ª
©¬×(;Ò(;Ñ(=Ô(=Ø(,¬¯ª©¬×(=Ò(=Ñ(?Ô(?Ø(.¯ª©¬Ø(.¯ª©¬¸1¿8º8¹:¼:ð	Gñ Gô Gˆõ
 	" $ $ s¨C¡.¤.°$°$°s¸C±.´.ÑAÔAÐAÐAÐAr>   N©rM   rN   rO   rm  r=   r_   r@  ró   rP   r>   r<   r[  r[  Æ  sn   € € € € € ð6ð 6ð 6ð$-ð -ð -ð
Tð Tð TðREð REð REðhBð Bð Bð Bð Br>   r[  c                   ó,   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestSmoothSphereBivariateSplinec                 óÆ  — t          dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  g	¦  «        }t          dt          z  t          dt          z  dt          z  t          dt          z  dt          z  t          dt          z  g	¦  «        }t          g d¢¦  «        }t          |||d¬¦  «        | _        d S )Nr(  r†   ç      è?r*   r  ç    _ Bre   )r
   r   r   r:   )r7   rf  rg  r   s       r<   rm  z,TestSmoothSphereBivariateSpline.setup_methodP  s¼   € Ý�s�2‘v˜s¥2™v s­2¡v¨rµ"©u°b½±e¸RÅ¹UÀCÍÁFØ�2‘v˜s¥2™vð'ñ (ô (ˆå�R�"‘W�b #­¡(¨Bµ©GµR¸½r¹À2ÍÁ7ÍBØ�2‘Xðñ  ô  ˆåÐ-Ð-Ð-Ñ.Ô.ˆÝ.¨u°c¸1ÀÐEÑEÔEˆŒˆˆr>   c                 óÀ   — t          | j                             ¦   «         ¦  «        dk     sJ ‚t          |                      g d¢ddg¦  «        ddgddgddgg¦  «         d S )Nr-   r)   r$   r*   r&   )r2   r:   r3   r	   ro  s    r<   r=   z4TestSmoothSphereBivariateSpline.test_linear_constantX  ss   € Ý�4”8×(Ò(Ñ*Ô*Ñ+Ô+¨eÒ3Ð3Ð3Ð3Ý! $§(¢(¨;¨;¨;¸¸3°xÑ"@Ô"@Ø$% q 6¨A¨q¨6°A°q°6Ð":ñ	<ô 	<ð 	<ð 	<ð 	<r>   c                 óâ   — t          |                      g g ¦  «        t          j        d¦  «        ¦  «         t          |                      g g d¬¦  «        t          j        d¦  «        ¦  «         d S rq  )r	   r:   rf   r“   ro  s    r<   r_   z0TestSmoothSphereBivariateSpline.test_empty_input]  sX   € Ý! $§(¢(¨2¨rÑ"2Ô"2µB´H¸U±O´OÑDÔDÐDÝ! $§(¢(¨2¨r¸ (Ñ">Ô">ÅÄÈÁÄÑOÔOÐOÐOÐOr>   c                 ó
  — t          dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  g	¦  «        }t          dt          z  t          dt          z  dt          z  t          dt          z  dt          z  t          dt          z  g	¦  «        }t          g d¢¦  «        }t          t          ¦  «        5 }t          dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  g	¦  «        }t	          |||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   d	t          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  d
t          z  g	¦  «        }t	          |||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   d	t          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          dt          z  t          dt          z  dt          z  t          dt          z  dt          z  t          dt          z  g	¦  «        }t	          |||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          dt          z  t          dt          z  dt          z  t          dt          z  dt          z  t          dt          z  g	¦  «        }t	          |||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          g d¢¦  «        }t	          ||||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t	          |||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t	          |||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t	          |||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚d S )Nr(  r†   r„  r*   r  rs  r…  re   rt  ru  rv  rw   gÍÌÌÌÌÌ @rw  ©rƒ   r+   r8  rv   ús should be positiver<  r>  )r
   r   rš   r›   r   râ   rã   )r7   rf  rg  r   r?  rx  rz  r~  s           r<   r@  z2TestSmoothSphereBivariateSpline.test_invalid_inputa  sà  € Ý�s�R‘x ¥r¡¨3µ©8°R½"±W¸bÅ2¹gÀrÍBÁwØ�R‘x ¥r¡¨3µ©8ð5ñ 6ô 6ˆå�R�"‘W�b #­¡(¨Bµ©GµR¸½r¹À2ÍÁ7ÍBØ�2‘Xðñ  ô  ˆåÐ-Ð-Ð-Ñ.Ô.ˆå�:Ñ&Ô&ð 	G¨(Ý! 4­"¡9¨cµB©h¸½b¹À"ÅrÁ'Ø#%­¡7¨Bµ©G°S½2±X¸sÅR¹xØ#&­¡8ð#-ñ .ô .ˆMõ (¨°s¸AÀÐFÑFÔFÐFð		Gð 	Gð 	Gñ 	Gô 	Gð 	Gð 	Gð 	Gð 	Gð 	Gð 	Gøøøð 	Gð 	Gð 	Gð 	Gð
 1µC¸¼Ñ4GÔ4GÐGÐGÐGÐGå�:Ñ&Ô&ð 	G¨(Ý! 3­¡8¨Sµ2©X°s½R±xÀÅbÁØ#%­¡7¨Bµ©G°S½2±X¸sÅR¹xØ#&­¡8ð#-ñ .ô .ˆMõ (¨°s¸AÀÐFÑFÔFÐFð		Gð 	Gð 	Gñ 	Gô 	Gð 	Gð 	Gð 	Gð 	Gð 	Gð 	Gøøøð 	Gð 	Gð 	Gð 	Gð
 1µC¸¼Ñ4GÔ4GÐGÐGÐGÐGå�:Ñ&Ô&ð 	G¨(Ý ¥r¡­2¨sµR©x¸½b¹Å"ÀcÍBÁhØ!#¥b¡­"¨cµB©hð!8ñ 9ô 9ˆKå'¨¨{¸AÀÐFÑFÔFÐFð	Gð 	Gð 	Gñ 	Gô 	Gð 	Gð 	Gð 	Gð 	Gð 	Gð 	Gøøøð 	Gð 	Gð 	Gð 	Gð 0µ3°x´~Ñ3FÔ3FÐFÐFÐFÐFå�:Ñ&Ô&ð 	G¨(Ý ¥r¡­2¨sµR©x¸½b¹Å"ÀcÍBÁhØ!#¥b¡­"¨cµB©hð!8ñ 9ô 9ˆKå'¨¨{¸AÀÐFÑFÔFÐFð	Gð 	Gð 	Gñ 	Gô 	Gð 	Gð 	Gð 	Gð 	Gð 	Gð 	Gøøøð 	Gð 	Gð 	Gð 	Gð 0µ3°x´~Ñ3FÔ3FÐFÐFÐFÐFå�:Ñ&Ô&ð 	L¨(ÝÐLÐLÐLÑMÔMˆIÝ'¨¨s°A¸ÀdÐKÑKÔKÐKð	Lð 	Lð 	Lñ 	Lô 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Løøøð 	Lð 	Lð 	Lð 	Lð &­¨X¬^Ñ)<Ô)<Ð<Ð<Ð<Ð<å�:Ñ&Ô&ð 	?¨(Ý'¨¨s°A¸Ð>Ñ>Ô>Ð>ð	?ð 	?ð 	?ñ 	?ô 	?ð 	?ð 	?ð 	?ð 	?ð 	?ð 	?øøøð 	?ð 	?ð 	?ð 	?à%­¨X¬^Ñ)<Ô)<Ð<Ð<Ð<Ð<å�:Ñ&Ô&ð 	A¨(Ý'¨¨s°A¸4Ð@Ñ@Ô@Ð@ð	Að 	Að 	Añ 	Aô 	Að 	Að 	Að 	Að 	Að 	Að 	Aøøøð 	Að 	Að 	Að 	Aà-µ°X´^Ñ1DÔ1DÐDÐDÐDÐDå�:Ñ&Ô&ð 	@¨(Ý'¨¨s°A¸3Ð?Ñ?Ô?Ð?ð	@ð 	@ð 	@ñ 	@ô 	@ð 	@ð 	@ð 	@ð 	@ð 	@ð 	@øøøð 	@ð 	@ð 	@ð 	@à-µ°X´^Ñ1DÔ1DÐDÐDÐDÐDÐDÐDs”   ÃA4EÅE!Å$E!ÆA4HÈHÈHÉA+KËKË	KË9A+M0Í0M4Í7M4Î'&OÏOÏ OÐP0Ð0P4Ð7P4Ñ'RÒRÒRÒ>SÓS"Ó%S"c                 ó  — t          j        dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  dt          z  g	¦  «        }t          j        dt          z  t          dt          z  dt          z  t          dt          z  dt          z  t          dt          z  g	¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          ||||d¬¦  «        }t          |                     ¦   «         |                     ¦   «         |                     ¦   «         |                     ¦   «         d¬¦  «        }t           |d	d	¦  «         |d	d	¦  «        ¦  «         d S )
Nr(  r†   r„  r*   r  )	rw   rw   rw   rw   rw   rw   rw   rw   rw   r…  r‰  rw   )rf   r
   r   r   rñ   r	   )r7   rf  rg  r   rƒ   rò   r³   s          r<   ró   z5TestSmoothSphereBivariateSpline.test_array_like_input“  sG  € Ý”˜#¥™( C­"¡H¨cµB©h¸½R¹ÀÅbÁØ�r™' 3­¡8¨Sµ2©X°s½R±xðAñ Bô BˆåŒh˜�R™¥ S­2¡X¨rµB©w½¸CÅ"¹HÀbÍ2ÁgÝ˜C¥"™Hð&ñ 'ô 'ˆåŒHÐ0Ð0Ð0Ñ1Ô1ˆÝŒHÐBÐBÐBÑCÔCˆõ +¨5°#°q¸AÀÐFÑFÔFˆõ +¨5¯<ª<©>¬>¸3¿:º:¹<¼<Ø+,¯8ª8©:¬:¸¿º¹¼ÀtðMñ Mô Mˆå! $ $ s¨C¡.¤.°$°$°s¸C±.´.ÑAÔAÐAÐAÐAr>   Nr€  rP   r>   r<   r‚  r‚  O  sn   € € € € € ðFð Fð Fð<ð <ð <ð
Pð Pð Pð0Eð 0Eð 0EðdBð Bð Bð Bð Br>   r‚  c                   óP   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ ZdS )ÚTestRectBivariateSplinec                 óÜ   — t          g d¢¦  «        }t          g d¢¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        }t          |||¦  «        }t           |||¦  «        |¦  «         d S )NrR   ©r$   r%   r$   r%   r$   ©r$   r%   r&   r%   r$   ©r$   r%   r%   r%   r$   ©r
   r   r	   ©r7   r8   r9   rÏ   r:   s        r<   Útest_defaultsz%TestRectBivariateSpline.test_defaults¥  s�   € Ý�+�+�+ÑÔˆÝ�+�+�+ÑÔˆÝ�;�;�;˜{˜{˜{¨;¨;¨;°{°{°{À;À;À;ÐOÑPÔPˆÝ! ! A aÑ(Ô(ˆÝ! # # a¨¡(¤(¨1Ñ-Ô-Ð-Ð-Ð-r>   c                 óX  ‡— t          g d¢¦  «        }t          g d¢¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        }t          |||¦  «        Šg d¢}g d¢}‰                     ||¦  «        }t          ˆfd„t          ||¦  «        D ¦   «         ¦  «        }t	          ||¦  «         d S )NrR   r�  r�  r‘  )r$   çffffff@g333333@r†   çffffff
@ç333333ó?r&   )r$   r—  r˜  r�   g      @rw   r&   c                 ó:   •— g | ]\  }} ‰||¦  «        d          ‘ŒS ©rÀ   rP   ©Ú.0r�   r$  r:   s      €r<   ú
<listcomp>z9TestRectBivariateSpline.test_evaluate.<locals>.<listcomp>µ  ó,   ø€ Ð@Ð@Ð@©&¨"¨b�S�S˜˜R‘[”[ Ô%Ð@Ð@Ð@r>   )r
   r   Úevr  r   )	r7   r8   r9   rÏ   rR  rS  ÚziÚzi2r:   s	           @r<   Útest_evaluatez%TestRectBivariateSpline.test_evaluate¬  sÉ   ø€ Ý�+�+�+ÑÔˆÝ�+�+�+ÑÔˆÝ�;�;�;˜{˜{˜{¨;¨;¨;°{°{°{À;À;À;ÐOÑPÔPˆÝ! ! A aÑ(Ô(ˆà,Ð,Ð,ˆØ,Ð,Ð,ˆØ�VŠV�B˜‰^Œ^ˆÝÐ@Ð@Ð@Ð@µC¸¸B±K´KÐ@Ñ@Ô@ÑAÔAˆå˜B Ñ$Ô$Ð$Ð$Ð$r>   c                 ó  — t          g d¢¦  «        }t          g d¢¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        d	z  }t          g d
¢g d
¢g d¢g d¢g d
¢g¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        d	z  }t          |||¦  «        }t           |||d¬¦  «        |¦  «         t           |||d¬¦  «        |¦  «         t           |||dd¬¦  «        |¦  «         d S )NrR   r�  r�  r‘  ©r   r   iìÿÿÿr   r   ©r   r   rŽ   r   r   ©r   r   rA   r   r   ©r   r   iõÿÿÿr   r   rp   ©rA   r,   r   r$   éüÿÿÿ©r   r*   r   g      ø¿r   ©r%   r(  r   ç      Ð¿rÁ   ©é(   içÿÿÿr   é   iØÿÿÿ©iæÿÿÿg     @0@r   g     @0Àé   ©r�   rS   r   éûÿÿÿrn   ©é   g     €+Àr   g     €+@iêÿÿÿr$   ©Údx©Údy)r·  r¹  r’  ©r7   r8   r9   rÏ   r·  r¹  Údxdyr:   s           r<   Útest_derivatives_gridz-TestRectBivariateSpline.test_derivatives_grid¹  s�  € Ý�+�+�+ÑÔˆÝ�+�+�+ÑÔˆÝ�;�;�;˜{˜{˜{¨;¨;¨;°{°{°{À;À;À;ÐOÑPÔPˆÝ�M�M�M , , ,¨{¨{¨{ØˆMˆM˜+˜+˜+ð'ñ (ô (Ø(*ñ+ˆå�M�M�M - - -Ð0@Ð0@Ð0@ØÐÐ˜m˜m˜mð-ñ .ô .ˆåÐ'Ð'Ð'Ð(?Ð(?Ð(?ØˆMˆMÐ1Ð1Ð1°-°-°-ðAñ Bô BØBDñEˆå! ! A aÑ(Ô(ˆÝ! # # a¨¨Q -¡-¤-°Ñ3Ô3Ð3Ý! # # a¨¨Q -¡-¤-°Ñ3Ô3Ð3Ý! # # a¨¨Q°!Ð"4Ñ"4Ô"4°TÑ:Ô:Ð:Ð:Ð:r>   c           	      óÄ  — t          g d¢¦  «        }t          g d¢¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        }t          g d¢¦  «        }t          g d¢¦  «        }t          g d¢¦  «        dz  }t          |||¦  «        }t           |||d	d
¬¦  «        |¦  «         t           |||d	d
¬¦  «        |¦  «         t           |||d	d	d
¬¦  «        |¦  «         d S )NrR   r�  r�  r‘  ©r   r   gUUUUUUå?r   r   ©rA   r,   r   r¬  r©  ©é    éA   r   é7   é    ç      8@r$   F)r·  r/  )r¹  r/  ©r·  r¹  r/  r’  rº  s           r<   rl   z(TestRectBivariateSpline.test_derivativesÈ  s  € Ý�+�+�+ÑÔˆÝ�+�+�+ÑÔˆÝ�;�;�;˜{˜{˜{¨;¨;¨;°{°{°{À;À;À;ÐOÑPÔPˆÝ�>�>�>Ñ"Ô"ˆÝÐ#Ð#Ð#Ñ$Ô$ˆÝÐ%Ð%Ð%Ñ&Ô& sÑ*ˆÝ! ! A aÑ(Ô(ˆÝ! # # a¨¨Q°EÐ":Ñ":Ô":¸2Ñ>Ô>Ð>Ý! # # a¨¨Q°EÐ":Ñ":Ô":¸2Ñ>Ô>Ð>Ý! # # a¨¨Q°!¸Ð"?Ñ"?Ô"?ÀÑEÔEÐEÐEÐEr>   c                 ó|  — t          g d¢¦  «        }t          g d¢¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        d	z  }t          g d
¢g d
¢g d¢g d¢g d
¢g¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        d	z  }t          |||¦  «        }t           |                     dd¦  «        ||¦  «        |¦  «         t           |                     dd¦  «        ||¦  «        |¦  «         t           |                     dd¦  «        ||¦  «        |¦  «         d S )NrR   r�  r�  r‘  r¤  r¥  r¦  r§  rp   r¨  rª  r«  r­  r°  r²  r´  r$   r   ©r
   r   r	   Úpartial_derivativerº  s           r<   Ú#test_partial_derivative_method_gridz;TestRectBivariateSpline.test_partial_derivative_method_gridÔ  sÓ  € Ý�/�/�/Ñ"Ô"ˆÝ�/�/�/Ñ"Ô"ˆÝ�?�?�?Ø"�?�?Ø"�?�?Ø"�?�?Ø"�?�?ð	$ñ %ô %ˆõ
 Ð%Ð%Ð%Ø$Ð$Ð$Ø#�O�OØ%Ð%Ð%Ø#�O�Oð	%ñ &ô &ð )+ñ	+ˆõ
 Ð%Ð%Ð%Ø%Ð%Ð%Ø(Ð(Ð(Ø)Ð)Ð)Ø%Ð%Ð%ð	'ñ (ô (ˆõ
 Ð+Ð+Ð+Ø1Ð1Ð1Ø'Ð'Ð'Ø1Ð1Ð1Ø'Ð'Ð'ð	)ñ *ô *ð -/ñ	/ˆõ
 " ! Q¨Ñ*Ô*ˆÝ!Ð"> #×"8Ò"8¸¸AÑ">Ô">¸qÀ!Ñ"DÔ"DÀbÑIÔIÐIÝ!Ð"> #×"8Ò"8¸¸AÑ">Ô">¸qÀ!Ñ"DÔ"DÀbÑIÔIÐIÝ!Ð"> #×"8Ò"8¸¸AÑ">Ô">¸qÀ!Ñ"DÔ"DÀdÑKÔKÐKÐKÐKr>   c                 ó4  — t          g d¢¦  «        }t          g d¢¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        }t          g d¢¦  «        }t          g d¢¦  «        }t          g d¢¦  «        dz  }t          |||¦  «        }t           |                     d	d
¦  «        ||d¬¦  «        |¦  «         t           |                     d
d	¦  «        ||d¬¦  «        |¦  «         t           |                     d	d	¦  «        ||d¬¦  «        |¦  «         d S )NrR   r�  r�  r‘  r¾  r¿  rÀ  rÅ  r$   r   Fr.  rÈ  rº  s           r<   Útest_partial_derivative_methodz6TestRectBivariateSpline.test_partial_derivative_methodð  s…  € Ý�/�/�/Ñ"Ô"ˆÝ�/�/�/Ñ"Ô"ˆÝ�?�?�?Ø"�?�?Ø"�?�?Ø"�?�?Ø"�?�?ð	$ñ %ô %ˆõ
 Ð%Ð%Ð%Ñ&Ô&ˆÝÐ'Ð'Ð'Ñ(Ô(ˆÝÐ)Ð)Ð)Ñ*Ô*¨SÑ0ˆÝ! ! Q¨Ñ*Ô*ˆÝ!Ð"> #×"8Ò"8¸¸AÑ">Ô">¸qÀ!ØDIð#Kñ #Kô #Kà"$ñ	&ô 	&ð 	&õ 	"Ð"> #×"8Ò"8¸¸AÑ">Ô">¸qÀ!ØDIð#Kñ #Kô #Kà"$ñ	&ô 	&ð 	&õ 	"Ð"> #×"8Ò"8¸¸AÑ">Ô">¸qÀ!ØDIð#Kñ #Kô #Kà"&ñ	(ô 	(ð 	(ð 	(ð 	(r>   c                 ó<  — t          g d¢t          ¬¦  «        }|                     ¦   «         }t          |j        |j        f¦  «        }t          |||¦  «        }t          t          ¦  «        5  |                     dd¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)r   r$   r%   r&   rA   r‹   rA   r$   )	r
   r—   r˜   r   Úsizer   rš   r›   rÉ  r“  s        r<   Ú'test_partial_derivative_order_too_largez?TestRectBivariateSpline.test_partial_derivative_order_too_large  sÔ   € Ý�/�/�/­Ð/Ñ/Ô/ˆØ�FŠF‰HŒHˆÝ�!”&˜!œ&Ð!Ñ"Ô"ˆÝ! ! Q¨Ñ*Ô*ˆÝ�:Ñ&Ô&ð 	)ð 	)Ø×"Ò" 1 aÑ(Ô(Ð(ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)ð 	)ð 	)s   Á-BÂBÂBc           
      ó  — t          g d¢¦  «        }t          g d¢¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        }t          |||¦  «        }t           |||¦  «         ||d d …d f         |d d d …f         d¬¦  «        ¦  «         d S )NrR   r�  r�  r‘  Fr.  )r
   r   r   r“  s        r<   Útest_broadcastz&TestRectBivariateSpline.test_broadcast  sª   € Ý�+�+�+ÑÔˆÝ�+�+�+ÑÔˆÝ�;�;�;˜{˜{˜{¨;¨;¨;°{°{°{À;À;À;ÐOÑPÔPˆÝ! ! A aÑ(Ô(ˆÝ˜˜˜A˜q™	œ	 3 3 q¨¨¨¨4¨¤y°!°D¸¸¸°F´)À%Ð#HÑ#HÔ#HÑIÔIÐIÐIÐIr>   c           	      óˆ  — t          t          ¦  «        5 }t          g d¢¦  «        }t          g d¢¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        }t          |||¦  «         d d d ¦  «         n# 1 swxY w Y   dt	          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          g d¢¦  «        }t          g d¢¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        }t          |||¦  «         d d d ¦  «         n# 1 swxY w Y   dt	          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          g d¢¦  «        }t          g d¢¦  «        }t          g d¢g d¢g d¢g d¢g¦  «        }t          |||¦  «         d d d ¦  «         n# 1 swxY w Y   d	t	          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          g d¢¦  «        }t          g d¢¦  «        }t          g d
¢g d
¢g d¢g d¢g d
¢g¦  «        }t          |||¦  «         d d d ¦  «         n# 1 swxY w Y   dt	          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          g d¢¦  «        }t          g d¢¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        }d}t          ||||¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt	          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          |||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt	          |j        ¦  «        v sJ ‚d S )N)r·   r%   r&   rA   rS   rR   r�  r�  r‘  úx must be strictly increasing)r%   r%   r&   rA   rS   úy must be strictly increasingz7x dimension of z must have same number of elements as x)r$   r%   r$   r%   )r$   r%   r&   r%   )r$   r%   r%   r%   z7y dimension of z must have same number of elements as yr9  r¦   r:  rv   re   rá   )rš   r›   r
   r   râ   rã   )r7   rå   r8   r9   rÏ   r§   s         r<   r@  z*TestRectBivariateSpline.test_invalid_input  s  € å�:Ñ&Ô&ð 	)¨$Ý�o�o�oÑ&Ô&ˆAÝ�o�o�oÑ&Ô&ˆAÝ���¨¨¨¸¸¸Ø&��¨¨¨ð9ñ :ô :ˆAå  1 aÑ(Ô(Ð(ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)ð /µ#°d´j±/´/ÐAÐAÐAÐAå�:Ñ&Ô&ð 	)¨$Ý�o�o�oÑ&Ô&ˆAÝ�o�o�oÑ&Ô&ˆAÝ���¨¨¨¸¸¸Ø&��¨¨¨ð9ñ :ô :ˆAå  1 aÑ(Ô(Ð(ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)ð /µ#°d´j±/´/ÐAÐAÐAÐAå�:Ñ&Ô&ð 	)¨$Ý�o�o�oÑ&Ô&ˆAÝ�o�o�oÑ&Ô&ˆAÝ���¨¨¨¸¸¸Ø&��ð(ñ )ô )ˆAå  1 aÑ(Ô(Ð(ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)ð IÝ�d”j‘/”/ð"ð "ð "ð "õ �:Ñ&Ô&ð 	)¨$Ý�o�o�oÑ&Ô&ˆAÝ�o�o�oÑ&Ô&ˆAÝ�|�|�| \ \ \°<°<°<Ø#�|�| \ \ \ð3ñ 4ô 4ˆAå  1 aÑ(Ô(Ð(ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)ð IÝ�d”j‘/”/ð"ð "ð "ð "õ �:Ñ&Ô&ð 	4¨$Ý�o�o�oÑ&Ô&ˆAÝ�o�o�oÑ&Ô&ˆAÝ���¨¨¨¸¸¸Ø&��¨¨¨ð9ñ :ô :ˆAà$ˆDÝ  1 a¨dÐ3Ñ3Ô3Ð3ð	4ð 	4ð 	4ñ 	4ô 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4øøøð 	4ð 	4ð 	4ð 	4ð +­c°$´*©o¬oÐ=Ð=Ð=Ð=å�:Ñ&Ô&ð 	1¨$Ý  1 a¨4Ð0Ñ0Ô0Ð0ð	1ð 	1ð 	1ñ 	1ô 	1ð 	1ð 	1ð 	1ð 	1ð 	1ð 	1øøøð 	1ð 	1ð 	1ð 	1à%­¨T¬Z©¬Ð8Ð8Ð8Ð8Ð8Ð8sp   •AA3Á3A7Á:A7Â*ADÄDÄDÄ?AFÆFÆ!FÇAH/È/H3È6H3É&AKËKËKË?LÌL#Ì&L#c                 óÌ  — t          g d¢¦  «        }t          g d¢¦  «        }t          g d¢g d¢g d¢g d¢g d¢g¦  «        }t          g d¢¦  «        }t          ||||¬¦  «        }t          |                     ¦   «         |                     ¦   «         |                     ¦   «         |                     ¦   «         ¬¦  «        }t           |dd¦  «         |dd¦  «        ¦  «         d S )NrR   r�  r�  r‘  )r$   rS   r$   rS   r¦   rw   )r
   r   rñ   r	   )r7   r8   r9   rÏ   r§   rò   r³   s          r<   ró   z-TestRectBivariateSpline.test_array_like_inputF  så   € Ý�/�/�/Ñ"Ô"ˆÝ�/�/�/Ñ"Ô"ˆÝ�?�?�? O O O°_°_°_Ø"�?�? O O Oð5ñ 6ô 6ˆå�\�\�\Ñ"Ô"ˆå" 1 a¨°Ð6Ñ6Ô6ˆÝ" 1§8¢8¡:¤:¨q¯xªx©z¬z¸1¿8º8¹:¼:Ø(,¯ª©¬ð7ñ 7ô 7ˆå! $ $ s¨C¡.¤.°$°$°s¸C±.´.ÑAÔAÐAÐAÐAr>   c                 ód  — d}t           j                             dt           j        |¦  «        }t           j                             ddt           j        z  |¦  «        }t          j        |¦  «        }t          |||d¬¦  «        }d}d}t          j        |¦  «        |z  t           j        z  }t          j        |¦  «        |z  dz  t           j        z  }	 |||	¦  «         |                     ¦   «         }
d|
d<   t          t          ¦  «        5 } ||
|	¦  «         d d d ¦  «         n# 1 swxY w Y   d	t          |j        ¦  «        v sJ ‚|	                     ¦   «         }d|d<   t          t          ¦  «        5 } |||¦  «         d d d ¦  «         n# 1 swxY w Y   d
t          |j        ¦  «        v sJ ‚d S )Nr6  r   r%   rj   re   r·   r&   çü©ñÒMbP?rÓ  rÔ  )rf   ÚrandomÚuniformr   r   r   rq   r˜   rš   r›   râ   rã   )r7   ÚNSampÚThetaÚPhiÚDataÚInterpolatorÚNLonÚNLatÚGridPosLatsÚGridPosLonsÚnonGridPosLatsr?  ÚnonGridPosLonss                r<   Útest_not_increasing_inputz1TestRectBivariateSpline.test_not_increasing_inputR  s  € àˆÝ”	×!Ò! !¥R¤U¨EÑ2Ô2ˆÝŒi×Ò  1¥r¤u¡9¨eÑ4Ô4ˆÝŒw�u‰~Œ~ˆå2°5¸#¸tÀsÐKÑKÔKˆàˆØˆÝ”i ‘o”o¨Ñ,­r¬uÑ4ˆÝ”i ‘o”o¨Ñ,¨qÑ0µ2´5Ñ8ˆð 	ˆ�[ +Ñ.Ô.Ð.à$×)Ò)Ñ+Ô+ˆØ!ˆ�qÑÝ�:Ñ&Ô&ð 	6¨(ØˆL˜¨Ñ5Ô5Ð5ð	6ð 	6ð 	6ñ 	6ô 	6ð 	6ð 	6ð 	6ð 	6ð 	6ð 	6øøøð 	6ð 	6ð 	6ð 	6à.µ#°h´nÑ2EÔ2EÐEÐEÐEÐEà$×)Ò)Ñ+Ô+ˆØ!ˆ�qÑÝ�:Ñ&Ô&ð 	6¨(ØˆL˜ nÑ5Ô5Ð5ð	6ð 	6ð 	6ñ 	6ô 	6ð 	6ð 	6ð 	6ð 	6ð 	6ð 	6øøøð 	6ð 	6ð 	6ð 	6à.µ#°h´nÑ2EÔ2EÐEÐEÐEÐEÐEÐEs$   ÄD$Ä$D(Ä+D(Å4FÆFÆFN)rM   rN   rO   r”  r¢  r¼  rl   rÊ  rÌ  rÏ  rÑ  r@  ró   rå  rP   r>   r<   r�  r�  ¤  sË   € € € € € ð.ð .ð .ð%ð %ð %ð;ð ;ð ;ð
Fð 
Fð 
FðLð Lð Lð8(ð (ð (ð,)ð )ð )ðJð Jð Jð/9ð /9ð /9ðb
Bð 
Bð 
BðFð Fð Fð Fð Fr>   r�  c                   óD   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
S )ÚTestRectSphereBivariateSplinec           
      ó  — t          ddt          z  dz
  d¦  «        }t          dt          dz
  d¦  «        }t          g d¢g d¢g d¢g d¢g d¢g d¢g d¢g¦  «        }t          |||¦  «        }t	           |||¦  «        |¦  «         d S ©Nç{®Gáz„?r%   rY   ©r$   r%   r$   r%   r$   r%   r$   ©r$   r%   r&   r%   r$   r%   r$   ©r$   r%   r%   r%   r$   r%   r$   )r   r   r
   r   r	   ©r7   r9   r8   rÏ   r:   s        r<   r”  z+TestRectSphereBivariateSpline.test_defaultsq  s£   € Ý�T˜1�R™4 ™9 aÑ(Ô(ˆÝ�T�2˜d™7 AÑ&Ô&ˆÝ�?�?�? ? ? ?°?°?°?Ø"�?�? ? ? ?°?°?°?Ø"�?�?ð$ñ %ô %ˆõ (¨¨!¨AÑ.Ô.ˆÝ! # # a¨¡(¤(¨1Ñ-Ô-Ð-Ð-Ð-r>   c           
      óŠ  ‡— t          ddt          z  dz
  d¦  «        }t          dt          dz
  d¦  «        }t          g d¢g d¢g d¢g d¢g d¢g d¢g d¢g¦  «        }t          |||¦  «        Šg d¢}g d¢}‰                     ||¦  «        }t          ˆfd	„t          ||¦  «        D ¦   «         ¦  «        }t          ||¦  «         d S )
Nrê  r%   rY   rë  rì  rí  )r¯   r$   r–  gÍÌÌÌÌÌ@r  gìQ¸…ë@g      @)r*   r  ru  gÍÌÌÌÌÌÜ?gj¼t“Î?rw   ç-Cëâ6?c                 ó:   •— g | ]\  }} ‰||¦  «        d          ‘ŒS rš  rP   r›  s      €r<   r�  z?TestRectSphereBivariateSpline.test_evaluate.<locals>.<listcomp>„  rž  r>   )r   r   r
   r   rŸ  r  r   )	r7   r9   r8   rÏ   rS  rR  r   r¡  r:   s	           @r<   r¢  z+TestRectSphereBivariateSpline.test_evaluatez  së   ø€ Ý�T˜1�R™4 ™9 aÑ(Ô(ˆÝ�T�2˜d™7 AÑ&Ô&ˆÝ�?�?�? ? ? ?°?°?°?Ø"�?�? ? ? ?°?°?°?Ø"�?�?ð$ñ %ô %ˆõ (¨¨!¨AÑ.Ô.ˆØ1Ð1Ð1ˆØ6Ð6Ð6ˆØ�VŠV�B˜‰^Œ^ˆÝÐ@Ð@Ð@Ð@µC¸¸B±K´KÐ@Ñ@Ô@ÑAÔAˆÝ˜B Ñ$Ô$Ð$Ð$Ð$r>   c                 óZ  — t          j        t          j        dt          j        ddd¦  «        z
  ¦  «        j        t          j        dt          j        t          j        ddd¦  «        ¦  «        z
  ¦  «        ¦  «        j        }t          t          ¦  «        5 }t          j        d	d
d¦  «        t           j        z  dz  }t          j        ddd¦  «        t           j        z  dz  }t          |||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          j        ddd¦  «        t           j        z  dz  }t          j        ddd¦  «        t           j        z  dz  }t          |||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          j        dd
d¦  «        t           j        z  dz  }t          j        ddd¦  «        t           j        z  dz  }t          |||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          j        dd
d¦  «        t           j        z  dz  }t          j        ddd¦  «        t           j        z  dz  }t          |||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          j        dd
d¦  «        t           j        z  dz  }t          j        ddd¦  «        t           j        z  dz  }t          |||d	¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚d S )Nç     €V@ç      TÀç      T@é   ç     €f@rT   ç     àu@rZ   r,   éª   r   é^  úu should be between (0, pi)r¤   éµ   éKÿÿÿú v[0] should be between [-pi, pi)éöÿÿÿéh  ú"v[-1] should be v[0] + 2pi or lessre   rŠ  ©rf   ÚdotÚ
atleast_2dr   r_  r2   rš   r›   r   r   râ   rã   ©r7   ra  r?  rk  rl  s        r<   r@  z0TestRectSphereBivariateSpline.test_invalid_input‡  su  € ÝŒv•b”m C­"¬+°d¸CÀÑ*DÔ*DÑ$DÑEÔEÔGÝ”m D­2¬6µ"´+¸bÀ$ÈÑ2JÔ2JÑ+KÔ+KÑ$KÑLÔLñNô NÜNOð 	õ �:Ñ&Ô&ð 	8¨(Ý”;˜r 3¨Ñ*Ô*­R¬UÑ2°TÑ9ˆDÝ”;˜q # rÑ*Ô*­R¬UÑ2°TÑ9ˆDÝ% d¨D°$Ñ7Ô7Ð7ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8ð -µ°H´NÑ0CÔ0CÐCÐCÐCÐCå�:Ñ&Ô&ð 	8¨(Ý”;˜r 3¨Ñ*Ô*­R¬UÑ2°TÑ9ˆDÝ”;˜q # rÑ*Ô*­R¬UÑ2°TÑ9ˆDÝ% d¨D°$Ñ7Ô7Ð7ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8ð -µ°H´NÑ0CÔ0CÐCÐCÐCÐCå�:Ñ&Ô&ð 	8¨(Ý”;˜r 3¨Ñ*Ô*­R¬UÑ2°TÑ9ˆDÝ”;˜t R¨Ñ,Ô,­r¬uÑ4°tÑ;ˆDÝ% d¨D°$Ñ7Ô7Ð7ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8ð 2µS¸¼Ñ5HÔ5HÐHÐHÐHÐHå�:Ñ&Ô&ð 	8¨(Ý”;˜r 3¨Ñ*Ô*­R¬UÑ2°TÑ9ˆDÝ”;˜s C¨Ñ,Ô,­r¬uÑ4°tÑ;ˆDÝ% d¨D°$Ñ7Ô7Ð7ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8ð 4µs¸8¼>Ñ7JÔ7JÐJÐJÐJÐJå�:Ñ&Ô&ð 	>¨(Ý”;˜r 3¨Ñ*Ô*­R¬UÑ2°TÑ9ˆDÝ”;˜r 3¨Ñ+Ô+­b¬eÑ3°dÑ:ˆDÝ% d¨D°$¸"Ð=Ñ=Ô=Ð=ð	>ð 	>ð 	>ñ 	>ô 	>ð 	>ð 	>ð 	>ð 	>ð 	>ð 	>øøøð 	>ð 	>ð 	>ð 	>ð &­¨X¬^Ñ)<Ô)<Ð<Ð<Ð<Ð<Ð<Ð<ó_   ÂADÄDÄ	DÄ9AF#Æ#F'Æ*F'ÇAIÉIÉIÉ;AK%Ë%K)Ë,K)ÌA NÎNÎNc                 ó8  — t          ddt          z  dz
  d¦  «        }t          dt          dz
  d¦  «        }t          g d¢g d¢g d¢g d¢g d¢g d¢g d¢g¦  «        }t          |||¦  «        }t          ddt          z  dz
  d¦  «        }t          dt          dz
  d¦  «        }t	           |||d¬	¦  «        t          |||d¬
¦  «        dd¬¦  «         t	           |||d¬¦  «        t          |||d¬¦  «        dd¬¦  «         t	           |||dd¬¦  «        t          |||ddd¬¦  «        dd¬¦  «         t           |||d¬	¦  «         |                     dd¦  «        ||¦  «        ¦  «         t           |||d¬¦  «         |                     dd¦  «        ||¦  «        ¦  «         t           |||dd¬¦  «         |                     dd¦  «        ||¦  «        ¦  «         t           |||dd¬¦  «         |                     dd¦  «        ||d¬¦  «        ¦  «         t           |||dd¬¦  «         |                     dd¦  «        ||d¬¦  «        ¦  «         t           |||ddd¬¦  «         |                     dd¦  «        ||d¬¦  «        ¦  «         d S )Nrê  r%   rY   rë  rì  rí  ç{®Gáz”?r$   )Údthetar¶  rð  ©Úrtolr/   )Údphir¸  )r	  r  ç�íµ ÷Æ°>©r·  r¹  r=  r×  r   F©r	  r/  r.  ©r  r/  ©r	  r  r/  )r   r   r
   r   r   Ú_numdiff_2dr   rÉ  rî  s        r<   r¼  z3TestRectSphereBivariateSpline.test_derivatives_grid©  sH  € Ý�T˜1�R™4 ™9 aÑ(Ô(ˆÝ�T�2˜d™7 AÑ&Ô&ˆÝ�?�?�? ? ? ?°?°?°?Ø"�?�? ? ? ?°?°?°?Ø"�?�?ð$ñ %ô %ˆõ (¨¨!¨AÑ.Ô.ˆå�T˜1�R™4 ™9 aÑ(Ô(ˆÝ�T�2˜d™7 AÑ&Ô&ˆå˜˜˜A˜q¨Ð+Ñ+Ô+­[¸¸aÀÀqÐ-IÑ-IÔ-IØ!¨ð	.ñ 	.ô 	.ð 	.å˜˜˜A˜q qÐ)Ñ)Ô)­;°s¸A¸qÀQÐ+GÑ+GÔ+GØ!¨ð	.ñ 	.ô 	.ð 	.å˜˜˜A˜q¨°Ð3Ñ3Ô3Ý# C¨¨A°!¸¸tÐDÑDÔDØ!¨ð	.ñ 	.ô 	.ð 	.õ 	˜˜˜A˜q¨Ð+Ñ+Ô+Ø7˜3×1Ò1°!°QÑ7Ô7¸¸1Ñ=Ô=ñ	?ô 	?ð 	?å˜˜˜A˜q qÐ)Ñ)Ô)Ø7˜3×1Ò1°!°QÑ7Ô7¸¸1Ñ=Ô=ñ	?ô 	?ð 	?å˜˜˜A˜q¨°Ð3Ñ3Ô3Ø7˜3×1Ò1°!°QÑ7Ô7¸¸1Ñ=Ô=ñ	?ô 	?ð 	?õ 	˜˜˜A˜q¨°Ð7Ñ7Ô7Ø7˜3×1Ò1°!°QÑ7Ô7¸¸1À5ÐIÑIÔIñ	Kô 	Kð 	Kå˜˜˜A˜q q¨uÐ5Ñ5Ô5Ø7˜3×1Ò1°!°QÑ7Ô7¸¸1À5ÐIÑIÔIñ	Kô 	Kð 	Kå˜˜˜A˜q¨°¸Ð?Ñ?Ô?Ø7˜3×1Ò1°!°QÑ7Ô7¸¸1À5ÐIÑIÔIñ	Kô 	Kð 	Kð 	Kð 	Kr>   c                 óÂ  ‡— t          ddt          z  dz
  d¦  «        }t          dt          dz
  d¦  «        }t          g d¢g d¢g d¢g d¢g d¢g d¢g d¢g¦  «        }t          |||¦  «        Št          ddt          z  dz
  d¦  «        }t          dt          dz
  d¦  «        } ‰||dd	¬
¦  «        j        |j        k    sJ ‚t           ‰||dd	¬
¦  «        t          ˆfd„||d¬¦  «        dd¬¦  «         t           ‰||dd	¬¦  «        t          ˆfd„||d¬¦  «        dd¬¦  «         t           ‰||ddd	¬¦  «        t          ˆfd„||ddd¬¦  «        dd¬¦  «         d S )Nrê  r%   rY   rë  rì  rí  r  r$   Fr  c                 ó    •—  ‰| |d¬¦  «        S ©NFr.  rP   ©r8   r9   r:   s     €r<   ú<lambda>z@TestRectSphereBivariateSpline.test_derivatives.<locals>.<lambda>Ù  ó   ø€ °°°A°a¸UÐ0CÑ0CÔ0C€ r>   r¶  rð  r
  r  c                 ó    •—  ‰| |d¬¦  «        S r  rP   r  s     €r<   r  z@TestRectSphereBivariateSpline.test_derivatives.<locals>.<lambda>Ü  r  r>   r¸  r  c                 ó    •—  ‰| |d¬¦  «        S r  rP   r  s     €r<   r  z@TestRectSphereBivariateSpline.test_derivatives.<locals>.<lambda>ß  r  r>   r  r  r×  )r   r   r
   r   r   r   r  rî  s       @r<   rl   z.TestRectSphereBivariateSpline.test_derivativesË  sæ  ø€ Ý�T˜1�R™4 ™9 aÑ(Ô(ˆÝ�T�2˜d™7 AÑ&Ô&ˆÝ�?�?�? ? ? ?°?°?°?Ø"�?�? ? ? ?°?°?°?Ø"�?�?ð$ñ %ô %ˆõ (¨¨!¨AÑ.Ô.ˆå�T˜1�R™4 ™9 aÑ(Ô(ˆÝ�T�2˜d™7 AÑ&Ô&ˆàˆs�1�a ¨Ð.Ñ.Ô.Ô4¸¼Ò?Ð?Ð?Ð?Ý˜˜˜A˜q¨°Ð7Ñ7Ô7Ý#Ð$CÐ$CÐ$CÐ$CÀQÈÈaÐPÑPÔPØ!¨ð	.ñ 	.ô 	.ð 	.õ 	˜˜˜A˜q q¨uÐ5Ñ5Ô5Ý#Ð$CÐ$CÐ$CÐ$CÀQÈÈaÐPÑPÔPØ!¨ð	.ñ 	.ô 	.ð 	.õ 	˜˜˜A˜q¨°¸Ð?Ñ?Ô?Ý#Ð$CÐ$CÐ$CÐ$CØ$% q¨Q°1¸$ð@ñ @ô @à!¨ð	.ñ 	.ô 	.ð 	.ð 	.ð 	.r>   c                 óZ  — t          j        t          j        dt          j        ddd¦  «        z
  ¦  «        j        t          j        dt          j        t          j        ddd¦  «        ¦  «        z
  ¦  «        ¦  «        j        }t          t          ¦  «        5 }t          j        d	d
d¦  «        t           j        z  dz  }t          j        d	dd¦  «        t           j        z  dz  }t          |||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          j        ddd¦  «        t           j        z  dz  }t          j        d	dd¦  «        t           j        z  dz  }t          |||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          j        dd
d¦  «        t           j        z  dz  }t          j        ddd¦  «        t           j        z  dz  }t          |||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          j        dd
d¦  «        t           j        z  dz  }t          j        ddd¦  «        t           j        z  dz  }t          |||¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚t          t          ¦  «        5 }t          j        dd
d¦  «        t           j        z  dz  }t          j        ddd¦  «        t           j        z  dz  }t          |||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚d S )Nró  rô  rõ  rö  r÷  rT   rø  rZ   r   rù  rú  rû  r¤   é´   rý  rþ  rÿ  r   r  r,   re   rŠ  r  r  s        r<   Útest_invalid_input_2z2TestRectSphereBivariateSpline.test_invalid_input_2ã  su  € ÝŒv•b”m C­"¬+°d¸CÀÑ*DÔ*DÑ$DÑEÔEÔGÝ”m D­2¬6µ"´+¸bÀ$ÈÑ2JÔ2JÑ+KÔ+KÑ$KÑLÔLñNô NÜNOð 	õ �:Ñ&Ô&ð 	8¨(Ý”;˜q # qÑ)Ô)­B¬EÑ1°DÑ8ˆDÝ”;˜q # rÑ*Ô*­R¬UÑ2°TÑ9ˆDÝ% d¨D°$Ñ7Ô7Ð7ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8ð -µ°H´NÑ0CÔ0CÐCÐCÐCÐCå�:Ñ&Ô&ð 	8¨(Ý”;˜r 3¨Ñ*Ô*­R¬UÑ2°TÑ9ˆDÝ”;˜q # rÑ*Ô*­R¬UÑ2°TÑ9ˆDÝ% d¨D°$Ñ7Ô7Ð7ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8ð -µ°H´NÑ0CÔ0CÐCÐCÐCÐCå�:Ñ&Ô&ð 	8¨(Ý”;˜r 3¨Ñ*Ô*­R¬UÑ2°TÑ9ˆDÝ”;˜t R¨Ñ,Ô,­r¬uÑ4°tÑ;ˆDÝ% d¨D°$Ñ7Ô7Ð7ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8ð 2µS¸¼Ñ5HÔ5HÐHÐHÐHÐHå�:Ñ&Ô&ð 	8¨(Ý”;˜r 3¨Ñ*Ô*­R¬UÑ2°TÑ9ˆDÝ”;˜s C¨Ñ,Ô,­r¬uÑ4°tÑ;ˆDÝ% d¨D°$Ñ7Ô7Ð7ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8ð 4µs¸8¼>Ñ7JÔ7JÐJÐJÐJÐJå�:Ñ&Ô&ð 	>¨(Ý”;˜r 3¨Ñ*Ô*­R¬UÑ2°TÑ9ˆDÝ”;˜r 3¨Ñ+Ô+­b¬eÑ3°dÑ:ˆDÝ% d¨D°$¸"Ð=Ñ=Ô=Ð=ð	>ð 	>ð 	>ñ 	>ô 	>ð 	>ð 	>ð 	>ð 	>ð 	>ð 	>øøøð 	>ð 	>ð 	>ð 	>ð &­¨X¬^Ñ)<Ô)<Ð<Ð<Ð<Ð<Ð<Ð<r  c           
      ó°  — t          ddt          z  dz
  d¦  «        }t          dt          dz
  d¦  «        }t          g d¢g d¢g d¢g d¢g d¢g d¢g d¢g¦  «        }t          |||¦  «        }t          |                     ¦   «         |                     ¦   «         |                     ¦   «         ¦  «        }t           |||¦  «         |||¦  «        ¦  «         d S ré  )r   r   r
   r   rñ   r	   )r7   r9   r8   rÏ   rò   r³   s         r<   ró   z3TestRectSphereBivariateSpline.test_array_like_input  sé   € Ý�T˜1�r™6 D™=¨!Ñ,Ô,ˆÝ�T�2 ™9 aÑ(Ô(ˆÝÐ(Ð(Ð(Ð*?Ð*?Ð*?Ø(Ð(Ð(Ø(Ð(Ð(Ð*?Ð*?Ð*?Ø(Ð(Ð(Ø(Ð(Ð(ð	*ñ +ô +ˆõ )¨¨A¨qÑ1Ô1ˆå(¨¯ª©¬°Q·X²X±Z´ZÀÇÂÁÄÑLÔLˆÝ! $ $ q¨!¡*¤*¨d¨d°1°a©j¬jÑ9Ô9Ð9Ð9Ð9r>   c                 ó(  — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        ||¦  «        }|d         |d         z   }t          j        |¦  «        }t          j        |¦  «        }t	          |||¦  «        }t          j        t          j        ddg¦  «        ¦  «        }t          j        t          j        ddg¦  «        ¦  «        }	 |||	¦  «        }
t          j        d	d
gddgg¦  «        }t          |
|¦  «         d S )N)r¯  é   é#   r®  é-   )i¦ÿÿÿi«ÿÿÿé°ÿÿÿiµÿÿÿr­   r   r$   r!  g     ÀB@r#  g     `SÀg     €FÀgÐñÑâŒ=EÀg     ˆHÀgDioð…EGÀ)rf   r
   r   Úradiansr   r	   )r7   rk  rl  Úmeshra  Úlat_rÚlon_rÚinterpolatorÚ	query_latÚ	query_lonÚdata_interpÚanss               r<   Útest_negative_evaluationz6TestRectSphereBivariateSpline.test_negative_evaluation  s  € ÝŒxÐ,Ð,Ð,Ñ-Ô-ˆÝŒxÐ0Ð0Ð0Ñ1Ô1ˆÝŒ{˜4 Ñ&Ô&ˆØ�AŒw˜˜aœÑ ˆÝ”
˜4Ñ Ô ˆÝ”
˜4Ñ Ô ˆÝ0°¸¸tÑDÔDˆÝ”J�rœx¨¨T¨
Ñ3Ô3Ñ4Ô4ˆ	Ý”J�rœx¨¨e¨Ñ5Ô5Ñ6Ô6ˆ	Ø"�l 9¨iÑ8Ô8ˆÝŒh˜ 
Ð+Ø! 9Ð-ð/ñ 0ô 0ˆå! +¨sÑ3Ô3Ð3Ð3Ð3r>   c                 óô   — t          j        dd¦  «        t           j        z  dz  }t          j        dd¦  «        t           j        z  dz  }t          j        d¦  «        }dD ]}t	          |||d|¬¦  «         Œd S )Nr$   r¤   )rZ   rZ   ))TT)TF)FFr   )r+   Úpole_continuity)rf   rq   r   r“   r   )r7   ÚuÚvr   Úps        r<   Útest_pole_continuity_gh_14591z;TestRectSphereBivariateSpline.test_pole_continuity_gh_14591"  s†   € õ ŒI�a˜ÑÔ�rœuÑ$ rÑ)ˆÝŒI�a˜ÑÔ�rœuÑ$ rÑ)ˆÝŒH�VÑÔˆØ>ð 	Gð 	GˆAÝ% a¨¨A°ÀAÐFÑFÔFÐFÐFð	Gð 	Gr>   N)rM   rN   rO   r”  r¢  r@  r¼  rl   r  ró   r-  r3  rP   r>   r<   rç  rç  p  s¦   € € € € € ð.ð .ð .ð%ð %ð %ð =ð  =ð  =ðD Kð  Kð  KðD.ð .ð .ð0 =ð  =ð  =ðD:ð :ð :ð4ð 4ð 4ðGð Gð Gð Gð Gr>   rç  ç:Œ0âŽyE>c                 óÔ  — |dk    r|dk    r | ||¦  «        S |dk    r+|dk    r% | ||z   |¦  «         | ||z
  |¦  «        z
  d|z  z  S |dk    r+|dk    r% | |||z   ¦  «         | |||z
  ¦  «        z
  d|z  z  S |dk    rZ|dk    rT | ||z   ||z   ¦  «         | ||z
  ||z   ¦  «        z
   | ||z   ||z
  ¦  «        z
   | ||z
  ||z
  ¦  «        z   d|z  dz  z  S t          d¦  «        ‚)Nr   r$   r%   zinvalid derivative order)r›   )Úfuncr8   r9   r·  r¹  r=  s         r<   r  r  1  sO  € Ø	ˆQ‚w€w�2˜’7�7Øˆt�A�q‰zŒzÐØ	ˆqŠˆ�R˜1’W�WØ��Q˜‘W˜aÑ Ô  4 4¨¨C©°Ñ#3Ô#3Ñ3¸¸#¹Ñ>Ð>Ø	ˆqŠˆ�R˜1’W�WØ��Q˜˜C™Ñ Ô  4 4¨¨1¨s©7Ñ#3Ô#3Ñ3¸¸#¹Ñ>Ð>Ø	ˆqŠˆ�R˜1’W�WØ��Q˜‘W˜a #™gÑ&Ô&¨¨¨a°#©g°q¸3±wÑ)?Ô)?Ñ?Ø�$�q˜3‘w  C¡Ñ(Ô(ñ)Ø+/¨4°°C±¸¸S¹Ñ+AÔ+AñBØFGÈÁeÈaÁZñPð 	Põ Ð3Ñ4Ô4Ð4r>   c                   ó6   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	dS )	ÚTest_DerivedBivariateSplinezgTest the creation, usage, and attribute access of the (private)
    _DerivedBivariateSpline class.
    c                 óü  ‡— t          j        t          t          t	          d¦  «        t	          d¦  «        ¦  «        ¦  «        ¦  «        }t          j        t          t          t	          d¦  «        t	          dd¦  «        ¦  «        ¦  «        ¦  «        }t          j        t          j        ddd¦  «        t          j        ddd¦  «        f¦  «        Št          ¦   «         5 }|                     t          d¦  «         t          ||‰t          ddd¦  «        t          d	d
d¦  «        d¬¦  «        | _
        d d d ¦  «         n# 1 swxY w Y   t          ||‰¦  «        | _        t          ddd¦  «        }|dz   }t          ˆfd„t	          ‰j        ¦  «        D ¦   «         ¦  «        }t          |||¦  «        | _        t          t#          j        t	          d¦  «        t	          d¦  «        ¦  «        ¦  «        | _        d S )Nr¤   r$   é   r&   r  r†   g     €3@rA   r*   g     €4@rê  r<  r   r6  rw   c                 ó:   •— g | ]}t          j        ‰|¦  «        ‘ŒS rP   )rf   Úroll)rœ  ÚirÏ   s     €r<   r�  z<Test_DerivedBivariateSpline.setup_method.<locals>.<listcomp>P  s#   ø€ Ð9Ð9Ð9 a•B”G˜A˜q‘M”MÐ9Ð9Ð9r>   )rf   ÚconcatenateÚlistr  rÂ   r   r   rý   rþ   r   r`  r   Ú
lut_smoothr
   rÎ  r   Úlut_rectÚ	itertoolsÚproductÚorders)r7   r8   r9   rÿ   rÓ   rÔ   ÚzzrÏ   s          @r<   rm  z(Test_DerivedBivariateSpline.setup_methodC  s×  ø€ ÝŒN�4¥¥E¨"¡I¤I­u°R©y¬yÑ 9Ô 9Ñ:Ô:Ñ;Ô;ˆÝŒN�4¥¥E¨"¡I¤I­u°Q¸©|¬|Ñ <Ô <Ñ=Ô=Ñ>Ô>ˆÝŒN�BœK¨¨1¨bÑ1Ô1µ2´;¸qÀ!ÀRÑ3HÔ3HÐIÑJÔJˆÝÑ Ô ð 	8 CØ�JŠJ•{Ð$FÑGÔGÐGÝ-¨a°°AÝ.6°s¸DÀ!Ñ.DÔ.DÝ.6°s¸DÀ!Ñ.DÔ.DØ26ð8ñ 8ô 8ˆDŒLð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8õ 0°°1°aÑ8Ô8ˆŒÝ�a˜˜BÑÔˆØ�#‰XˆÝÐ9Ð9Ð9Ð9­5°´©=¬=Ð9Ñ9Ô9Ñ:Ô:ˆÝ+¨B°°BÑ7Ô7ˆŒÝ�9Ô,­U°1©X¬Xµu¸Q±x´xÑ@Ô@ÑAÔAˆŒˆˆs   Ã!AEÅEÅEc                 ó¶   — | j         D ]P\  }}| j                             ||¦  «        } |ddd¬¦  «        }|                      dd||d¬¦  «        }||k    sJ ‚ŒQd S )Nrj   Fr.  rÆ  )rD  r`  rÉ  ©r7   ÚnuxÚnuyÚlut_derrÃ   rÄ   s         r<   Útest_creation_from_LSQz2Test_DerivedBivariateSpline.test_creation_from_LSQT  sx   € Øœð 	ð 	‰HˆC�Ø”l×5Ò5°c¸3Ñ?Ô?ˆGØ�˜˜S uÐ-Ñ-Ô-ˆAØ—’˜S #¨#°#¸E�ÑBÔBˆAØ˜’6�6�6�6�6ð		ð 	r>   c                 ó¶   — | j         D ]P\  }}| j                             ||¦  «        } |ddd¬¦  «        }|                      dd||d¬¦  «        }||k    sJ ‚ŒQd S )Ng      @Fr.  rÆ  )rD  r@  rÉ  rG  s         r<   Útest_creation_from_Smoothz5Test_DerivedBivariateSpline.test_creation_from_Smooth[  sx   € Øœð 	ð 	‰HˆC�Ø”o×8Ò8¸¸cÑBÔBˆGØ�˜˜S uÐ-Ñ-Ô-ˆAØ—’  S¨S°S¸u�ÑEÔEˆAØ˜’6�6�6�6�6ð		ð 	r>   c                 ó¶   — | j         D ]P\  }}| j                             ||¦  «        } |ddd¬¦  «        }|                      dd||d¬¦  «        }||k    sJ ‚ŒQd S )Nr†   r*   Fr.  rÆ  )rD  rA  rÉ  rG  s         r<   Útest_creation_from_Rectz3Test_DerivedBivariateSpline.test_creation_from_Rectb  sx   € Øœð 	ð 	‰HˆC�Ø”m×6Ò6°s¸CÑ@Ô@ˆGØ�˜˜S uÐ-Ñ-Ô-ˆAØ—’˜c 3¨3°3¸U�ÑCÔCˆAØ˜’6�6�6�6�6ð		ð 	r>   c                 ó¤   — | j                              dd¦  «        }t          t          ¦  «        5  |j         d d d ¦  «         d S # 1 swxY w Y   d S ©Nr$   )rA  rÉ  rš   ÚAttributeErrorÚfp©r7   Úders     r<   Útest_invalid_attribute_fpz5Test_DerivedBivariateSpline.test_invalid_attribute_fpi  s’   € ØŒm×.Ò.¨q°!Ñ4Ô4ˆÝ�>Ñ*Ô*ð 	ð 	ØŒFˆFð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   °AÁA	ÁA	c                 ó¾   — | j                              dd¦  «        }t          t          ¦  «        5  |                     ¦   «          d d d ¦  «         d S # 1 swxY w Y   d S rQ  )r@  rÉ  rš   rR  r3   rT  s     r<   Ú#test_invalid_attribute_get_residualz?Test_DerivedBivariateSpline.test_invalid_attribute_get_residualn  s�   € ØŒo×0Ò0°°AÑ6Ô6ˆÝ�>Ñ*Ô*ð 	ð 	Ø×ÒÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   °AÁAÁAN)
rM   rN   rO   Ú__doc__rm  rK  rM  rO  rV  rX  rP   r>   r<   r8  r8  ?  s{   € € € € € ðð ðBð Bð Bð"ð ð ðð ð ðð ð ðð ð ð
ð ð ð ð r>   r8  )r   r   r4  )2rB  Ú	threadingr   Únumpyrf   Únumpy.testingr   r  r   rš   Úscipy._lib._array_apir   r   r   r	   r
   r   r   r   r   r   r   Úscipy.interpolate._fitpack_pyr   r   r   r   Úscipy.interpolate._fitpack2r   r   r   r   r   r   r   r   r   Úscipy._lib._testutilsr   Úscipy.interpolater   r!   r  rI  r[  r‚  r�  rç  r  r8  rP   r>   r<   ú<module>rb     sF  ðà Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ø +Ð +Ð +Ð +Ð +Ð +Ø €€€Ø *Ð *Ð *Ð *Ð *Ð *ðð ð ð ð ð ð ð ð ð ð ð ð CÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BØ KÐ KÐ KÐ KÐ KÐ KÐ KÐ KÐ KÐ KÐ KÐ Kð#ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð :Ð 9Ð 9Ð 9Ð 9Ð 9à )Ð )Ð )Ð )Ð )Ð )ðF7ð F7ð F7ð F7ð F7ñ F7ô F7ð F7ðRa6ð a6ð a6ð a6ð a6ñ a6ô a6ð a6ðH~8ð ~8ð ~8ð ~8ð ~8ñ ~8ô ~8ð ~8ðBFBð FBð FBð FBð FBñ FBô FBð FBðRRBð RBð RBð RBð RBñ RBô RBð RBðjIFð IFð IFð IFð IFñ IFô IFð IFðX~Gð ~Gð ~Gð ~Gð ~Gñ ~Gô ~Gð ~GðB5ð 5ð 5ð 5ð2ð 2ð 2ð 2ð 2ñ 2ô 2ð 2ð 2ð 2r>   