§
    ¢éUgfå  ã                   ó‚  — d dl Z d dlZd dlmZmZmZmZmZm	Z	 d dl
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"  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„Z* G d„ d¦  «        Z+dS )é    N)Úassert_equalÚassert_almost_equalÚassert_array_equalÚassert_array_almost_equalÚassert_allcloseÚsuppress_warnings)Úraises)ÚarrayÚdiffÚlinspaceÚmeshgridÚonesÚpiÚshape)ÚbisplrepÚbisplevÚsplrepÚspalde)	ÚUnivariateSplineÚLSQUnivariateSplineÚInterpolatedUnivariateSplineÚLSQBivariateSplineÚSmoothBivariateSplineÚRectBivariateSplineÚLSQSphereBivariateSplineÚSmoothSphereBivariateSplineÚRectSphereBivariateSplinec                   ó˜   — 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d„ ZdS )ÚTestUnivariateSplinec                 óH  — g d¢}g d¢}t          ||d¬¦  «        }t          |                     ¦   «         ddg¦  «         t          |                     ¦   «         ddg¦  «         t	          |                     ¦   «         d¦  «         t           |g d¢¦  «        g d¢¦  «         d S )N©é   é   é   )r$   r$   r$   r"   ©Úkr$   ç        ©r"   ç      ø?r#   ©r   r   Ú	get_knotsÚ
get_coeffsr   Úget_residual©ÚselfÚxÚyÚluts       úd/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/scipy/interpolate/tests/test_fitpack2.pyÚtest_linear_constantz)TestUnivariateSpline.test_linear_constant   ó¤   € ØˆGˆGˆØˆGˆGˆÝ˜q  QÐ'Ñ'Ô'ˆÝ! #§-¢-¡/¤/°1°Q°%Ñ8Ô8Ð8Ý! #§.¢.Ñ"2Ô"2°A°a°5Ñ9Ô9Ð9Ý˜C×,Ò,Ñ.Ô.¨sÑ3Ô3Ð3Ý! # # i i i¡.¤.°°°Ñ9Ô9Ð9Ð9Ð9ó    c           	      óæ  — g d¢}g d¢}t          ||d¬¦  «        }d}t          t          |¦  «        t           ||¦  «        ¦  «        ¦  «         t          t          |¦  «        t           ||d¬¦  «        ¦  «        ¦  «         g d¢}t          t          |¦  «        t           ||¦  «        ¦  «        ¦  «         t          t          |¦  «        t           ||d¬¦  «        ¦  «        ¦  «         d S )Nr!   ©r   r#   é   r"   r%   r#   )Únu)r)   r#   ç      @)r   r   r   )r/   r0   r1   r2   Úargs        r3   Útest_preserve_shapez(TestUnivariateSpline.test_preserve_shape   sØ   € ØˆIˆIˆØˆIˆIˆÝ˜q ! qÐ)Ñ)Ô)ˆØˆÝ•U˜3‘Z”Z¥ s s¨3¡x¤x¡¤Ñ1Ô1Ð1Ý•U˜3‘Z”Z¥ s s¨3°1 ~¡~¤~Ñ!6Ô!6Ñ7Ô7Ð7ØˆmˆmˆÝ•U˜3‘Z”Z¥ s s¨3¡x¤x¡¤Ñ1Ô1Ð1Ý•U˜3‘Z”Z¥ s s¨3°1 ~¡~¤~Ñ!6Ô!6Ñ7Ô7Ð7Ð7Ð7r6   c                 óH  — g d¢}g d¢}t          ||d¬¦  «        }t          |                     ¦   «         ddg¦  «         t          |                     ¦   «         ddg¦  «         t	          |                     ¦   «         d¦  «         t           |g d	¢¦  «        g d
¢¦  «         d S )Nr!   r8   r"   r%   r$   r   r9   r'   r(   )r   r"   r#   r*   r.   s       r3   Útest_linear_1dz#TestUnivariateSpline.test_linear_1d&   r5   r6   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
   )r/   r0   s     r3   Ú__call__zBTestUnivariateSpline.test_subclassing.<locals>.ZeroSpline.__call__3   s   € Ø�˜q™œ‘zÐ!r6   N)Ú__name__Ú
__module__Ú__qualname__rD   © r6   r3   Ú
ZeroSplinerB   2   s#   € € € € € ð"ð "ð "ð "ð "r6   rI   ©r"   r#   r$   r9   é   )r$   r#   r$   r#   r$   r#   r%   r)   r;   r'   )r   r   )r/   rI   Úsps      r3   Útest_subclassingz%TestUnivariateSpline.test_subclassing/   ss   € ð	"ð 	"ð 	"ð 	"ð 	"Õ)ñ 	"ô 	"ð 	"ð ˆZ˜˜˜ [ [ [°AÐ6Ñ6Ô6ˆÝ˜2˜2˜s C˜j™>œ>¨B°¨8Ñ4Ô4Ð4Ð4Ð4r6   c                 ó†   — g d¢}g d¢}t          ||d¬¦  «        }t           |g ¦  «        t          g ¦  «        ¦  «         d S )N©r"   r$   rK   é   é	   ©r   r9   rQ   é   é   r$   r%   )r   r   r
   ©r/   r0   r1   Úspls       r3   Útest_empty_inputz%TestUnivariateSpline.test_empty_input9   sL   € àˆKˆKˆØˆMˆMˆÝ˜q ! qÐ)Ñ)Ô)ˆÝ˜3˜3˜r™7œ7¥E¨"¡I¤IÑ.Ô.Ð.Ð.Ð.r6   c                 óŠ   — g d¢}g d¢}t          ||d¬¦  «        }t          |                     ¦   «         d         d¦  «         d S )NrO   rR   r$   r%   r   g7Ã£ŽýÍð?)r   r   ÚrootsrU   s       r3   Ú
test_rootszTestUnivariateSpline.test_roots@   sM   € ØˆOˆOˆØÐÐˆÝ˜q ! qÐ)Ñ)Ô)ˆÝ˜CŸIšI™KœK¨œNÐ,=Ñ>Ô>Ð>Ð>Ð>r6   c                 óö   — t          j        ddt           j        z  d¦  «        }t          j        |¦  «        }t	          ||d¬¦  «        }t          t          |                     ¦   «         ¦  «        d¦  «         d S )Nr   é2   iè  ©Ús)Únpr   r   Úcosr   r   ÚlenrY   rU   s       r3   Útest_roots_lengthz&TestUnivariateSpline.test_roots_lengthF   sb   € ÝŒK˜˜2¥¤™: tÑ,Ô,ˆÝŒF�1‰IŒIˆÝ˜q ! qÐ)Ñ)Ô)ˆÝ•S˜Ÿš™œÑ%Ô% rÑ*Ô*Ð*Ð*Ð*r6   c                 ó„   — g d¢}g d¢}t          ||d¬¦  «        }t          |                     d¦  «        g d¢¦  «         d S )NrO   rR   r$   r%   ç      @)gÌó;¨@gpZ•é<oû?gOÀ¼¶mÇ¿g      Ô?)r   r   ÚderivativesrU   s       r3   Útest_derivativesz%TestUnivariateSpline.test_derivativesL   sb   € ØˆOˆOˆØÐÐˆÝ˜q ! qÐ)Ñ)Ô)ˆÝ˜CŸOšO¨CÑ0Ô0ØFÐFÐFñ	Hô 	Hð 	Hð 	Hð 	Hr6   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   r]   )g     €F@g     €C@g      6@ç      @çVçž¯Ò<©Úatol)r^   r&   )r_   Úaranger   r   r   r   re   )r/   r0   r1   ÚtckÚdersrV   s         r3   Útest_derivatives_2z'TestUnivariateSpline.test_derivatives_2S   s¿   € ÝŒI�a‰LŒLˆØˆq‰D�2�a˜‘d‘7‰Nˆå�Q˜˜QÐÑÔˆÝ�a˜‰~Œ~ˆÝ˜ð #ð #ð #ð #ð		$ñ 	$ô 	$ð 	$õ
 ˜q ! q¨AÐ.Ñ.Ô.ˆÝ˜Ÿš¨Ñ*Ô*ØØ"ð	$ñ 	$ô 	$ð 	$ð 	$ð 	$r6   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Ï ¹¿r'   gŠÅóBÏ ¹?gš46	<Æ?g@ø³Ìà7Ñ?g_�µ€Õâ?gææ<ß&Îä?ç      ð?)rt   ç1\_#ä?ç~aèÇ�â?çwõÆÿ“Ù?ç¶ß5?×?ç0¯m›sÖ?gî­x—‰Ö?ry   rx   rw   rv   ru   rt   )ç   ¢”mBçoÙ!þ‡…@çuª)	•~@ç¡eÝ?Ö­z@ç½Œbùý‚@ç¦Öû�v5|@geS®ð®×s@r   r~   r}   r|   r{   rz   N)r0   r1   Úwr^   )gJ·dØvÖ?gÔc�Œà?gœž=¸ì?gt²—ï?©çš™™™™™¹?ç      à?çÍÌÌÌÌÌì?g®Gáz®ï?gü©ñÒMb@?rl   )r   r
   r   )r/   r0   r1   r€   rV   Údesireds         r3   Útest_resize_regressionz+TestUnivariateSpline.test_resize_regressionc   s�   € ðð ð ˆðð ð ˆðð ð ˆõ   a¨1°Ð5Ñ5Ô5ˆÝÐHÐHÐHÑIÔIˆÝ˜˜Ð1Ð1Ð1Ñ2Ô2°GÀ$ÐGÑGÔGÐGÐGÐGr6   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 )NrK   ©Údtyper$   éøÿÿÿé   éd   r   r'   ç      @éÿÿÿÿ)r0   r1   )r   Úextrapolate)Úextg¼‰Ø—²Òœ<rl   )r"   Úzeros)r#   Úraise)r$   Úconstr9   r"   r#   )rŽ   Úunknown)r0   r1   r�   )r_   rn   Úfloatr   ÚcopyÚ
logical_orr   r   r   Úassert_raisesÚ
ValueErrorÚdictr+   r   )
r/   r0   r1   ÚxpÚxp_zerosÚxp_clipÚclsrV   r�   Úts
             r3   Útest_out_of_range_regressionz1TestUnivariateSpline.test_out_of_range_regressions   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 !¨Ð-Ñ-Ô-ð/ð /ð /ð /ð	/ð 	/r6   c                 óÐ   — t          j        d¦  «        dz  }t          j        d¦  «        dz  }t          j        ddd¦  «        }d}t          t          t
          ||||¬¦  «         d S )NrŒ   rt   r   éc   é
   )rŽ   ée   ©Úbbox)r_   rn   r   r˜   r™   r   )r/   ÚxsÚysÚknotsr¦   s        r3   Útest_lsq_fpchecz$TestUnivariateSpline.test_lsq_fpchecœ   sm   € ÝŒY�s‰^Œ^˜bÑ ˆÝŒY�s‰^Œ^˜bÑ ˆÝ”˜A˜r 2Ñ&Ô&ˆØˆÝ•jÕ"5°r¸2¸uØð	!ñ 	!ô 	!ð 	!ð 	!ð 	!r6   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$   r]   r#   ç333333Ó?g333333ã?çš™™™™™É?)r_   r   r`   r   ÚantiderivativeÚ
derivativer   Úintegral)r/   r0   r1   rV   Úspl2s        r3   Ú"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ð 	0r6   c                 óž   — g d¢}g d¢}t          ||dd¬¦  «        }g d¢}t           |                     ¦   «         |¦  «        dd¬	¦  «         d S )
N©r"   r#   r9   é   g      !@)rƒ   çš™™™™™é?çÍÌÌÌÌÌô?r;   rK   r“   r$   )r�   r&   )rŽ   r   g      à¿rQ   g      #@r£   r   rk   rl   )r   r   r°   )r/   Úx_valuesÚy_valuesÚfr0   s        r3   Útest_derivative_extrapolationz2TestUnivariateSpline.test_derivative_extrapolation±   sh   € ð %Ð$Ð$ˆØ*Ð*Ð*ˆÝ˜X x°WÀÐBÑBÔBˆà%Ð%Ð%ˆÝ˜˜Ÿš™œ qÑ)Ô)¨1°5Ð9Ñ9Ô9Ð9Ð9Ð9r6   c                 óØ   — t          j        ddd¦  «        }t          d¦  «        D ]C}t          ||d|¬¦  «        }dD ]+\  }}t	          |                     ||¦  «        dd¬	¦  «         Œ,ŒDd S )
Nr'   rt   rP   r9   r   )r^   r�   ))r"   r"   )r"   rK   )r#   rK   ©r   r   )éþÿÿÿr   )r¿   rŽ   rk   rl   )r_   r   Úranger   r   r±   )r/   r0   r�   r»   ÚaÚbs         r3   Útest_integral_out_of_boundsz0TestUnivariateSpline.test_integral_out_of_bounds»   s“   € õ ŒK˜˜B Ñ"Ô"ˆÝ˜‘8”8ð 	Að 	AˆCÝ   A¨°Ð4Ñ4Ô4ˆAð6ð Að A‘��Aå §
¢
¨1¨aÑ 0Ô 0°!¸%Ð@Ñ@Ô@Ð@Ð@ðAð	Að 	Ar6   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_finiter9   rŽ   ©r0   r1   rÆ   )r0   r1   rŸ   rÆ   )r0   r1   r€   rÆ   ©r0   r1   rŸ   r€   rÆ   )r_   rn   r•   Ú	ones_liker   r+   ÚnanÚinfr˜   r™   rš   r   r   )r/   r0   r1   r€   rV   rŸ   Úy_endÚzs           r3   Ú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r6   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Å   r9   )r0   r1   r€   r^   rÆ   rÈ   )r0   r1   r^   rÆ   rÇ   )r_   rn   r•   rÉ   r   r+   r   r˜   r™   rš   r   ©r/   ÚxxÚyyr0   r1   r€   rV   rŸ   s           r3   Ú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ð 	5r6   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   rt   r"   TrÅ   r9   rÇ   rÈ   )r_   rn   r•   rÉ   r   r+   r˜   r™   rš   r   r   rÐ   s           r3   Ú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¨¸Ð=Ñ=Ô=ð	?ð 	?ð 	?ð 	?ð 	?r6   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¸   r;   ú!x and y should have a same length©rƒ   r·   r¸   r;   gffffff@©rs   rt   rt   rt   ©r€   ú%x, y, and w should have a same lengthrŽ   r¥   úbbox shape should be (2,)r¶   r%   úk should be 1 <= k <= 5rs   r]   ús should be s >= 0.0)r˜   r™   r   ÚstrÚvalue©r/   Úinfor¹   rº   Úw_valuesr¦   s         r3   Ú(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         r3   Ú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$   r9   r×   rØ   )rt   rt   rt   rt   rÛ   rÜ   z;Interior knots t must satisfy Schoenberg-Whitney conditions)Úmatch)rŒ   éœÿÿÿr¥   rŽ   rÝ   r¶   r%   rÞ   )r   r+   r˜   r™   r   rà   rá   )	r/   r¹   rº   rV   Út_valuesrã   rä   Úmessager¦   s	            r3   Ú,test_invalid_input_for_lsq_univariate_splinezATestUnivariateSpline.test_invalid_input_for_lsq_univariate_spline:  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Ù   )rt   rt   rt   rt   rt   rê   rŒ   )r0   r1   r€   r¦   r�   )r_   r
   r   Útolistr   )r/   r¹   rº   rä   r¦   Úspl1r²   s          r3   Útest_array_like_inputz*TestUnivariateSpline.test_array_like_input\  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ð 	5r6   c                 ó  — t          d¦  «        }g d¢}t          ¦   «         5 }|                     t          d¦  «        }t	          ||d¬¦  «         t          t          |¦  «        d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Ném   )mr'   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'   çffffff%@r'   r'   r'   rõ   r'   r'   r'   r'   r'   r'   rô   r'   r'   r÷   r'   r'   r'   ç333333%@r'   r'   r'   rö   r'   r'   r÷   r'   r'   rö   r'   r'   g      '@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'   r'   r÷   r'   r'   r'   rú   r'   r'   r'   rù   r'   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   r   ra   )r/   r0   r1   ÚsupÚrs        r3   Útest_fpknot_oob_crashz*TestUnivariateSpline.test_fpknot_oob_crashk  sØ   € å�#‰JŒJˆð;ð ;ð ;ˆõ Ñ Ô ð 
	$ CØ—
’
ÝðLñMô MˆAõ ˜Q  QÐ'Ñ'Ô'Ð'Ý�˜Q™œ Ñ#Ô#Ð#ð
	$ð 
	$ð 
	$ñ 
	$ô 
	$ð 
	$ð 
	$ð 
	$ð 
	$ð 
	$ð 
	$ð 
	$øøøð 
	$ð 
	$ð 
	$ð 
	$ð 
	$ð 
	$s   ¢AA:Á:A>ÂA>N)rE   rF   rG   r4   r=   r?   rM   rW   rZ   rb   rf   rq   r†   r    rª   r³   r¼   rÃ   rÎ   rÓ   rÕ   rå   rç   rí   rñ   rÿ   rH   r6   r3   r   r      s{  € € € € € ð:ð :ð :ð	8ð 	8ð 	8ð:ð :ð :ð5ð 5ð 5ð/ð /ð /ð?ð ?ð ?ð+ð +ð +ðHð Hð Hð$ð $ð $ð Hð Hð Hð '/ð '/ð '/ðR!ð !ð !ð0ð 0ð 0ð:ð :ð :ðAð Að AðCð Cð Cð45ð 5ð 5ð*?ð ?ð ?ð$9ð 9ð 9ð8<ð <ð <ð0 <ð  <ð  <ðD5ð 5ð 5ð$ð $ð $ð $ð $r6   r   c                   ó8   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	dS )	ÚTestLSQBivariateSplinec           
      óf  — 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	          t          |¦  «        d¦  «         d d d ¦  «         n# 1 swxY w Y   t           |	d	d	¦  «        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   r   ra   r   ©
r/   r0   r1   rÍ   r^   ÚtxÚtyrý   rþ   r2   s
             r3   r4   z+TestLSQBivariateSpline.test_linear_constant‰  s  € ØÐÐˆØÐÐˆØÐÐˆØˆØ�‰c�!�A‘#ˆYˆØ�‰c�!�A‘#ˆYˆÝÑ Ô ð 	$ CØ—
’
�;Ð(JÑKÔKˆAÝ$ Q q¨¨2¨b°A¸Ð;Ñ;Ô;ˆCÝ�˜Q™œ Ñ#Ô#Ð#ð	$ð 	$ð 	$ñ 	$ô 	$ð 	$ð 	$ð 	$ð 	$ð 	$ð 	$øøøð 	$ð 	$ð 	$ð 	$õ
 	˜C˜C  !™HœH bÑ)Ô)Ð)Ð)Ð)ó   ±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   rP   rh   r$   r9   rP   r"   r$   r9   r‚   r"   r$   r  r  rŽ   )r‚   rƒ   r„   )r­   çš™™™™™Ù?gffffffæ?)r   Úfilterrü   r   r+   Úzipr   )r/   r0   r1   rÍ   r^   r  r  rý   r2   ÚxaÚxbÚyaÚybrŸ   r›   ÚypÚzps                    r3   Ú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           
      ó  — 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          t          |¦  «        d¦  «         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          |	                     |d         |d
         |d         |d
         ¦  «        |¦  «         d S )N)	r"   r"   r"   r#   r#   r#   rh   rh   rh   r  r  r‚   r"   r$   r  r  ç      Ð?rŽ   r   )r
   r   rû   rü   r   r   ra   r+   r   Úsumr   r±   )r/   r0   r1   rÍ   r^   r  r  rý   rþ   r2   ÚtzÚtrpzs               r3   Ú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™œ Ñ#Ô#Ð#ð	$ð 	$ð 	$ñ 	$ô 	$ð 	$ð 	$ð 	$ð 	$ð 	$ð 	$øøøð 	$ð 	$ð 	$ð 	$ð —’‘”‰ˆˆ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ˆõ 	˜CŸLšL¨¨A¬°°2´¸¸1¼¸rÀ"¼vÑFÔFØ ñ	"ô 	"ð 	"ð 	"ð 	"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	          t          |¦  «        d¦  «         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   r   ra   r   r_   r‘   r  s
             r3   rW   z'TestLSQBivariateSpline.test_empty_inputÄ  sA  € àÐÐˆØÐÐˆØÐÐˆØˆØ�‰c�!�A‘#ˆYˆØ�‰c�!�A‘#ˆYˆÝÑ Ô ð 	$ CØ—
’
�;Ð(JÑKÔKˆAÝ$ Q¨¨1¨b°"¸¸qÐAÑAÔAˆCÝ�˜Q™œ Ñ#Ô#Ð#ð	$ð 	$ð 	$ñ 	$ô 	$ð 	$ð 	$ð 	$ð 	$ð 	$ð 	$øøøð 	$ð 	$ð 	$ð 	$õ
 	˜3˜3˜r 2™;œ;­¬°©¬Ñ8Ô8Ð8Ý˜3˜3˜r 2¨EÐ2Ñ2Ô2µB´H¸T±N´NÑCÔCÐCÐCÐCr  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$   rt   ç      $@r£   ©Únumú%x, y, and z should have a same lengthé   rÛ   ú(x, y, z, and w should have a same lengthrs   ú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)r'   ©Úepsúeps should be between (0, 1))r˜   r™   r_   r   r   rà   rá   )r/   r^   r  r  rã   r0   r1   rÍ   r€   r¦   Úexc_infos              r3   Ú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           
      ó„  — 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          t          |
¦  «        d
¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr‚   r"   r$   rt   r&  )rt   r&  rt   r&  r  )r€   r¦   ri   r#   )r_   r
   r   r   rû   rü   r   rï   r   r   ra   )r/   r^   r  r  r0   r1   rÍ   r€   r¦   rý   rþ   rð   r²   s                r3   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™œ Ñ#Ô#Ð#ð		$ð 		$ð 		$ñ 		$ô 		$ð 		$ð 		$ð 		$ð 		$ð 		$ð 		$ð 		$øøøð 		$ð 		$ð 		$ð 		$ð 		$ð 		$s   Â3C5F5Æ5F9Æ<F9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          t          |¦  «        d	¦  «         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"  )r_   ÚmgridÚravelrÉ   r   r   rû   rü   r   r   ra   r   )	r/   r0   r1   rÍ   r  r  rý   rþ   r2   s	            r3   Útest_unequal_length_of_knotsz3TestLSQBivariateSpline.test_unequal_length_of_knots  s8  € õ Œ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™œ Ñ#Ô#Ð#ð	$ð 	$ð 	$ñ 	$ô 	$ð 	$ð 	$ð 	$ð 	$ð 	$ð 	$øøøð 	$ð 	$ð 	$ð 	$õ
 	˜C˜C  1¨5Ð1Ñ1Ô1°1Ñ5Ô5Ð5Ð5Ð5s   ÂAC-Ã-C1Ã4C1N)
rE   rF   rG   r4   r  r   rW   r4  rñ   r;  rH   r6   r3   r  r  ‡  s„   € € € € € ð*ð *ð *ð<ð <ð <ð2"ð "ð "ð(Dð Dð Dð )Eð )Eð )EðV$ð $ð $ð*6ð 6ð 6ð 6ð 6r6   r  c                   ó2   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestSmoothBivariateSplinec                 óp  — g d¢}g d¢}g d¢}t          |||dd¬¦  «        }t          |                     ¦   «         g d¢g d¢f¦  «         t          |                     ¦   «         g d¢¦  «         t	          |                     ¦   «         d¦  «         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   r   r+   r,   r   r-   ©r/   r0   r1   rÍ   r2   s        r3   r4   z.TestSmoothBivariateSpline.test_linear_constant'  ó×   € ØÐÐˆØÐÐˆØÐÐˆÝ# A a¨¨Q°!Ð4Ñ4Ô4ˆÝ! #§-¢-¡/¤/°9°9°9¸Y¸Y¸YÐ2GÑHÔHÐHÝ! #§.¢.Ñ"2Ô"2°9°9°9Ñ=Ô=Ð=Ý˜C×,Ò,Ñ.Ô.¨sÑ3Ô3Ð3Ý! # # i i i°°3°Ñ"8Ô"8¸1¸Q¸%ÀÀ1ÀÀqÈÀeÐ9LÑMÔMÐMÐMÐMr6   c                 óp  — g d¢}g d¢}g d¢}t          |||dd¬¦  «        }t          |                     ¦   «         g d¢g d¢f¦  «         t          |                     ¦   «         g d¢¦  «         t	          |                     ¦   «         d¦  «         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#   r9   r9   r9   r"   r  r?  )r   r   r9   r9   r'   r(   r)   r   r#   r@  rA  s        r3   r?   z(TestSmoothBivariateSpline.test_linear_1d1  rB  r6   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          |                     |d         |d         |d         |d         ¦  «        |	¦  «         t	          |||ddd¬¦  «        }
t          |
                     |d         |d         |d         |d         ¦  «        |	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          |                     |d         |d         |d         |d         ¦  «        |	¦  «         d S )N)	r"   r"   r"   r#   r#   r#   r9   r9   r9   r  r  z
The required storage spacer"   r   )r  r	  r^   )r"   r#   r9   r!   r  rŽ   r#   )Údecimalr¿   )	r
   r   r  rü   r   r   r  r   r±   )r/   r0   r1   rÍ   rý   r2   r  r  r  r  Úlut2s              r3   r   z'TestSmoothBivariateSpline.test_integral;  s  € ØÐÐˆØÐÐˆÝÐ%Ð%Ð%Ñ&Ô&ˆåÑ Ô ð 	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ˆå˜CŸLšL¨¨A¬°°2´¸¸1¼¸rÀ"¼vÑFÔFÈÑMÔMÐMå$ Q¨¨1°°q¸AÐ>Ñ>Ô>ˆÝ˜DŸMšM¨"¨Q¬%°°B´¸¸A¼ÀÀ2ÄÑGÔGÈØ$%ð	'ñ 	'ô 	'ð 	'ð ˆ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ˆå˜CŸLšL¨¨A¬°°2´¸¸1¼¸rÀ"¼vÑFÔFÈÑMÔMÐMÐMÐMs   ¨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Œ   )r_   r   r   r   r   r   )
r/   r0   r1   rÍ   ÚxiÚyiro   Úres1Úinterp_Úres2s
             r3   Útest_rerun_lwrk2_too_smallz4TestSmoothBivariateSpline.test_rerun_lwrk2_too_smallV  s±   € õ ŒK˜˜A˜rÑ"Ô"ˆÝŒK˜˜A˜rÑ"Ô"ˆØ�‰EˆÝŒ[˜˜Q Ñ$Ô$ˆÝŒ[˜˜Q Ñ$Ô$ˆÝ�q˜!˜QÑÔˆÝ�r˜2˜sÑ#Ô#ˆÝ'¨¨1¨aÑ0Ô0ˆØˆw�r˜2‰ŒˆÝ˜D $Ñ'Ô'Ð'Ð'Ð'r6   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 )Nrt   r&  r£   r'  r)  r*  rÛ   r+  rs   r,  r-  r¥   r.  r  r/  r]   rß   r'   r0  r2  )r˜   r™   r_   r   r   rà   rá   )r/   rã   r0   r1   rÍ   r€   r¦   r3  s           r3   r4  z,TestSmoothBivariateSpline.test_invalid_inpute  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"   )rt   r
  rt   r
  r"   )r€   r¦   r  r	  )r¦   r€   r  r	  r‚   rƒ   )r_   r
   r   rï   r   )r/   r0   r1   rÍ   r€   r¦   rð   r²   s           r3   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Ð7r6   N)	rE   rF   rG   r4   r?   r   rN  r4  rñ   rH   r6   r3   r=  r=  &  s{   € € € € € ðNð Nð NðNð Nð NðNð Nð Nð6(ð (ð (ð*Eð *Eð *EðX8ð 8ð 8ð 8ð 8r6   r=  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"   ri   r   rK   )r   r   r   r   r   r   r:  ÚTÚlut_lsqÚdataÚnew_lonsÚnew_lats)r/   ÚnthetaÚnphiÚthetaÚphirX  ÚknotstÚknotspÚknotdataÚlatsÚlonsrW  s               r3   Ú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”}�}�}r6   c                 óº   — t          | j                             ¦   «         d¦  «         t          |                      | j        | j        ¦  «        | j        ¦  «         d S )Nr'   )r   rW  r-   r   rZ  rY  rX  ©r/   s    r3   r4   z1TestLSQSphereBivariateSpline.test_linear_constant³  sU   € Ý˜DœL×5Ò5Ñ7Ô7¸Ñ=Ô=Ð=Ý! $§,¢,¨t¬}¸d¼mÑ"LÔ"LØ"&¤)ñ	-ô 	-ð 	-ð 	-ð 	-r6   c                 óâ   — t          |                      g g ¦  «        t          j        d¦  «        ¦  «         t          |                      g g d¬¦  «        t          j        d¦  «        ¦  «         d S ©Nr¾   Fr"  r$  )r   rW  r_   r‘   rf  s    r3   rW   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ÐSr6   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 )NrT  rƒ   r"   ri   r   rK   çš™™™™™¹¿rt   r'  útheta should be between [0, pi]r‚   çš™™™™™ñ?úphi should be between [0, 2pi]r'   ztt should be between (0, pi)ztp should be between (0, 2pi)r#   ©	rs   rt   r)   rƒ   rt   r)   rƒ   rt   rt   rÛ   r,  r0  r2  )r   r   r   r   r˜   r™   r   r   r:  rV  rà   rá   r_   r–   r
   )r/   r[  r\  r]  r^  rX  r_  r`  r3  Úinvalid_thetaÚinvalid_latsrc  Úinvalid_phirb  Úinvalid_lonsÚinvalid_knotstÚinvalid_knotspÚ	invalid_ws                     r3   r4  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 )	NrT  rƒ   r"   ri   r   rK   rÛ   rt   )
r   r   r   r   r   r:  r   rV  rï   r   )r/   r[  r\  r]  r^  rb  rc  rX  r_  r`  r€   rð   r²   s                r3   rñ   z2TestLSQSphereBivariateSpline.test_array_like_input  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ÐAr6   N©rE   rF   rG   rd  r4   rW   r4  rñ   rH   r6   r3   rR  rR     sn   € € € € € ð6ð 6ð 6ð$-ð -ð -ð
Tð Tð TðREð REð REðhBð Bð Bð Bð Br6   rR  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  ç    _ Br]   )r
   r   r   r2   )r/   r]  r^  rþ   s       r3   rd  z,TestSmoothSphereBivariateSpline.setup_method*  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ˆŒˆˆr6   c                 ó¶   — t          | j                             ¦   «         d¦  «         t          |                      g d¢ddg¦  «        ddgddgddgg¦  «         d S )Nr'   r(   r"   r)   r$   )r   r2   r-   r   rf  s    r3   r4   z4TestSmoothSphereBivariateSpline.test_linear_constant2  sj   € Ý˜DœH×1Ò1Ñ3Ô3°RÑ8Ô8Ð8Ý! $§(¢(¨;¨;¨;¸¸3°xÑ"@Ô"@Ø$% q 6¨A¨q¨6°A°q°6Ð":ñ	<ô 	<ð 	<ð 	<ð 	<r6   c                 óâ   — t          |                      g g ¦  «        t          j        d¦  «        ¦  «         t          |                      g g d¬¦  «        t          j        d¦  «        ¦  «         d S rh  )r   r2   r_   r‘   rf  s    r3   rW   z0TestSmoothSphereBivariateSpline.test_empty_input7  sX   € Ý! $§(¢(¨2¨rÑ"2Ô"2µB´H¸U±O´OÑDÔDÐDÝ! $§(¢(¨2¨r¸ (Ñ">Ô">ÅÄÈÁÄÑOÔOÐOÐOÐOr6   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  rj  r|  r]   rk  rl  rm  rt   gÍÌÌÌÌÌ @rn  ©r€   r^   r,  rs   ús should be positiver0  r2  )r
   r   r˜   r™   r   rà   rá   )r/   r]  r^  rþ   r3  ro  rq  ru  s           r3   r4  z2TestSmoothSphereBivariateSpline.test_invalid_input;  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  )	rt   rt   rt   rt   rt   rt   rt   rt   rt   r|  r€  rt   )r_   r
   r   r   rï   r   )r/   r]  r^  rþ   r€   rð   r²   s          r3   rñ   z5TestSmoothSphereBivariateSpline.test_array_like_inputm  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ÐAr6   Nrw  rH   r6   r3   ry  ry  )  sn   € € € € € ðFð Fð Fð<ð <ð <ð
Pð Pð Pð0Eð 0Eð 0EðdBð Bð Bð Bð Br6   ry  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 )NrJ   ©r"   r#   r"   r#   r"   ©r"   r#   r$   r#   r"   ©r"   r#   r#   r#   r"   ©r
   r   r   rA  s        r3   Útest_defaultsz%TestRectBivariateSpline.test_defaults  s�   € Ý�+�+�+ÑÔˆÝ�+�+�+ÑÔˆÝ�;�;�;˜{˜{˜{¨;¨;¨;°{°{°{À;À;À;ÐOÑPÔPˆÝ! ! A aÑ(Ô(ˆÝ! # # a¨¡(¤(¨1Ñ-Ô-Ð-Ð-Ð-r6   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 )NrJ   r†  r‡  rˆ  )r"   çffffff@g333333@rƒ   çffffff
@ç333333ó?r$   )r"   r�  rŽ  r�   g      @rt   r$   c                 ó:   •— g | ]\  }} ‰||¦  «        d          ‘ŒS ©r¾   rH   ©Ú.0r›   r  r2   s      €r3   ú
<listcomp>z9TestRectBivariateSpline.test_evaluate.<locals>.<listcomp>�  ó,   ø€ Ð@Ð@Ð@©&¨"¨b�S�S˜˜R‘[”[ Ô%Ð@Ð@Ð@r6   )r
   r   Úevr  r   )	r/   r0   r1   rÍ   rI  rJ  ÚziÚzi2r2   s	           @r3   Útest_evaluatez%TestRectBivariateSpline.test_evaluate†  sÉ   ø€ Ý�+�+�+ÑÔˆÝ�+�+�+ÑÔˆÝ�;�;�;˜{˜{˜{¨;¨;¨;°{°{°{À;À;À;ÐOÑPÔPˆÝ! ! A aÑ(Ô(ˆà,Ð,Ð,ˆØ,Ð,Ð,ˆØ�VŠV�B˜‰^Œ^ˆÝÐ@Ð@Ð@Ð@µC¸¸B±K´KÐ@Ñ@Ô@ÑAÔAˆå˜B Ñ$Ô$Ð$Ð$Ð$r6   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 )NrJ   r†  r‡  rˆ  ©r   r   iìÿÿÿr   r   ©r   r   r‹   r   r   ©r   r   r9   r   r   ©r   r   iõÿÿÿr   r   rj   ©r9   rŽ   r   r"   éüÿÿÿ©r   r)   r   g      ø¿r   ©r#   r  r   ç      Ð¿r¿   ©é(   içÿÿÿr   é   iØÿÿÿ©iæÿÿÿg     @0@r   g     @0Àé   ©rŠ   rK   r   éûÿÿÿrh   ©é   g     €+Àr   g     €+@iêÿÿÿr"   ©Údx©Údy)r­  r¯  r‰  ©r/   r0   r1   rÍ   r­  r¯  Údxdyr2   s           r3   Ú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Ñ:Ô:Ð:Ð:Ð:r6   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 )NrJ   r†  r‡  rˆ  ©r   r   gUUUUUUå?r   r   ©r9   rŽ   r   r¢  rŸ  ©é    éA   r   é7   é    ç      8@r"   F)r­  r#  )r¯  r#  ©r­  r¯  r#  r‰  r°  s           r3   rf   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ÐEr6   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 )NrJ   r†  r‡  rˆ  rš  r›  rœ  r�  rj   rž  r   r¡  r£  r¦  r¨  rª  r"   r   ©r
   r   r   Úpartial_derivativer°  s           r3   Ú#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ÐKr6   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 )NrJ   r†  r‡  rˆ  r´  rµ  r¶  r»  r"   r   Fr"  r¾  r°  s           r3   Ú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à"&ñ	(ô 	(ð 	(ð 	(ð 	(r6   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$   r9   rˆ   r9   r"   )	r
   r•   r–   r   Úsizer   r˜   r™   r¿  rA  s        r3   Ú'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 )NrJ   r†  r‡  rˆ  Fr"  )r
   r   r   rA  s        r3   Ú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ÐIr6   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$   r9   rK   rJ   r†  r‡  rˆ  úx must be strictly increasing)r#   r#   r$   r9   rK   ú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 yr-  r¥   r.  rs   r]   rß   )r˜   r™   r
   r   rà   rá   )r/   rã   r0   r1   rÍ   r¦   s         r3   r4  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 )NrJ   r†  r‡  rˆ  )r"   rK   r"   rK   r¥   rt   )r
   r   rï   r   )r/   r0   r1   rÍ   r¦   rð   r²   s          r3   rñ   z-TestRectBivariateSpline.test_array_like_input   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ÐAr6   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 )Nr*  r   r#   rd   r]   r¶   r$   çü©ñÒMbP?rÉ  rÊ  )r_   ÚrandomÚuniformr   r   r   rn   r–   r˜   r™   rà   rá   )r/   ÚNSampÚThetaÚPhiÚDataÚInterpolatorÚNLonÚNLatÚGridPosLatsÚGridPosLonsÚnonGridPosLatsr3  ÚnonGridPosLonss                r3   Útest_not_increasing_inputz1TestRectBivariateSpline.test_not_increasing_input,  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)rE   rF   rG   rŠ  r˜  r²  rf   rÀ  rÂ  rÅ  rÇ  r4  rñ   rÛ  rH   r6   r3   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r6   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#   rP   ©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/   r1   r0   rÍ   r2   s        r3   rŠ  z+TestRectSphereBivariateSpline.test_defaultsK  s£   € Ý�T˜1�R™4 ™9 aÑ(Ô(ˆÝ�T�2˜d™7 AÑ&Ô&ˆÝ�?�?�? ? ? ?°?°?°?Ø"�?�? ? ? ?°?°?°?Ø"�?�?ð$ñ %ô %ˆõ (¨¨!¨AÑ.Ô.ˆÝ! # # a¨¡(¤(¨1Ñ-Ô-Ð-Ð-Ð-r6   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#   rP   rá  râ  rã  )r®   r"   rŒ  gÍÌÌÌÌÌ@r
  gìQ¸…ë@g      @)r)   r  rl  gÍÌÌÌÌÌÜ?gj¼t“Î?rt   ç-Cëâ6?c                 ó:   •— g | ]\  }} ‰||¦  «        d          ‘ŒS r�  rH   r‘  s      €r3   r“  z?TestRectSphereBivariateSpline.test_evaluate.<locals>.<listcomp>^  r”  r6   )r   r   r
   r   r•  r  r   )	r/   r1   r0   rÍ   rJ  rI  r–  r—  r2   s	           @r3   r˜  z+TestRectSphereBivariateSpline.test_evaluateT  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 Ñ$Ô$Ð$Ð$Ð$r6   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@r'   ç     àu@rQ   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 lessr]   r�  ©r_   ÚdotÚ
atleast_2dr   rV  Úabsr˜   r™   r   r   rà   rá   ©r/   rX  r3  rb  rc  s        r3   r4  z0TestRectSphereBivariateSpline.test_invalid_inputa  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#   rP   rá  râ  rã  ç{®Gáz”?r"   )Údthetar¬  ræ  ©Úrtolrm   )Údphir®  )r   r  ç�íµ ÷Æ°>©r­  r¯  r1  rÍ  r   F©r   r#  r"  ©r  r#  ©r   r  r#  )r   r   r
   r   r   Ú_numdiff_2dr   r¿  rä  s        r3   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Ø!¨ð	.ñ 	.ô 	.ð 	.õ 	˜3˜3˜q !¨AÐ.Ñ.Ô.Ø7˜3×1Ò1°!°QÑ7Ô7¸¸1Ñ=Ô=ñ	?ô 	?ð 	?å˜3˜3˜q !¨!Ð,Ñ,Ô,Ø7˜3×1Ò1°!°QÑ7Ô7¸¸1Ñ=Ô=ñ	?ô 	?ð 	?å˜3˜3˜q !¨A°AÐ6Ñ6Ô6Ø7˜3×1Ò1°!°QÑ7Ô7¸¸1Ñ=Ô=ñ	?ô 	?ð 	?õ 	˜3˜3˜q !¨A°EÐ:Ñ:Ô:Ø7˜3×1Ò1°!°QÑ7Ô7¸¸1À5ÐIÑIÔIñ	Kô 	Kð 	Kå˜3˜3˜q !¨!°%Ð8Ñ8Ô8Ø7˜3×1Ò1°!°QÑ7Ô7¸¸1À5ÐIÑIÔIñ	Kô 	Kð 	Kå˜3˜3˜q !¨A°A¸EÐBÑBÔBØ7˜3×1Ò1°!°QÑ7Ô7¸¸1À5ÐIÑIÔIñ	Kô 	Kð 	Kð 	Kð 	Kr6   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¦  «        }t	           ‰||dd	¬
¦  «        j        |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#   rP   rá  râ  rã  rÿ  r"   Fr  c                 ó    •—  ‰| |d¬¦  «        S ©NFr"  rH   ©r0   r1   r2   s     €r3   ú<lambda>z@TestRectSphereBivariateSpline.test_derivatives.<locals>.<lambda>³  ó   ø€ °°°A°a¸UÐ0CÑ0CÔ0C€ r6   r¬  ræ  r  r  c                 ó    •—  ‰| |d¬¦  «        S r  rH   r  s     €r3   r  z@TestRectSphereBivariateSpline.test_derivatives.<locals>.<lambda>¶  r  r6   r®  r  c                 ó    •—  ‰| |d¬¦  «        S r  rH   r  s     €r3   r  z@TestRectSphereBivariateSpline.test_derivatives.<locals>.<lambda>¹  r  r6   r  r  rÍ  )r   r   r
   r   r   r   r   r	  rä  s       @r3   rf   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�S˜˜A a¨eÐ4Ñ4Ô4Ô:¸A¼GÑDÔDÐDÝ˜˜˜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¸$ð@ñ @ô @à!¨ð	.ñ 	.ô 	.ð 	.ð 	.ð 	.r6   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í  r'   rî  rQ   r   rï  rð  rñ  r£   é´   ró  rô  rõ  rö  r÷  rŽ   r]   r�  rø  rü  s        r3   Ú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   )r/   r1   r0   rÍ   rð   r²   s         r3   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Ð9r6   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À)r_   r
   r   Úradiansr   r   )r/   rb  rc  ÚmeshrX  Úlat_rÚlon_rÚinterpolatorÚ	query_latÚ	query_lonÚdata_interpÚanss               r3   Ú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Ð3r6   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£   )rQ   rQ   ))TT)TF)FFr   )r^   Úpole_continuity)r_   rn   r   r‘   r   )r/   ÚuÚvrþ   Úps        r3   Ú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r6   N)rE   rF   rG   rŠ  r˜  r4  r²  rf   r  rñ   r$  r*  rH   r6   r3   rÝ  rÝ  J  s¦   € € € € € ð.ð .ð .ð%ð %ð %ð =ð  =ð  =ðD Kð  Kð  KðD.ð .ð .ð0 =ð  =ð  =ðD:ð :ð :ð4ð 4ð 4ðGð Gð Gð Gð Gr6   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™   )Úfuncr0   r1   r­  r¯  r1  s         r3   r	  r	    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Ð4r6   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@r9   r)   g     €4@rà  r0  r   r*  rt   c                 ó:   •— g | ]}t          j        ‰|¦  «        ‘ŒS rH   )r_   Úroll)r’  ÚirÍ   s     €r3   r“  z<Test_DerivedBivariateSpline.setup_method.<locals>.<listcomp>*  s#   ø€ Ð9Ð9Ð9 a•B”G˜A˜q‘M”MÐ9Ð9Ð9r6   )r_   ÚconcatenateÚlistr  rÀ   r   r   rû   rü   r   rW  r   Ú
lut_smoothr
   rÄ  r   Úlut_rectÚ	itertoolsÚproductÚorders)r/   r0   r1   rý   rÑ   rÒ   ÚzzrÍ   s          @r3   rd  z(Test_DerivedBivariateSpline.setup_method  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 ]X\  }}| j                             ||¦  «        } |ddd¬¦  «        }|                      dd||d¬¦  «        }t          ||¦  «         ŒYd S )Nrd   Fr"  r¼  )r;  rW  r¿  r   ©r/   ÚnuxÚnuyÚlut_derrÁ   rÂ   s         r3   Útest_creation_from_LSQz2Test_DerivedBivariateSpline.test_creation_from_LSQ.  s|   € Øœð 	ð 	‰HˆC�Ø”l×5Ò5°c¸3Ñ?Ô?ˆGØ�˜˜S uÐ-Ñ-Ô-ˆAØ—’˜S #¨#°#¸E�ÑBÔBˆAÝ˜˜AÑÔÐÐð		ð 	r6   c                 óÆ   — | j         D ]X\  }}| j                             ||¦  «        } |ddd¬¦  «        }|                      dd||d¬¦  «        }t          ||¦  «         ŒYd S )Ng      @Fr"  r¼  )r;  r7  r¿  r   r>  s         r3   Útest_creation_from_Smoothz5Test_DerivedBivariateSpline.test_creation_from_Smooth5  s|   € Øœð 	ð 	‰HˆC�Ø”o×8Ò8¸¸cÑBÔBˆGØ�˜˜S uÐ-Ñ-Ô-ˆAØ—’  S¨S°S¸u�ÑEÔEˆAÝ˜˜AÑÔÐÐð		ð 	r6   c                 óÆ   — | j         D ]X\  }}| j                             ||¦  «        } |ddd¬¦  «        }|                      dd||d¬¦  «        }t          ||¦  «         ŒYd S )Nrƒ   r)   Fr"  r¼  )r;  r8  r¿  r   r>  s         r3   Útest_creation_from_Rectz3Test_DerivedBivariateSpline.test_creation_from_Rect<  s|   € Øœð 	ð 	‰HˆC�Ø”m×6Ò6°s¸CÑ@Ô@ˆGØ�˜˜S uÐ-Ñ-Ô-ˆAØ—’˜c 3¨3°3¸U�ÑCÔCˆAÝ˜˜AÑÔÐÐð		ð 	r6   c                 ó¤   — | j                              dd¦  «        }t          t          ¦  «        5  |j         d d d ¦  «         d S # 1 swxY w Y   d S ©Nr"   )r8  r¿  r˜   ÚAttributeErrorÚfp©r/   Úders     r3   Útest_invalid_attribute_fpz5Test_DerivedBivariateSpline.test_invalid_attribute_fpC  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 rH  )r7  r¿  r˜   rI  r-   rK  s     r3   Ú#test_invalid_attribute_get_residualz?Test_DerivedBivariateSpline.test_invalid_attribute_get_residualH  s�   € ØŒo×0Ò0°°AÑ6Ô6ˆÝ�>Ñ*Ô*ð 	ð 	Ø×ÒÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   °AÁAÁAN)
rE   rF   rG   Ú__doc__rd  rB  rD  rF  rM  rO  rH   r6   r3   r/  r/    s{   € € € € € ðð ðBð Bð Bð"ð ð ðð ð ðð ð ðð ð ð
ð ð ð ð r6   r/  )r   r   r+  ),r9  Únumpyr_   Únumpy.testingr   r   r   r   r   r   Úpytestr	   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   r   r  r=  rR  ry  r„  rÝ  r	  r/  rH   r6   r3   ú<module>rV     s  ðà Ð Ð Ð Ø Ð Ð Ð ðGð Gð Gð Gð Gð Gð Gð Gð Gð Gð Gð Gð Gð Gð Gð Gà *Ð *Ð *Ð *Ð *Ð *à BÐ 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ð#ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ð #ðs$ð s$ð s$ð s$ð s$ñ s$ô s$ð s$ðl\6ð \6ð \6ð \6ð \6ñ \6ô \6ð \6ð~w8ð w8ð w8ð w8ð w8ñ w8ô w8ð w8ðt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r6   