§
    µ³ÙgÅ´  ã                   ó$  — d dl Z d dlZd dlZd dlmZ d dlmZmZm	Z	 d dl
mZ d dlmZ d dlmZmZmZmZmZ d dlmZ d dlmZ d d	lmZ ej                             d
ej        ¦  «        Z G d„ d¦  «        Z G d„ d¦  «        Z G d„ d¦  «        Z dS )é    N)Úassert_warns)Úxp_assert_equalÚxp_assert_closeÚassert_array_almost_equal)Úskip_xp_invalid_arg)Úraises)ÚRegularGridInterpolatorÚinterpnÚRectBivariateSplineÚNearestNDInterpolatorÚLinearNDInterpolator)Úmatrix)ÚComplexWarning)Ú_run_concurrent_barrierÚmethodc                   óº  — e Zd Zd„ Zd„ Zd„ Zd„ Zed„ ¦   «         Ze	j
                             dg d¢¦  «        d„ ¦   «         Ze	j
                             d	e ej        g d
¢g d¢g d¢g¦  «        fe ej        g d¢¦  «        fg¦  «        d„ ¦   «         Zd„ Zed„ ¦   «         Zd„ Zd„ Zd„ Ze	j
                             d ej        g d¢¦  «        df ej        g d¢¦  «        df ej        g d¢¦  «        df ej        g d¢¦  «        df ej        g d¢¦  «        dfg¦  «        d„ ¦   «         Zd„ Zd „ Zd!„ Zd"„ Zd#„ Zd$„ Zd%„ Zd&„ Ze	j
                             dd'd(g¦  «        d)„ ¦   «         Zd*„ Zd+„ Z d,„ Z!e	j
                             d-d.ej"        ej#        g¦  «        e	j
                             dd(d'g¦  «        d/„ ¦   «         ¦   «         Z$e	j
                             dd'd(g¦  «        d0„ ¦   «         Z%e	j
                             dd'd(g¦  «        d1„ ¦   «         Z&e	j
         '                    d2¦  «        ee	j
                             d3d4d5„ fd6d7„ fd8d9„ fd:d;„ fg¦  «        d<„ ¦   «         ¦   «         ¦   «         Z(d=„ Z)ed>„ ¦   «         Z*e	j
         '                    d:¦  «        ed?„ ¦   «         ¦   «         Z+ee	j
                             d@dAdBg¦  «        dC„ ¦   «         ¦   «         Z,dD„ Z-e	j
                             dEej.        ej/        ej0        ej1        g¦  «        e	j
                             dFej.        ej/        g¦  «        dG„ ¦   «         ¦   «         Z2dH„ Z3e	j
        j4        dI„ ¦   «         Z5d.S )JÚTestRegularGridInterpolatorc                 óÊ  — dgdz  }t          j        g d¢¦  «        }|d d …t           j        t           j        t           j        f         }|t           j        d d …t           j        t           j        f         }|t           j        t           j        d d …t           j        f         }|t           j        t           j        t           j        d d …f         }||dz  z   |dz  z   |dz  z   }||fS )N©ç        ç      à?ç      ð?é   é
   éd   éè  ©ÚnpÚasarrayÚnewaxis©ÚselfÚpointsÚvaluesÚvalues0Úvalues1Úvalues2Úvalues3s          úV/granary/edev/quantum/lib/python3.11/site-packages/scipy/interpolate/tests/test_rgi.pyÚ_get_sample_4dz*TestRegularGridInterpolator._get_sample_4d   s¿   € à� !Ñ#ˆÝ”˜L˜L˜LÑ)Ô)ˆØ˜˜˜�BœJ­¬
µB´JÐ>Ô?ˆØ�œ Q Q Q­¬
µB´JÐ>Ô?ˆØ�œ¥R¤Z°°°µB´JÐ>Ô?ˆØ�œ¥R¤Zµ´¸Q¸Q¸QÐ>Ô?ˆØ˜G b™LÑ(¨7°S©=Ñ8¸7ÀT¹>ÑIˆØ�vˆ~Ðó    c                 óØ  — dgdz  dgdz  z   }t          j        g d¢¦  «        }|d d …t           j        t           j        t           j        f         }|t           j        d d …t           j        t           j        f         }|t           j        t           j        d d …t           j        f         }|t           j        t           j        t           j        d d …f         }||dz  z   |dz  z   |dz  z   }||fS ©Nr   é   )r   ç      @ç      $@r   r   r   r   r!   s          r)   Ú_get_sample_4d_2z,TestRegularGridInterpolator._get_sample_4d_2'   sË   € à� !Ñ# } o¸Ñ&9Ñ9ˆÝ”˜L˜L˜LÑ)Ô)ˆØ˜˜˜�BœJ­¬
µB´JÐ>Ô?ˆØ�œ Q Q Q­¬
µB´JÐ>Ô?ˆØ�œ¥R¤Z°°°µB´JÐ>Ô?ˆØ�œ¥R¤Zµ´¸Q¸Q¸QÐ>Ô?ˆØ˜G b™LÑ(¨7°S©=Ñ8¸7ÀT¹>ÑIˆØ�vˆ~Ðr+   c                 óÊ  — dgdz  }t          j        g d¢¦  «        }|d d …t           j        t           j        t           j        f         }|t           j        d d …t           j        t           j        f         }|t           j        t           j        d d …t           j        f         }|t           j        t           j        t           j        d d …f         }||dz  z   |dz  z   |dz  z   }||fS )N©r   r   r   ç      ø?ç       @ç      @ç      @r   r   r   r   r   r!   s          r)   Ú_get_sample_4d_3z,TestRegularGridInterpolator._get_sample_4d_32   sÃ   € à5Ð6¸Ñ:ˆÝ”Ð?Ð?Ð?Ñ@Ô@ˆØ˜˜˜�BœJ­¬
µB´JÐ>Ô?ˆØ�œ Q Q Q­¬
µB´JÐ>Ô?ˆØ�œ¥R¤Z°°°µB´JÐ>Ô?ˆØ�œ¥R¤Zµ´¸Q¸Q¸QÐ>Ô?ˆØ˜G b™LÑ(¨7°S©=Ñ8¸7ÀT¹>ÑIˆØ�vˆ~Ðr+   c                 óÊ  — dgdz  }t          j        ddg¦  «        }|d d …t           j        t           j        t           j        f         }|t           j        d d …t           j        t           j        f         }|t           j        t           j        d d …t           j        f         }|t           j        t           j        t           j        d d …f         }||dz  z   |dz  z   |dz  z   }||fS )N)r   r   r   r   r   r   r   r   r   r!   s          r)   Ú_get_sample_4d_4z,TestRegularGridInterpolator._get_sample_4d_4=   s¿   € à� Ñ!ˆÝ”˜S #˜JÑ'Ô'ˆØ˜˜˜�BœJ­¬
µB´JÐ>Ô?ˆØ�œ Q Q Q­¬
µB´JÐ>Ô?ˆØ�œ¥R¤Z°°°µB´JÐ>Ô?ˆØ�œ¥R¤Zµ´¸Q¸Q¸QÐ>Ô?ˆØ˜G b™LÑ(¨7°S©=Ñ8¸7ÀT¹>ÑIˆØ�vˆ~Ðr+   c                 óJ  — |                       ¦   «         \  }}t          j        g d¢g d¢g d¢g¦  «        }t          ||                     ¦   «         |¬¦  «        } ||                     ¦   «         ¦  «        }t          |||¬¦  «        } ||¦  «        }t          ||¦  «         d S )N©çš™™™™™¹?r=   r   çÍÌÌÌÌÌì?©çš™™™™™É?r=   gÍÌÌÌÌÌÜ?gš™™™™™é?©r   r   r   r   ©r   )r8   r   r   r	   Útolistr   )r"   r   r#   r$   ÚsampleÚinterpÚv1Úv2s           r)   Útest_list_inputz+TestRegularGridInterpolator.test_list_inputH   sÈ   € à×.Ò.Ñ0Ô0‰ˆ�å”Ð/Ð/Ð/Ð1DÐ1DÐ1DØ/Ð/Ð/ð1ñ 2ô 2ˆõ )¨Ø)/¯ª©¬Ø06ð8ñ 8ô 8ˆð ˆV�F—M’M‘O”OÑ$Ô$ˆÝ(¨Ø)/Ø06ð8ñ 8ô 8ˆð ˆV�F‰^Œ^ˆÝ˜˜BÑÔÐÐÐr+   r   )ÚcubicÚquinticÚpchipc                 óž  — |                       ¦   «         \  }}d}t          j        t          |¬¦  «        5  t	          |||¬¦  «         d d d ¦  «         n# 1 swxY w Y   t	          ||¦  «        }t          j        g d¢g d¢g d¢g¦  «        }t          j        t          |¬¦  «        5   |||¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nzpoints in dimension©ÚmatchrB   r<   r?   rA   )r:   Úpytestr   Ú
ValueErrorr	   r   r   )r"   r   r#   r$   rN   rE   rD   s          r)   Útest_spline_dim_errorz1TestRegularGridInterpolator.test_spline_dim_errorY   s~  € à×.Ò.Ñ0Ô0‰ˆ�Ø%ˆõ Œ]�:¨UÐ3Ñ3Ô3ð 	Cð 	CÝ# F¨F¸6ÐBÑBÔBÐBð	Cð 	Cð 	Cñ 	Cô 	Cð 	Cð 	Cð 	Cð 	Cð 	Cð 	Cøøøð 	Cð 	Cð 	Cð 	Cõ )¨°Ñ8Ô8ˆÝ”Ð/Ð/Ð/Ð1DÐ1DÐ1DØ/Ð/Ð/ð1ñ 2ô 2ˆåŒ]�:¨UÐ3Ñ3Ô3ð 	*ð 	*ØˆF�6 &Ð)Ñ)Ô)Ð)ð	*ð 	*ð 	*ñ 	*ô 	*ð 	*ð 	*ð 	*ð 	*ð 	*ð 	*ð 	*øøøð 	*ð 	*ð 	*ð 	*ð 	*ð 	*s#   µAÁAÁAÂ'CÃCÃ	Czpoints_values, sampler<   r?   rA   ©r=   r=   r0   ç      "@c                 ó¶   —  || ¦  «        \  }}t          ||d¬¦  «        } ||¦  «        }t          ||d¬¦  «        } ||¦  «        }t          ||¦  «         d S )NÚlinearrB   Úslinear)r	   r   )r"   Úpoints_valuesrD   r#   r$   rE   rF   rG   s           r)   Útest_linear_and_slinear_closez9TestRegularGridInterpolator.test_linear_and_slinear_closei   so   € ð '˜ tÑ,Ô,‰ˆ�Ý(¨°ÀÐIÑIÔIˆØˆV�F‰^Œ^ˆÝ(¨°À	ÐJÑJÔJˆØˆV�F‰^Œ^ˆÝ˜˜BÑÔÐÐÐr+   c                 ó*  — |                       ¦   «         \  }}t          j        g d¢g d¢g d¢g¦  «        }t          ||d¬¦  «        }t	          t
          ¦  «        5   ||d¬¦  «         d d d ¦  «         n# 1 swxY w Y   t           ||d¬¦  «        t          j        g d	¢¦  «        d
¬¦  «         t           ||d¬¦  «        t          j        g d¢¦  «        d
¬¦  «         t           ||d¬¦  «        t          j        g d¢¦  «        d¬¦  «         d S )Nr<   r?   rA   rV   rB   é   )Únu)rZ   r   r   r   )r   rZ   rZ   çVçž¯Ò<©Úatol)r   rZ   r   r   )r0   r   r   )r   rZ   rZ   r   )r   r   r   gê-�™—�=)r*   r   Úarrayr	   Úassert_raisesrP   r   r   )r"   r#   r$   rD   rE   s        r)   Útest_derivativesz,TestRegularGridInterpolator.test_derivatives   s™  € Ø×,Ò,Ñ.Ô.‰ˆ�Ý”Ð3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ñ 6ô 6ˆõ )¨°À	ÐJÑJÔJˆå�:Ñ&Ô&ð 	!ð 	!àˆF�6˜aÐ Ñ Ô Ð ð	!ð 	!ð 	!ñ 	!ô 	!ð 	!ð 	!ð 	!ð 	!ð 	!ð 	!øøøð 	!ð 	!ð 	!ð 	!õ 	˜˜˜v¨,Ð7Ñ7Ô7Ýœ
 ; ; ;Ñ/Ô/°eð	=ñ 	=ô 	=ð 	=å˜˜˜v¨,Ð7Ñ7Ô7Ýœ
 > > >Ñ2Ô2¸ð	@ñ 	@ô 	@ð 	@õ 	˜˜˜v¨,Ð7Ñ7Ô7Ýœ
 ; ; ;Ñ/Ô/°eð	=ñ 	=ô 	=ð 	=ð 	=ð 	=s   ÁA5Á5A9Á<A9c                 óœ  — |dk    rt          j        d¦  «         |                      ¦   «         \  }}|d|z  z
  }t          j        g d¢g d¢g d¢g¦  «        }t          |||¬¦  «        }t          ||j        |¬¦  «        }t          ||j        |¬¦  «        } ||¦  «        } ||¦  «        d ||¦  «        z  z   }	t          ||	¦  «         d S )	NrK   ú*pchip does not make sense for complex dataù               @r<   r?   rA   rB   ù              ð?)	rO   Úskipr8   r   r   r	   ÚrealÚimagr   )
r"   r   r#   r$   rD   rE   ÚrinterpÚiinterprF   rG   s
             r)   Útest_complexz(TestRegularGridInterpolator.test_complex“   sö   € à�WÒÐÝŒKÐDÑEÔEÐEØ×.Ò.Ñ0Ô0‰ˆ�Ø˜"˜V™)Ñ#ˆÝ”Ð/Ð/Ð/Ð1DÐ1DÐ1DØ/Ð/Ð/ð1ñ 2ô 2ˆõ )¨°ÀÐGÑGÔGˆÝ)¨&°&´+ÀfÐMÑMÔMˆÝ)¨&°&´+ÀfÐMÑMÔMˆàˆV�F‰^Œ^ˆØˆW�V‰_Œ_˜r ' '¨&¡/¤/Ñ1Ñ1ˆÝ˜˜BÑÔÐÐÐr+   c                 ó  — g d¢g d¢}}t          j        ||d¬¦  «        \  }} d„ ||¦  «        }t          ||f|d¬¦  «        }t          ||f|d¬¦  «        } |dd	g¦  «        } |dd	g¦  «        }	t          j        ||	d
d¬¦  «        rJ ‚d S )N)rZ   r.   é   r   Úij)Úindexingc                 ó   — | dz  |dz  z  S )Nr   © ©ÚxÚys     r)   ú<lambda>zATestRegularGridInterpolator.test_cubic_vs_pchip.<locals>.<lambda>¨   s   € ˜q !™t a¨¡d™{€ r+   rI   rB   rK   r4   r.   ç›+¡†›„=r   ©r^   Úrtol)r   Úmeshgridr	   Úallclose)
r"   rs   rt   ÚxgÚygr$   rI   rK   Ú
vals_cubicÚ
vals_pchips
             r)   Útest_cubic_vs_pchipz/TestRegularGridInterpolator.test_cubic_vs_pchip¤   s¹   € Øˆ|ˆ|˜\˜\˜\ˆ1ˆÝ”˜Q ¨DÐ1Ñ1Ô1‰ˆˆBà*Ð*Ð*¨B°Ñ3Ô3ˆÝ'¨¨A¨°¸wÐGÑGÔGˆÝ'¨¨A¨°¸wÐGÑGÔGˆà�U˜C ˜8‘_”_ˆ
Ø�U˜C ˜8‘_”_ˆ
Ý”;˜z¨:¸EÈÐJÑJÔJÐJÐJÐJÐJÐJr+   c                 óÜ   — |                       ¦   «         \  }}t          ||¦  «        }t          j        g d¢¦  «        }t          j        dg¦  «        }t	           ||¦  «        |¦  «         d S )NrR   çÍÌÌÌÌH�@©r1   r	   r   r   r   ©r"   r#   r$   rE   rD   Úwanteds         r)   Útest_linear_xi1dz,TestRegularGridInterpolator.test_linear_xi1d°   sk   € Ø×.Ò.Ñ0Ô0‰ˆ�Ý(¨°Ñ8Ô8ˆÝ”Ð/Ð/Ð/Ñ0Ô0ˆÝ”˜V˜HÑ%Ô%ˆÝ! & &¨¡.¤.°&Ñ9Ô9Ð9Ð9Ð9r+   c                 óì   — |                       ¦   «         \  }}t          ||¦  «        }t          j        g d¢g d¢g d¢g¦  «        }t          j        g d¢¦  «        }t	           ||¦  «        |¦  «         d S )Nr<   r?   rA   ©r�   gš™™™™qŠ@g     \�@©r*   r	   r   r   r   rƒ   s         r)   Útest_linear_xi3dz,TestRegularGridInterpolator.test_linear_xi3d·   s‹   € Ø×,Ò,Ñ.Ô.‰ˆ�Ý(¨°Ñ8Ô8ˆÝ”Ð/Ð/Ð/Ð1DÐ1DÐ1DØ/Ð/Ð/ð1ñ 2ô 2ˆå”Ð2Ð2Ð2Ñ3Ô3ˆÝ! & &¨¡.¤.°&Ñ9Ô9Ð9Ð9Ð9r+   zsample, wanted)r=   r=   r>   r>   g     0‘@)r=   r=   r=   r=   r   ©r   r   r   r   ©r   r   r   r   ç     \‘@)r=   çš™™™™™Ù?g333333ã?r>   g     |�@c                 ó´   — |                       ¦   «         \  }}t          ||d¬¦  «        }t          j        |g¦  «        }t	           ||¦  «        |¦  «         d S )NÚnearestrB   rˆ   )r"   rD   r„   r#   r$   rE   s         r)   Útest_nearestz(TestRegularGridInterpolator.test_nearest¿   s\   € ð ×,Ò,Ñ.Ô.‰ˆ�Ý(¨°À	ÐJÑJÔJˆÝ”˜V˜HÑ%Ô%ˆÝ! & &¨¡.¤.°&Ñ9Ô9Ð9Ð9Ð9r+   c                 óæ   — |                       ¦   «         \  }}t          ||¦  «        }t          j        g d¢g d¢g¦  «        }t          j        ddg¦  «        }t	           ||¦  «        |¦  «         d S )NrŠ   r‹   r   rŒ   rˆ   rƒ   s         r)   Útest_linear_edgesz-TestRegularGridInterpolator.test_linear_edgesÏ   sy   € Ø×,Ò,Ñ.Ô.‰ˆ�Ý(¨°Ñ8Ô8ˆÝ”Ð-Ð-Ð-Ð/?Ð/?Ð/?Ð@ÑAÔAˆÝ”˜R ˜KÑ(Ô(ˆÝ! & &¨¡.¤.°&Ñ9Ô9Ð9Ð9Ð9r+   c                 óÞ  — ddg}t          j        g d¢¦  «        }|d d …t           j        f         }|t           j        d d …f         }||dz  z   }t          t          t
          ||¦  «         ddg}t          t          t
          ||¦  «         ddg}t          t          t
          ||¦  «         g d¢}t          t          t
          ||¦  «         ddg}t          t          t
          ||d¬¦  «         d S )	Nr   )r   r   r   r   )r   )r   r   g      è?r   )r   r   r   ÚundefmethodrB   )r   r   r    r`   rP   r	   )r"   r#   r$   r%   r&   s        r)   Útest_valid_createz-TestRegularGridInterpolator.test_valid_createÖ   sÿ   € à Ð-ˆÝ”˜L˜L˜LÑ)Ô)ˆØ˜˜˜�BœJ˜Ô'ˆØ�œ Q Q Q˜Ô'ˆØ˜G b™LÑ(ˆÝ•jÕ"9¸6À6ÑJÔJÐJØ" LÐ1ˆÝ•jÕ"9¸6À6ÑJÔJÐJØ# \Ð2ˆÝ•jÕ"9¸6À6ÑJÔJÐJØ;Ð;Ð;ˆÝ•jÕ"9¸6À6ÑJÔJÐJØ Ð-ˆÝ•jÕ"9¸6À6Ø*ð	,ñ 	,ô 	,ð 	,ð 	,ð 	,r+   c                 óv  — |                       ¦   «         \  }}t          ||¦  «        }t          j        g d¢g d¢g¦  «        }t	          t
          ||d¦  «         t          j        g d¢g d¢g¦  «        }t	          t
          ||¦  «         t          j        g d¢g d¢g¦  «        }t	          t
          ||¦  «         d S )NrŠ   r‹   r”   )r   r   r   )r   r   r   )r   r   r   çš™™™™™ñ?)r*   r	   r   r   r`   rP   )r"   r#   r$   rE   rD   s        r)   Útest_valid_callz+TestRegularGridInterpolator.test_valid_callè   sÄ   € Ø×,Ò,Ñ.Ô.‰ˆ�Ý(¨°Ñ8Ô8ˆÝ”Ð-Ð-Ð-Ð/?Ð/?Ð/?Ð@ÑAÔAˆÝ•j &¨&°-Ñ@Ô@Ð@Ý”˜\˜\˜\¨<¨<¨<Ð8Ñ9Ô9ˆÝ•j &¨&Ñ1Ô1Ð1Ý”Ð-Ð-Ð-Ð/@Ð/@Ð/@ÐAÑBÔBˆÝ•j &¨&Ñ1Ô1Ð1Ð1Ð1r+   c                 ó^  — |                       ¦   «         \  }}t          ||dd ¬¦  «        }t          j        g d¢g d¢g d¢g d¢g¦  «        }t          j        g d¢¦  «        }t	           ||d¬	¦  «        |¦  «         t          j        g d
¢¦  «        }t	           ||d¬	¦  «        |¦  «         d S )NF©Úbounds_errorÚ
fill_value©çš™™™™™¹¿rž   rž   rž   ©r—   r—   r—   r—   ©é   çÍÌÌÌÌÌ @çš™™™™™ñ¿iõÿÿÿ©r¢   r¢   r£   r£   )r   rŒ   ç      &@r¥   r�   rB   )gfffffÆ[Àgfffff“@g     žÅÀgš™™™™‹’ÀrU   rˆ   rƒ   s         r)   Útest_out_of_bounds_extrapz5TestRegularGridInterpolator.test_out_of_bounds_extrapò   sá   € Ø×,Ò,Ñ.Ô.‰ˆ�Ý(¨°ÀeØ48ð:ñ :ô :ˆå”Ð1Ð1Ð1Ð3GÐ3GÐ3GØ1Ð1Ð1Ð3IÐ3IÐ3IðKñ Lô Lˆå”Ð1Ð1Ð1Ñ2Ô2ˆÝ! & &¨¸	Ð"BÑ"BÔ"BÀFÑKÔKÐKÝ”Ð>Ð>Ð>Ñ?Ô?ˆÝ! & &¨¸Ð"AÑ"AÔ"AÀ6ÑJÔJÐJÐJÐJr+   c                 ó^  — |                       ¦   «         \  }}t          ||dd ¬¦  «        }t          j        g d¢g d¢g d¢g d¢g¦  «        }t          j        g d¢¦  «        }t	           ||d¬	¦  «        |¦  «         t          j        g d
¢¦  «        }t	           ||d¬	¦  «        |¦  «         d S )NFrš   r�   rŸ   r    r¤   )r   r¥   r¥   r¥   r�   rB   )g333333(Àg33333£`@g     ´�Àgš™™™™yXÀrU   r‚   rƒ   s         r)   Útest_out_of_bounds_extrap2z6TestRegularGridInterpolator.test_out_of_bounds_extrap2ý   sá   € Ø×.Ò.Ñ0Ô0‰ˆ�Ý(¨°ÀeØ48ð:ñ :ô :ˆå”Ð1Ð1Ð1Ð3GÐ3GÐ3GØ1Ð1Ð1Ð3IÐ3IÐ3IðKñ Lô Lˆå”Ð/Ð/Ð/Ñ0Ô0ˆÝ! & &¨¸	Ð"BÑ"BÔ"BÀFÑKÔKÐKÝ”Ð9Ð9Ð9Ñ:Ô:ˆÝ! & &¨¸Ð"AÑ"AÔ"AÀ6ÑJÔJÐJÐJÐJr+   c                 ó  — |                       ¦   «         \  }}t          ||dt          j        ¬¦  «        }t          j        g d¢g d¢g d¢g¦  «        }t          j        t          j        t          j        t          j        g¦  «        }t           ||d¬¦  «        |¦  «         t           ||d¬¦  «        |¦  «         t          j        g d	¢g d
¢g d¢g¦  «        }t          j        g d¢¦  «        }t           ||¦  «        |¦  «         d S )NFrš   r�   rŸ   r¤   r�   rB   rU   r<   r?   rA   r‡   )r*   r	   r   Únanr   r   rƒ   s         r)   Útest_out_of_bounds_fillz3TestRegularGridInterpolator.test_out_of_bounds_fill  s&  € Ø×,Ò,Ñ.Ô.‰ˆ�Ý(¨°ÀeÝ46´Fð<ñ <ô <ˆå”Ð1Ð1Ð1Ð3GÐ3GÐ3GØ3Ð3Ð3ð5ñ 6ô 6ˆå”�RœV¥R¤V­R¬VÐ4Ñ5Ô5ˆÝ! & &¨¸	Ð"BÑ"BÔ"BÀFÑKÔKÐKÝ! & &¨¸Ð"AÑ"AÔ"AÀ6ÑJÔJÐJÝ”Ð/Ð/Ð/Ð1DÐ1DÐ1DØ/Ð/Ð/ð1ñ 2ô 2ˆå”Ð2Ð2Ð2Ñ3Ô3ˆÝ! & &¨¡.¤.°&Ñ9Ô9Ð9Ð9Ð9r+   c                 ó|  — |                       ¦   «         \  }}t          ||d¬¦  «        }t          j        |Ž }d„ |D ¦   «         }t	          j        |¦  «        }|                     d¦  «        }t          ||¦  «        }t	          j        g d¢g d¢g d¢g¦  «        }t           ||¦  «         ||¦  «        ¦  «         d S )Nr�   rB   c                 ó   — g | ]}|‘ŒS rq   rq   ©Ú.0Úps     r)   ú
<listcomp>zJTestRegularGridInterpolator.test_nearest_compare_qhull.<locals>.<listcomp>  ó   € Ð0Ð0Ð0˜a˜Ð0Ð0Ð0r+   éÿÿÿÿr<   r?   rA   )	r*   r	   Ú	itertoolsÚproductr   r   Úreshaper   r   ©r"   r#   r$   rE   Úpoints_qhullÚvalues_qhullÚinterp_qhullrD   s           r)   Útest_nearest_compare_qhullz6TestRegularGridInterpolator.test_nearest_compare_qhull  sÓ   € Ø×,Ò,Ñ.Ô.‰ˆ�Ý(¨°À	ÐJÑJÔJˆÝ Ô(¨&Ð1ˆØ0Ð0 <Ð0Ñ0Ô0ˆÝ”z ,Ñ/Ô/ˆØ—~’~ bÑ)Ô)ˆÝ,¨\¸<ÑHÔHˆÝ”Ð/Ð/Ð/Ð1DÐ1DÐ1DØ/Ð/Ð/ð1ñ 2ô 2ˆå! & &¨¡.¤.°,°,¸vÑ2FÔ2FÑGÔGÐGÐGÐGr+   c                 óx  — |                       ¦   «         \  }}t          ||¦  «        }t          j        |Ž }d„ |D ¦   «         }t	          j        |¦  «        }|                     d¦  «        }t          ||¦  «        }t	          j        g d¢g d¢g d¢g¦  «        }t           ||¦  «         ||¦  «        ¦  «         d S )Nc                 ó   — g | ]}|‘ŒS rq   rq   r®   s     r)   r±   zITestRegularGridInterpolator.test_linear_compare_qhull.<locals>.<listcomp>&  r²   r+   r³   r<   r?   rA   )	r*   r	   r´   rµ   r   r   r¶   r   r   r·   s           r)   Útest_linear_compare_qhullz5TestRegularGridInterpolator.test_linear_compare_qhull"  sÎ   € Ø×,Ò,Ñ.Ô.‰ˆ�Ý(¨°Ñ8Ô8ˆÝ Ô(¨&Ð1ˆØ0Ð0 <Ð0Ñ0Ô0ˆÝ”z ,Ñ/Ô/ˆØ—~’~ bÑ)Ô)ˆÝ+¨L¸,ÑGÔGˆÝ”Ð/Ð/Ð/Ð1DÐ1DÐ1DØ/Ð/Ð/ð1ñ 2ô 2ˆå! & &¨¡.¤.°,°,¸vÑ2FÔ2FÑGÔGÐGÐGÐGr+   r�   rU   c                 ó.  — t          j        ddd¦  «        }t          j        ddd¦  «        }t          d¦  «        }t          ||f||¬¦  «        } |dd	g¦  «        }t          ||f|j        |¬¦  «        } |dd	g¦  «        }t          ||d
¬¦  «         d S )Nr   r.   é   rZ   é   ©rÀ   rÁ   rB   r�   çffffffæ?F©Úcheck_dtype)r   ÚlinspaceÚMyValuer	   Ú_vr   )r"   r   rs   rt   r$   rE   rF   rG   s           r)   Útest_duck_typed_valuesz2TestRegularGridInterpolator.test_duck_typed_values.  s¦   € åŒK˜˜1˜aÑ Ô ˆÝŒK˜˜1˜aÑ Ô ˆå˜‘”ˆå(¨!¨Q¨°ÀÐGÑGÔGˆØˆV�S˜#�JÑÔˆå(¨!¨Q¨°´À6ÐJÑJÔJˆØˆV�S˜#�JÑÔˆÝ˜˜B¨EÐ2Ñ2Ô2Ð2Ð2Ð2r+   c                 óD  — t           j                             d¦  «         t          j        ddd¦  «        }t          j        ddd¦  «        }t           j                             dd¦  «        }t          ||f|d¬¦  «         t          t          t
          ||f|d¬¦  «         d S )	NéÒ  r   r.   rÀ   rZ   rÁ   ©rœ   y      ð?       @)r   ÚrandomÚseedrÆ   Úrandr	   r`   rP   )r"   rs   rt   r$   s       r)   Útest_invalid_fill_valuez3TestRegularGridInterpolator.test_invalid_fill_value<  sŸ   € Ý
Œ	�Š�tÑÔÐÝŒK˜˜1˜aÑ Ô ˆÝŒK˜˜1˜aÑ Ô ˆÝ”—’  1Ñ%Ô%ˆõ 	   A ¨¸1Ð=Ñ=Ô=Ð=õ 	•jÕ"9Ø˜!�f˜f°ð	7ñ 	7ô 	7ð 	7ð 	7ð 	7r+   c                 ó˜   — t          j        dd¬¦  «        }d„ |j        D ¦   «         }t          ||¦  «         t          ||d¬¦  «         d S )N©r   é   é   z>f4©Údtypec                 ó6   — g | ]}t          j        |¦  «        ‘ŒS rq   )r   Úarange)r¯   Úns     r)   r±   zCTestRegularGridInterpolator.test_fillvalue_type.<locals>.<listcomp>L  s    € Ð5Ð5Ð5 1•"”)˜A‘,”,Ð5Ð5Ð5r+   r   rÌ   )r   ÚonesÚshaper	   )r"   r$   r#   s      r)   Útest_fillvalue_typez/TestRegularGridInterpolator.test_fillvalue_typeI  sV   € å”˜¨UÐ3Ñ3Ô3ˆØ5Ð5¨¬Ð5Ñ5Ô5ˆå ¨Ñ/Ô/Ð/Ý ¨¸2Ð>Ñ>Ô>Ð>Ð>Ð>r+   c           
      óh  — d„ }t          j        ddd¦  «        }t          j        ddd¦  «        } |t          j        ||dd¬¦  «        Ž }t          ||f|ddd	¬
¦  «        }t	           |t          j        ddgddgddgg¦  «        ¦  «        t          j        g d¢¦  «        d¬¦  «         t	           |t          j        ddgddgddgg¦  «        ¦  «        g d¢d¬¦  «         t	           |t          j        ddg¦  «        ¦  «        |j        dddd¬¦  «         d |_        t	           |ddgddgg¦  «        ddgd¬¦  «         t	           |ddgddgg¦  «        ddgd¬¦  «         t          ||f|ddd ¬
¦  «        }t	           |ddgddgg¦  «        t          j        d d!g¦  «        d¬¦  «         d S )"Nc                 ó   — | |z   S ©Nrq   rr   s     r)   Úfz;TestRegularGridInterpolator.test_length_one_axis.<locals>.fU  s   € Ø�q‘5ˆLr+   rZ   r   rn   T©ro   ÚsparserU   Fée   ©r   r›   rœ   rÀ   )r5   é   é   rv   r]   gffffffö?ç333333@)ç333333@ç333333@ræ   r—   rè   )rÅ   Úcheck_shapeÚcheck_0dr^   ç333333Ó?g      '@gÍÌÌÌÌÌô?g      )@r\   r4   gffffffþ?r�   gÍÌÌÌÌÌü?éüÿÿÿgffffff@r7   rå   )r   rÆ   ry   r	   r   r_   r   rœ   )r"   rà   rs   rt   ÚdatarE   s         r)   Útest_length_one_axisz0TestRegularGridInterpolator.test_length_one_axisQ  sU  € ð	ð 	ð 	åŒK˜˜1˜aÑ Ô ˆÝŒK˜˜2˜rÑ"Ô"ˆØˆq•"”+˜a ¨T¸$Ð?Ñ?Ô?Ð@ˆå(¨!¨Q¨°¸hØ6;ÈðMñ Mô Mˆõ 	˜˜�rœx¨!¨Q¨°!°Q°¸!¸R¸Ð(AÑBÔBÑCÔCÝœ
 < < <Ñ0Ô0Ø"ð	$ñ 	$ô 	$ð 	$õ
 	˜˜�rœx¨!¨S¨°A°s°8¸aÀ¸WÐ(EÑFÔFÑGÔGØ&˜˜Ø"ð	$ñ 	$ô 	$ð 	$õ
 	˜˜�rœx¨¨c¨
Ñ3Ô3Ñ4Ô4ØÔ)Ø$)°uÀuØ"ð	$ñ 	$ô 	$ð 	$ð !ˆÔÝ˜˜  C ¨1¨d¨)Ð4Ñ5Ô5Ø˜d˜¨%ð	1ñ 	1ô 	1ð 	1õ 	˜˜  c 
¨S°$¨KÐ8Ñ9Ô9Ø˜d˜¨%ð	1ñ 	1ô 	1ð 	1õ )¨!¨Q¨°¸iØ6;ÈðNñ Nô Nˆå˜˜  c 
¨R°¨IÐ6Ñ7Ô7Ýœ
 C¨ 8Ñ,Ô,Ø"ð	$ñ 	$ô 	$ð 	$ð 	$ð 	$r+   rœ   Nc                 ó´  — |d|dœ}t          j        ddt           j        z  d¦  «        }t          j        |¦  «        }t	          |f|d d …         fi |¤Ž}t	          |dgf|d d …d f         fi |¤Ž}t          j        ddt           j        z  dz   d¦  «        } ||¦  «        }	t          j        d¦  «        }
 |t          j        ||
g¦  «        j        ¦  «        }t          ||	¦  «         t          j	        d¦  «        }
 |t          j        ||
g¦  «        j        ¦  «        }|€t          ||	¦  «         d S t          |t          j
        ||¦  «        ¦  «         d S )	NF©rœ   r›   r   r   r.   rÓ   r³   rZ   r   )r   rÆ   ÚpiÚsinr	   ÚzerosÚvstackÚTr   rÚ   Ú	full_like)r"   rœ   r   Úoptionsrs   ÚzÚfaÚfbÚx1aÚzaÚy1bÚzbs               r)   Útest_length_one_axis2z1TestRegularGridInterpolator.test_length_one_axis2}  s`  € ð ",¸UØ#ð%ð %ˆõ ŒK˜˜1�RœU™7 BÑ'Ô'ˆÝŒF�1‰IŒIˆå$ a T¨1¨Q¨Q¨Q¬4Ð;Ð;°7Ð;Ð;ˆÝ$ a¨!¨ X¨q°°°°D°¬zÐEÐE¸WÐEÐEˆåŒk˜"˜a¥¤™g a™i¨Ñ-Ô-ˆØˆR�‰WŒWˆõ Œh�s‰mŒmˆØˆR•”	˜3 ˜*Ñ%Ô%Ô'Ñ(Ô(ˆÝ˜˜BÑÔÐõ Œg�c‰lŒlˆØˆR•”	˜3 ˜*Ñ%Ô%Ô'Ñ(Ô(ˆØÐÝ˜B Ñ#Ô#Ð#Ð#Ð#å˜B¥¤¨R°Ñ <Ô <Ñ=Ô=Ð=Ð=Ð=r+   c                 ó¾  — t          g d¢fg d¢dd|¬¦  «        }t          j         |t          j        g¦  «        ¦  «        sJ ‚t          j                             d¦  «        }|                     d¬¦  «        d	z  }|                     d¬¦  «        d
k    }t          j        ||<   t          j        d¬¦  «        5   ||¦  «        }d d d ¦  «         n# 1 swxY w Y   t          j        ||         ¦  «                             ¦   «         sJ ‚t          ||           |||          ¦  «        ¦  «         g d¢}dg}t          j	        d¦  «        }t          ||f|dd|¬¦  «        }t          j        t          j         |t          j        dg¦  «        ¦  «        ¦  «        sJ ‚t          j        t          j         |dt          j        g¦  «        ¦  «        ¦  «        sJ ‚d S )N)rZ   r.   rm   rÒ   rZ   Frñ   ì   l¿J r   ©Úsizer   r   Úignore©Úinvalid)rm   rZ   )
r	   r   Úisnanrª   rÍ   Údefault_rngÚerrstateÚallr   rÚ   )	r"   r   rà   Úrngrs   ÚiÚresrt   rî   s	            r)   Útest_nan_x_1dz)TestRegularGridInterpolator.test_nan_x_1d™  s  € õ $ Y Y Y L°,°,°,È1Ø16¸vðGñ Gô GˆåŒx˜˜�2œ6˜(™œÑ$Ô$Ð$Ð$Ð$õ Œi×#Ò# JÑ/Ô/ˆØ�JŠJ˜CˆJÑ Ô  Ñ"ˆØ�JŠJ˜CˆJÑ Ô  3Ò&ˆÝŒvˆˆ!‰ÝŒ[ Ð*Ñ*Ô*ð 	ð 	ð
 �!�A‘$”$ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ Œx˜˜AœÑÔ×#Ò#Ñ%Ô%Ð%Ð%Ð%Ý˜˜Q˜Bœ   1 a R¤5¡¤Ñ*Ô*Ð*ð ˆIˆIˆØˆEˆÝŒw�v‰ŒˆÝ# Q¨ F¨D¸QØ16¸vðGñ Gô GˆåŒv•b”h˜q˜q¥"¤&¨! ™~œ~Ñ.Ô.Ñ/Ô/Ð/Ð/Ð/ÝŒv•b”h˜q˜q !¥R¤V ™~œ~Ñ.Ô.Ñ/Ô/Ð/Ð/Ð/Ð/Ð/s   Â:CÃCÃCc                 ó~  — t          j        g d¢¦  «        t          j        g d¢¦  «        }}d„ }t          j        ||dd¬¦  «        \  }} |||¦  «        }t          ||f||d¬¦  «        }t          j        d	¬
¦  «        5   |dt           j        gddgg¦  «        }	d d d ¦  «         n# 1 swxY w Y   t          |	d         dd¬¦  «         t          j        |	d         ¦  «        sJ ‚t           j         	                    d¦  «        }
|
                     d¬¦  «        dz  dz
  }|
                     d¬¦  «        dz  }|
                     d¬¦  «        dk    }|
                     d¬¦  «        dk    }||z  }t           j        ||<   t           j        ||<   t          j        ||g¦  «        j
        }t          j        d	¬
¦  «        5   ||¦  «        }	d d d ¦  «         n# 1 swxY w Y   t          j        |	|         ¦  «                             ¦   «         sJ ‚t          |	|           |||          ¦  «        d¬¦  «         d S )N)r   rZ   r.   )rZ   rm   rÁ   c                 ó   — | dz  |dz  z   S ©Nr.   rq   rr   s     r)   rà   z4TestRegularGridInterpolator.test_nan_x_2d.<locals>.f¼  s   € Ø�a‘4˜!˜Q™$‘;Ðr+   rn   Trá   F©r   r›   r  r  r4   rZ   r5   rv   r]   r   r  r   r  r   é   r   rÄ   )r   r_   ry   r	   r
  rª   r   r  rÍ   r	  rö   r  r   )r"   r   rs   rt   rà   r{   r|   rî   rE   r  r  Úi1Úi2r  rù   s                  r)   Útest_nan_x_2dz)TestRegularGridInterpolator.test_nan_x_2d¸  sÁ  € åŒx˜	˜	˜	Ñ"Ô"¥B¤H¨Y¨Y¨YÑ$7Ô$7ˆ1ˆð	ð 	ð 	õ ”˜Q ¨D¸Ð>Ñ>Ô>‰ˆˆBØˆq��R‰yŒyˆÝ(¨!¨Q¨°Ø06ÀUðLñ Lô Lˆõ Œ[ Ð*Ñ*Ô*ð 	2ð 	2Ø�&˜3¥¤˜-¨!¨Q¨Ð0Ñ1Ô1ˆCð	2ð 	2ð 	2ñ 	2ô 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	2øøøð 	2ð 	2ð 	2ð 	2å˜˜Aœ ¨%Ð0Ñ0Ô0Ð0ÝŒx˜˜AœÑÔÐÐÐõ Œi×#Ò# JÑ/Ô/ˆØ�JŠJ˜CˆJÑ Ô  Ñ" 1Ñ$ˆØ�JŠJ˜CˆJÑ Ô  Ñ"ˆØ�ZŠZ˜SˆZÑ!Ô! CÒ'ˆØ�ZŠZ˜SˆZÑ!Ô! CÒ'ˆØ�‰GˆÝ”ˆˆ"‰Ý”ˆˆ"‰ÝŒH�a˜�VÑÔÔˆÝŒ[ Ð*Ñ*Ô*ð 	ð 	ð
 �&˜‘)”)ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ Œx˜˜AœÑÔ×#Ò#Ñ%Ô%Ð%Ð%Ð%Ý˜˜Q˜Bœ  ¨¨1¨"¬¡¤¸EÐBÑBÔBÐBÐBÐBs$   ÂB)Â)B-Â0B-ÇGÇGÇ"Gr   )ÚndimsÚfuncr.   c                 ó$   — d| dz  z  d|dz  z  z   S ©Nr.   rm   rq   rr   s     r)   ru   z$TestRegularGridInterpolator.<lambda>à  s   € ˜˜Q !™V™ a¨!¨q©&¡jÑ0€ r+   rm   c                 ó*   — d| dz  z  d|dz  z  z   |z
  S r  rq   )rs   rt   rù   s      r)   ru   z$TestRegularGridInterpolator.<lambda>á  s    € ˜A  Q¡™J¨¨Q°!©V©Ñ3°aÑ7€ r+   r   c                 ó0   — d| dz  z  d|dz  z  z   |z
  |z   S r  rq   ©rs   rt   rù   Úas       r)   ru   z$TestRegularGridInterpolator.<lambda>â  s%   € ˜q 1¨¡6™z¨A°°Q±©JÑ6¸Ñ:¸QÑ>€ r+   rÀ   c                 ó6   — d| dz  z  d|dz  z  z   |z
  ||z  z   S r  rq   )rs   rt   rù   r  Úbs        r)   ru   z$TestRegularGridInterpolator.<lambda>ã  s)   €  ! a¨1¡f¡*¨q°1¸±6©zÑ"9¸AÑ"=ÀÀAÁÑ"E€ r+   c                 óø  ‡‡— |dk    r|dv rt          j        d¦  «         t          j                             d¦  «        }dŠdŠ|                     ‰‰d|f¬¦  «        }ˆˆfd	„t          |¦  «        D ¦   «         } |t          j        |d
ddœŽŽ }t          |||¬¦  «        } ||¦  «        }	d„ |D ¦   «         }
 |t          j        |
d
ddœŽŽ }t          |
||¬¦  «        } ||¦  «        }t          |	|¦  «         d S )Nr   >   rI   rJ   z-too slow; OOM (quintic); or nearly so (cubic)é*   rZ   rÀ   r.   r  c                 ó<   •— g | ]}t          j        ‰‰d ¦  «        ‘ŒS )é   )r   rÆ   )r¯   Ú_Úsample_highÚ
sample_lows     €€r)   r±   zITestRegularGridInterpolator.test_descending_points_nd.<locals>.<listcomp>ï  s7   ø€ ð 3ð 3ð 3Ø !õ œK¨
°KÀÑDÔDð 3ð 3ð 3r+   rn   Trá   rB   c                 ó$   — g | ]}|d d d…         ‘ŒS )Nr³   rq   )r¯   Úxis     r)   r±   zITestRegularGridInterpolator.test_descending_points_nd.<locals>.<listcomp>û  s"   € ÐAÐAÐA¨"˜R   " œXÐAÐAÐAr+   )
rO   rf   r   rÍ   r	  ÚuniformÚrangery   r	   r   )r"   r   r  r  r  Útest_pointsÚascending_pointsÚascending_valuesÚascending_interpÚascending_resultÚdescending_pointsÚdescending_valuesÚdescending_interpÚdescending_resultr'  r(  s                 @@r)   Útest_descending_points_ndz5TestRegularGridInterpolator.test_descending_points_ndÝ  s†  øø€ ð �AŠ:ˆ:˜&Ð$8Ð8Ð8ÝŒKÐGÑHÔHÐHåŒi×#Ò# BÑ'Ô'ˆØˆ
ØˆØ—k’k *¨kÀÀEÀ
�kÑKÔKˆð3ð 3ð 3ð 3ð 3Ý%*¨5¡\¤\ð3ñ 3ô 3Ðð  ˜4¥¤Ð.>Ø6:Ø48ð":ð ":ð ":ð ;Ðõ 3Ð3CØ3CØ:@ðBñ Bô BÐð ,Ð+¨KÑ8Ô8ÐàAÐAÐ0@ÐAÑAÔAÐØ ˜D¥"¤+Ð/@Ø7;Ø59ð#;ð #;ð #;ð <Ðõ 4Ð4EØ4EØ;AðCñ Cô CÐð .Ð-¨kÑ:Ô:ÐåÐ(Ð*;Ñ<Ô<Ð<Ð<Ð<r+   c                 ó"  — d„ }t          j        g d¢¦  «        }t          j        g d¢¦  «        }||f} |t          j        |dddœŽŽ }d}t          j        t
          |¬¦  «        5  t          ||¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )	Nc                 ó$   — d| dz  z  d|dz  z  z   S r  rq   rr   s     r)   Úval_func_2dzJTestRegularGridInterpolator.test_invalid_points_order.<locals>.val_func_2d  s   € Ø�q˜A‘v‘:  A¨¡F¡
Ñ*Ð*r+   ©r   r5   r   ç      @ç      @©r   r5   r7   r;  r<  rn   Trá   ú(must be strictly ascending or descendingrM   )r   r_   ry   rO   r   rP   r	   )r"   r9  rs   rt   r#   r$   rN   s          r)   Útest_invalid_points_orderz5TestRegularGridInterpolator.test_invalid_points_order  sü   € ð	+ð 	+ð 	+õ ŒHÐ*Ð*Ð*Ñ+Ô+ˆÝŒHÐ*Ð*Ð*Ñ+Ô+ˆØ�Q�ˆØ��bœk¨6¸DØ15ð7ð 7ð 7ð 8ˆà:ˆÝŒ]�:¨UÐ3Ñ3Ô3ð 	4ð 	4Ý# F¨FÑ3Ô3Ð3ð	4ð 	4ð 	4ñ 	4ô 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4øøøð 	4ð 	4ð 	4ð 	4ð 	4ð 	4s   Á&BÂBÂBc                 ó¶   — t          t          j        d¦  «        gt          j        d¦  «        |d¬¦  «        }t          j         |dg¦  «        ¦  «        sJ ‚d S )Nrå   Fr  r   )r	   r   rØ   rÚ   r  )r"   r   rE   s      r)   Útest_fill_valuez+TestRegularGridInterpolator.test_fill_value  sZ   € å(­"¬)°A©,¬,¨½¼À¹¼Ø06ÀUðLñ Lô LˆåŒx˜˜ ˜t™œÑ%Ô%Ð%Ð%Ð%Ð%Ð%r+   c                 ó^  — |dk    rt          j        d¦  «         dgdz  dgdz  z   }t          j                             d¦  «        }|                     d¦  «        }|                     d¦  «        }t          |||d	¬
¦  «        } ||¦  «        }|j        dk    s
J |¦   «         ‚g }t          d¦  «        D ];}	t          ||d|	f         |d	¬
¦  «        }|                      ||¦  «        ¦  «         Œ<t          j	        |¦  «         
                    ddd¦  «        }
t          ||
d|¬¦  «         d S )NrJ   úWay too slow.©r   r   r   r4   r5   r6   r.   ©r   r/   r0   ç      .@rÓ   ç      9@rË   ©rå   rå   rå   rå   r  ©rÁ   rm   r   Fr  ©rÁ   rm   r  r  .rZ   r   rv   ©r^   Úerr_msg)rO   rf   r   rÍ   r	  r	   rÛ   r,  Úappendr_   Ú	transposer   )r"   r   r#   r  r$   rD   rE   ÚvÚvsÚjrG   s              r)   Útest_nonscalar_valuesz1TestRegularGridInterpolator.test_nonscalar_values  s_  € ð �YÒÐÝŒK˜Ñ(Ô(Ð(ð 1Ð1°AÑ5Ø,ð9
àñ9ñ ˆõ Œi×#Ò# DÑ)Ô)ˆØ—’˜OÑ,Ô,ˆØ—’˜IÑ&Ô&ˆå(¨°ÀØ6;ð=ñ =ô =ˆàˆF�6‰NŒNˆØŒw˜)Ò#Ð#Ð# VÑ#Ô#Ð#àˆÝ�q‘”ð 	&ð 	&ˆAÝ,¨V°V¸CÀ¸F´^Ø4:Ø:?ðAñ Aô AˆFð �IŠI�f�f˜V‘n”nÑ%Ô%Ð%Ð%ÝŒX�b‰\Œ\×#Ò# A q¨!Ñ,Ô,ˆå˜˜2 E°6Ð:Ñ:Ô:Ð:Ð:Ð:r+   Úflip_pointsFTc           	      óà  — |dv rt          j        d¦  «         g d¢}|rd„ |D ¦   «         }t          j                             d¦  «        }d}|                     ddd	d
g|¢R ¦  «        }|                     d¦  «        }t          |||d¬¦  «        } ||¦  «        }	|	j        dg|¢R k    sJ ‚t          j        |j        dd …         ¦  «        }
t          |j        d         ¦  «        D ]]}t          |j        d         ¦  «        D ]@}t          ||d||f         |d¬¦  «        } ||¦  «         	                    ¦   «         |
||f<   ŒAŒ^t          j
        |
d¬¦  «        }t          |	|d|¬¦  «         d S )N>   rI   rJ   rC  ©rD  r3   )r   r/   r0   rF  rÓ   rG  ç     €A@ç      B@)	r   r/   r0   rF  rÓ   rG  rV  rW  é/   c                 óF   — g | ]}t          t          |¦  «        ¦  «        ‘ŒS rq   )ÚtupleÚreversedr®   s     r)   r±   zGTestRegularGridInterpolator.test_nonscalar_values_2.<locals>.<listcomp>H  s&   € Ð9Ð9Ð9¨Q•e�H Q™KœKÑ(Ô(Ð9Ð9Ð9r+   rË   ©rm   r.   rå   rÁ   r  é	   r   Fr  rZ   éþÿÿÿr³   .r   ©Úaxisrv   rK  )rO   rf   r   rÍ   r	  r	   rÛ   Úemptyr,  ÚitemÚexpand_dimsr   )r"   r   rS  r#   r  Útrailing_pointsr$   rD   rE   rO  rP  r  rQ  rG   s                 r)   Útest_nonscalar_values_2z3TestRegularGridInterpolator.test_nonscalar_values_28  sÇ  € ð Ð)Ð)Ð)ÝŒK˜Ñ(Ô(Ð(ðDð Dð Dˆð ð 	:Ø9Ð9°&Ð9Ñ9Ô9ˆFåŒi×#Ò# DÑ)Ô)ˆà ˆà—’˜Q  1 aÐ:¨/Ð:Ð:Ñ;Ô;ˆØ—’˜A‘”ˆå(¨°ÀØ6;ð=ñ =ô =ˆàˆF�6‰NŒNˆð Œw˜1Ð/˜Ð/Ð/Ò/Ð/Ð/Ð/õ ŒX�f”l 2 3 3Ô'Ñ(Ô(ˆÝ�v”| BÔ'Ñ(Ô(ð 	1ð 	1ˆAÝ˜6œ<¨Ô+Ñ,Ô,ð 1ð 1�Ý0°¸ÀÀQÈÀ	Ô9JØ8>Ø>CðEñ Eô E�ð "˜6 &™>œ>×.Ò.Ñ0Ô0��1�a�4‘�ð	1õ
 Œ^˜B QÐ'Ñ'Ô'ˆÝ˜˜2 E°6Ð:Ñ:Ô:Ð:Ð:Ð:r+   c           	      ó”  — d}ddg}t           j                             d¦  «        }d}|                     ddg|¢R ¦  «        }|                     d¦  «        }t          |||d	¬
¦  «        } ||¦  «        }|j        dg|¢R k    sJ ‚t          j        |j        dd …         ¦  «        }	t          |j        d         ¦  «        D ]]}
t          |j        d         ¦  «        D ]@}t          ||d|
|f         |d	¬
¦  «        } ||¦  «                             ¦   «         |	|
|f<   ŒAŒ^t          j        |	d¬¦  «        }t          ||d|¬¦  «         d S )NrU   rD  r3   rË   )rm   r   rå   rÁ   r.   Fr  rZ   r^  r³   .r   r_  rv   rK  )
r   rÍ   r	  r	   rÛ   ra  r,  rb  rc  r   )r"   r   r#   r  rd  r$   rD   rE   rO  rP  r  rQ  rG   s                r)   Útest_nonscalar_values_linear_2Dz;TestRegularGridInterpolator.test_nonscalar_values_linear_2Dc  sˆ  € àˆØ0Ø5ð9ˆõ Œi×#Ò# DÑ)Ô)ˆà ˆà—’˜Q Ð4 OÐ4Ð4Ñ5Ô5ˆØ—’˜A‘”ˆå(¨°ÀØ6;ð=ñ =ô =ˆàˆF�6‰NŒNˆð Œw˜1Ð/˜Ð/Ð/Ò/Ð/Ð/Ð/õ ŒX�f”l 2 3 3Ô'Ñ(Ô(ˆÝ�v”| BÔ'Ñ(Ô(ð 	1ð 	1ˆAÝ˜6œ<¨Ô+Ñ,Ô,ð 1ð 1�Ý0°¸ÀÀQÈÀ	Ô9JØ8>Ø>CðEñ Eô E�ð "˜6 &™>œ>×.Ò.Ñ0Ô0��1�a�4‘�ð	1õ
 Œ^˜B QÐ'Ñ'Ô'ˆÝ˜˜2 E°6Ð:Ñ:Ô:Ð:Ð:Ð:r+   rÖ   Úxi_dtypec                 óv  — d„ }t          j        ddd¦  «        }t          j        ddd¦  «        }t          j        ||dd¬	¦  «        \  }} |||¦  «        }|                     |¦  «        }t	          ||f|¦  «        }	t          j        d
dgddgg|¬¦  «        }
t           |	|
¦  «        ddgddd¬¦  «         d S )Nc                 ó$   — d| dz  z  d|dz  z  z   S r  rq   rr   s     r)   rà   z:TestRegularGridInterpolator.test_float32_values.<locals>.f‰  s   € Ø�q˜!‘t‘8˜a ! Q¡$™hÑ&Ð&r+   rZ   r   ræ   rÁ   é   rn   Trá   r¢   gÍÌÌÌÌÌ@çffffff
@gÍÌÌÌÌÌ@rÕ   g Öú¦YÃ`@gÖÉø{Ò,c@gH¯¼šò×z>F)r^   rx   rÅ   )r   rÆ   ry   Úastyper	   r_   r   )r"   rÖ   rh  rà   rs   rt   r{   r|   rî   rE   Úptss              r)   Útest_float32_valuesz/TestRegularGridInterpolator.test_float32_values‚  sô   € ð	'ð 	'ð 	'õ ŒK˜˜1˜bÑ!Ô!ˆÝŒK˜˜1˜bÑ!Ô!ˆå”˜Q ¨D¸Ð>Ñ>Ô>‰ˆˆBØˆq��R‰yŒyˆà�{Š{˜5Ñ!Ô!ˆå(¨!¨Q¨°Ñ6Ô6ˆåŒh˜˜c˜
Ø˜c˜
ð$Ø+3ð5ñ 5ô 5ˆõ 	˜˜˜s™œ l°LÐ%AØ!¨¸%ð	Añ 	Aô 	Að 	Að 	Að 	Ar+   c                 ó²  — t          j        ddd¦  «        }t          j        ddd¦  «        }t          j        ||dd¬¦  «        \  }}||z   }t          t          ¦  «        5  t          ||f|d„ ¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          t          ¦  «        5  t          ||f|d	d
„ ¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          t          ¦  «        5  t          ||f|d	d„ d¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          t          ¦  «        5  t          ||f|d	ddi¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   rm   rÁ   rn   Trá   c                 ó   — | S rß   rq   ©rs   s    r)   ru   z=TestRegularGridInterpolator.test_bad_solver.<locals>.<lambda>§  s   € À1€ r+   )ÚsolverrV   c                 ó   — | S rß   rq   rr  s    r)   ru   z=TestRegularGridInterpolator.test_bad_solver.<locals>.<lambda>¬  ó   € À€ r+   )r   rs  c                 ó   — | S rß   rq   rr  s    r)   ru   z=TestRegularGridInterpolator.test_bad_solver.<locals>.<lambda>²  ru  r+   Úwoof)r   rs  rw  r#  )r   Úsolver_args)r   rÆ   ry   r`   rP   r	   Ú	TypeError)r"   rs   rt   r{   r|   rî   s         r)   Útest_bad_solverz+TestRegularGridInterpolator.test_bad_solverŸ  s’  € ÝŒK˜˜1˜aÑ Ô ˆÝŒK˜˜1˜aÑ Ô ˆÝ”˜Q ¨D¸Ð>Ñ>Ô>‰ˆˆBØ�B‰wˆõ �:Ñ&Ô&ð 	Fð 	FÝ# Q¨ F¨D¸¸ÐEÑEÔEÐEð	Fð 	Fð 	Fñ 	Fô 	Fð 	Fð 	Fð 	Fð 	Fð 	Fð 	Føøøð 	Fð 	Fð 	Fð 	Fõ �9Ñ%Ô%ð 	ð 	å#Ø�A�˜ Y°{°{ðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ �9Ñ%Ô%ð 	ð 	å#Ø�A�˜ Y°{°{Èðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ �9Ñ%Ô%ð 	ð 	å#Ø�A�˜ Y¸fÀb¸\ðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	sH   Á!BÂBÂ
BÂ"CÃC	ÃC	Ã$DÄDÄDÄ'EÅEÅEc                 óÒ   ‡‡— |                       ¦   «         \  }}t          j        g d¢g d¢g d¢g d¢g¦  «        Št          ||d¬¦  «        }ddgŠˆˆfd„}t	          d	||¦  «         d S )
Nr<   r?   rA   )rì   r=   r@   r�   rV   rB   r�   c                 ó\   •— |j         }‰| dz           } |‰|¬¦  «         |j         |u sJ ‚d S )Nr.   rB   )Ú_spline)ÚtidrE   Úspliner   ÚmethodsrD   s       €€r)   Ú	worker_fnz?TestRegularGridInterpolator.test_concurrency.<locals>.worker_fnÇ  sF   ø€ Ø”^ˆFØ˜S 1™WÔ%ˆFØˆF�6 &Ð)Ñ)Ô)Ð)Ø”> VÐ+Ð+Ð+Ð+Ð+Ð+r+   r   )r*   r   r_   r	   r   )r"   r#   r$   rE   r�  r€  rD   s        @@r)   Útest_concurrencyz,TestRegularGridInterpolator.test_concurrency»  s­   øø€ à×,Ò,Ñ.Ô.‰ˆ�Ý”Ð3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ñ 6ô 6ˆõ )¨°À	ÐJÑJÔJˆð ˜iÐ(ˆð	,ð 	,ð 	,ð 	,ð 	,ð 	,õ 	   I¨vÑ6Ô6Ð6Ð6Ð6r+   )6Ú__name__Ú
__module__Ú__qualname__r*   r1   r8   r:   Úparametrize_rgi_interp_methodsrH   rO   ÚmarkÚparametrizerQ   r   r   rX   ra   rk   r   r…   r‰   r�   r’   r•   r˜   r¦   r¨   r«   r»   r¾   rÉ   rÐ   rÜ   rï   rª   rò   r   r  r  Ú	fail_slowr6  r?  rA  rR  re  rg  Úfloat32Úfloat64Ú	complex64Ú
complex128ro  rz  Úthread_unsafer‚  rq   r+   r)   r   r      sØ  € € € € € ð	ð 	ð 	ð	ð 	ð 	ð	ð 	ð 	ð	ð 	ð 	ð $ð ð  ñ $Ô#ð ð  „[×Ò˜XÐ'DÐ'DÐ'DÑEÔEð*ð *ñ FÔEð*ð „[×ÒØð Ø�”
Ø)Ð)Ð)Ø*Ð*Ð*Ø)Ð)Ð)ð+ñô ðð ˜z˜rœzÐ*?Ð*?Ð*?Ñ@Ô@ÐAð
	
ñô ð ð  ñô ð ð=ð =ð =ð( $ð ð  ñ $Ô#ð ð 
Kð 
Kð 
Kð:ð :ð :ð:ð :ð :ð „[×ÒØàˆRŒZÐ,Ð,Ð,Ñ-Ô-¨vÐ6ØˆRŒZÐ,Ð,Ð,Ñ-Ô-¨sÐ3ØˆRŒZÐ,Ð,Ð,Ñ-Ô-¨sÐ3ØˆRŒZÐ,Ð,Ð,Ñ-Ô-¨vÐ6ØˆRŒZÐ,Ð,Ð,Ñ-Ô-¨vÐ6ð	
ñ	ô 	ð:ð :ñ	ô 	ð:ð:ð :ð :ð,ð ,ð ,ð$2ð 2ð 2ð	Kð 	Kð 	Kð	Kð 	Kð 	Kð:ð :ð :ð
Hð 
Hð 
Hð
Hð 
Hð 
Hð „[×Ò˜X¨	°8Ð'<Ñ=Ô=ð3ð 3ñ >Ô=ð3ð7ð 7ð 7ð?ð ?ð ?ð*$ð *$ð *$ðX „[×Ò˜\¨D°"´&¸"¼%Ð+@ÑAÔAØ„[×Ò˜X¨°)Ð'<Ñ=Ô=ð>ð >ñ >Ô=ñ BÔAð>ð4 „[×Ò˜X¨	°8Ð'<Ñ=Ô=ð0ð 0ñ >Ô=ð0ð< „[×Ò˜X¨	°8Ð'<Ñ=Ô=ð"Cð "Cñ >Ô=ð"CðH „[×Ò˜2ÑÔØ#Ø„[×ÒÐ.Ø	
Ð0Ð0Ð1Ø	
Ð7Ð7Ð8Ø	
Ð>Ð>Ð?Ø	
ÐEÐEÐFð	1ñ ô ð=ð =ñô ñ $Ô#ñ Ôð=ðB4ð 4ð 4ð $ð&ð &ñ $Ô#ð&ð
 „[×Ò˜1ÑÔØ#ð;ð ;ñ $Ô#ñ Ôð;ð: $Ø„[×Ò˜]¨U°D¨MÑ:Ô:ð';ð ';ñ ;Ô:ñ $Ô#ð';ðR;ð ;ð ;ð> „[×ÒØØ	Œ�R”Z ¤¨r¬}Ð=ñô ð „[×Ò˜Z¨"¬*°b´jÐ)AÑBÔBðAð Añ CÔBñ	ô ð
Að0ð ð ð8 „[Ôð7ð 7ñ Ôð7ð 7ð 7r+   r   c                   ó,   — e Zd ZdZd„ Zd„ Zd„ Zdd„ZdS )rÇ   z"
    Minimal indexable object
    c                 óž   — d| _         || _        t          j        t          j        |¦  «        ¦  «                             |¦  «        | _        d S r  )ÚndimrÛ   r   rØ   Úprodr¶   rÈ   )r"   rÛ   s     r)   Ú__init__zMyValue.__init__Õ  s;   € ØˆŒ	ØˆŒ
Ý”)�BœG E™NœNÑ+Ô+×3Ò3°EÑ:Ô:ˆŒˆˆr+   c                 ó   — | j         |         S rß   )rÈ   )r"   Úidxs     r)   Ú__getitem__zMyValue.__getitem__Ú  s   € ØŒw�sŒ|Ðr+   c                 ó   — d S rß   rq   )r"   s    r)   Ú__array_interface__zMyValue.__array_interface__Ý  s   € Øˆtr+   Nc                 ó    — t          d¦  «        ‚)NzNo array representation)ÚRuntimeError)r"   rÖ   Úcopys      r)   Ú	__array__zMyValue.__array__à  s   € ÝÐ4Ñ5Ô5Ð5r+   )NN)rƒ  r„  r…  Ú__doc__r“  r–  r˜  rœ  rq   r+   r)   rÇ   rÇ   Ð  s_   € € € € € ðð ð;ð ;ð ;ð
ð ð ðð ð ð6ð 6ð 6ð 6ð 6ð 6r+   rÇ   c                   ó:  — e Zd Zd„ Zd„ Zed„ ¦   «         Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zd
„ Zd„ Zed„ ¦   «         Zej                             d¦  «        ed„ ¦   «         ¦   «         Zed„ ¦   «         Zd„ Zed„ ¦   «         Zej        j        d„ ¦   «         Zej        j        d„ ¦   «         Zej                             dddg¦  «        d„ ¦   «         Zeed„ ¦   «         ¦   «         Zd„ Zd„ Zd„ Z d„ Z!d„ Z"d„ Z#d„ Z$ej                             d d!d"g¦  «        d#„ ¦   «         Z%d$S )%ÚTestInterpNc           	      ó°   — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        g d¢g d¢g d¢g d¢g d¢g d¢g¦  «        }|||fS )N)r   r5   r7   r;  r<  g      @)rZ   r.   rZ   r.   rZ   rZ   )rZ   r.   rm   r.   rZ   rZ   )rZ   r.   r.   r.   rZ   rZ   )r   r_   )r"   rs   rt   rù   s       r)   Ú_sample_2d_datazTestInterpN._sample_2d_dataå  s‡   € ÝŒHÐ.Ð.Ð.Ñ/Ô/ˆÝŒHÐ.Ð.Ð.Ñ/Ô/ˆÝŒHà"Ð"Ð"Ø"Ð"Ð"Ø"Ð"Ð"Ø"Ð"Ð"Ø"Ð"Ð"Ø"Ð"Ð"ðñ	
ô 	
ˆð �!�Qˆwˆr+   c           	      ó,  — |                       ¦   «         \  }}}t          |||¦  «        }t          j        g d¢g d¢g¦  «        j        }t          t          ||f||d¬¦  «        |                     |d d …df         |d d …df         ¦  «        ¦  «         d S )N©rZ   çffffff@rç   r   rl  ç333333ó?rm   ©rZ   rl  r¥  r;  r/   r   rm   Ú	splinef2drB   r   rZ   )r¡  r   r   r_   rö   r   r
   Úev)r"   rs   rt   rù   Úlutr*  s         r)   Útest_spline_2dzTestInterpN.test_spline_2dô  s´   € Ø×&Ò&Ñ(Ô(‰ˆˆ1ˆaÝ! ! Q¨Ñ*Ô*ˆåŒXÐ6Ð6Ð6Ø6Ð6Ð6ð8ñ 9ô 9Ü9:ð 	å!¥'¨1¨a¨&°!°RÀÐ"LÑ"LÔ"LØ"%§&¢&¨¨A¨A¨A¨q¨D¬°2°a°a°a¸°d´8Ñ"<Ô"<ñ	>ô 	>ð 	>ð 	>ð 	>r+   c                 ó|  — |                       ¦   «         \  }}}t          j        g d¢g d¢g¦  «        j        }t	          ||f|||¬¦  «        }t	          |                     ¦   «         |                     ¦   «         f|                     ¦   «         |                     ¦   «         |¬¦  «        }t          |||¬¦  «         d S )Nr£  r¦  rB   )rL  )r¡  r   r_   rö   r
   rC   r   )r"   r   rs   rt   rù   r*  rF   rG   s           r)   rH   zTestInterpN.test_list_inputý  sÀ   € à×&Ò&Ñ(Ô(‰ˆˆ1ˆaÝŒXÐ6Ð6Ð6Ø6Ð6Ð6ð8ñ 9ô 9Ü9:ð 	å�a˜�V˜Q ¨6Ð2Ñ2Ô2ˆÝØ�XŠX‰ZŒZ˜Ÿš™œÐ$ a§h¢h¡j¤j°"·)²)±+´+Àfð
ñ 
ô 
ˆõ 	˜˜B¨Ð/Ñ/Ô/Ð/Ð/Ð/r+   c           
      óú  — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        g d¢g d¢g d¢g d¢g d¢g¦  «        }t          |||¦  «        }t          j        g d¢g d¢g¦  «        j        }t	          ||f||ddd	¬
¦  «        }|                     |d d …df         |d d …df         ¦  «        }d	|dd…<   t          ||¦  «         t          t          t          ||f||ddd ¬
¦  «         d S )Nr=  ©rZ   r.   rZ   r.   rZ   ©rZ   r.   rm   r.   rZ   ©rZ   r.   r.   r.   rZ   ©rZ   r¤  ré   r   rl  r¥  rm   ©rZ   rl  r¥  g      Àr/   r   rm   r§  FçR¸…ë?�@rä   r   rZ   r.   r   )	r   r_   r   rö   r
   r¨  r   r`   rP   )r"   rs   rt   rù   r©  r*  ÚactualÚexpecteds           r)   Útest_spline_2d_outofboundsz&TestInterpN.test_spline_2d_outofbounds  sJ  € ÝŒHÐ*Ð*Ð*Ñ+Ô+ˆÝŒHÐ*Ð*Ð*Ñ+Ô+ˆÝŒH�o�o�o   ¸¸¸Ø%�o�o   ð8ñ 9ô 9ˆå! ! Q¨Ñ*Ô*ˆåŒXÐ6Ð6Ð6Ø7Ð7Ð7ð9ñ :ô :Ü:;ð 	å˜!˜Q˜  B¨{Ø&+¸ð@ñ @ô @ˆà—6’6˜"˜Q˜Q˜Q ˜Tœ( B q q q¨! t¤HÑ-Ô-ˆØˆ��1�‰Ý! &¨(Ñ3Ô3Ð3õ 	•j¥'¨A¨q¨6°1°bÀØ#(°Tð	;ñ 	;ô 	;ð 	;ð 	;ð 	;r+   c                 óØ  — dgdz  dgdz  z   }t          j        g d¢¦  «        }|d d …t           j        t           j        t           j        f         }|t           j        d d …t           j        t           j        f         }|t           j        t           j        d d …t           j        f         }|t           j        t           j        t           j        d d …f         }||dz  z   |dz  z   |dz  z   }||fS r-   r   r!   s          r)   Ú_sample_4d_datazTestInterpN._sample_4d_data  sË   € Ø� !Ñ# } o¸Ñ&9Ñ9ˆÝ”˜L˜L˜LÑ)Ô)ˆØ˜˜˜�BœJ­¬
µB´JÐ>Ô?ˆØ�œ Q Q Q­¬
µB´JÐ>Ô?ˆØ�œ¥R¤Z°°°µB´JÐ>Ô?ˆØ�œ¥R¤Zµ´¸Q¸Q¸QÐ>Ô?ˆØ˜G b™LÑ(¨7°S©=Ñ8¸7ÀT¹>ÑIˆØ�vˆ~Ðr+   c                 óÚ   — |                       ¦   «         \  }}t          ||¦  «        }t          j        g d¢g¦  «        }t	          |||d¬¦  «        }t           ||¦  «        |¦  «         d S )NrR   rU   rB   ©r·  r	   r   r   r
   r   ©r"   r#   r$   Ú	interp_rgrD   r„   s         r)   Útest_linear_4dzTestInterpN.test_linear_4d%  su   € à×-Ò-Ñ/Ô/‰ˆ�Ý+¨F°FÑ;Ô;ˆ	Ý”Ð0Ð0Ð0Ð1Ñ2Ô2ˆÝ˜ ¨¸ÐAÑAÔAˆÝ! ) )¨FÑ"3Ô"3°VÑ<Ô<Ð<Ð<Ð<r+   c                 óÖ   — |                       ¦   «         \  }}t          j        g d¢g¦  «        }t          j        dg¦  «        }t          |||ddd¬¦  «        }t	          ||¦  «         d S )N©r=   rž   g333333$@rS   r²  rU   Frä   ©r·  r   r   r
   r   ©r"   r#   r$   rD   r„   r³  s         r)   Útest_4d_linear_outofboundsz&TestInterpN.test_4d_linear_outofbounds-  s{   € à×-Ò-Ñ/Ô/‰ˆ�Ý”Ð2Ð2Ð2Ð3Ñ4Ô4ˆÝ”˜V˜HÑ%Ô%ˆÝ˜ ¨¸Ø&+¸ð@ñ @ô @ˆå! &¨&Ñ1Ô1Ð1Ð1Ð1r+   c                 óÞ   — |                       ¦   «         \  }}t          ||d¬¦  «        }t          j        g d¢g¦  «        }t	          |||d¬¦  «        }t           ||¦  «        |¦  «         d S )Nr�   rB   rR   r¹  rº  s         r)   Útest_nearest_4dzTestInterpN.test_nearest_4d6  sz   € à×-Ò-Ñ/Ô/‰ˆ�Ý+¨F°FÀ9ÐMÑMÔMˆ	Ý”Ð0Ð0Ð0Ð1Ñ2Ô2ˆÝ˜ ¨¸	ÐBÑBÔBˆÝ! ) )¨FÑ"3Ô"3°VÑ<Ô<Ð<Ð<Ð<r+   c                 óÖ   — |                       ¦   «         \  }}t          j        g d¢g¦  «        }t          j        dg¦  «        }t          |||ddd¬¦  «        }t	          ||¦  «         d S )Nr¾  r²  r�   Frä   r¿  rÀ  s         r)   Útest_4d_nearest_outofboundsz'TestInterpN.test_4d_nearest_outofbounds>  s{   € à×-Ò-Ñ/Ô/‰ˆ�Ý”Ð2Ð2Ð2Ð3Ñ4Ô4ˆÝ”˜V˜HÑ%Ô%ˆÝ˜ ¨¸	Ø&+¸ð@ñ @ô @ˆå! &¨&Ñ1Ô1Ð1Ð1Ð1r+   c                 óà   — |                       ¦   «         \  }}t          j        g d¢¦  «        }t          |||d¬¦  «        }t          |||d d d …f         d¬¦  «        }t	          ||¦  «         d S )NrR   F)r›   )r·  r   r   r
   r   ©r"   r#   r$   rD   rF   rG   s         r)   Ú
test_xi_1dzTestInterpN.test_xi_1dG  s{   € à×-Ò-Ñ/Ô/‰ˆ�Ý”Ð/Ð/Ð/Ñ0Ô0ˆÝ�V˜V V¸%Ð@Ñ@Ô@ˆÝ�V˜V V¨D°°°¨F¤^À%ÐHÑHÔHˆÝ˜˜BÑÔÐÐÐr+   c                 ó–  — |                       ¦   «         \  }}t          j                             d¦  «         t          j                             ddd¦  «        }t          |||dd¬¦  «        }|j        dk    sJ ‚t          |||                     d	d¦  «        dd¬¦  «        }t          ||                     |j        ¦  «        ¦  «         d S )
NrË   r.   rm   r   r�   Fr  ©r.   rm   r³   )	r·  r   rÍ   rÎ   rÏ   r
   rÛ   r¶   r   rÇ  s         r)   Ú
test_xi_ndzTestInterpN.test_xi_ndO  sÅ   € à×-Ò-Ñ/Ô/‰ˆ�å
Œ	�Š�tÑÔÐÝ”—’  1 aÑ(Ô(ˆå�V˜V V°IØ"'ð)ñ )ô )ˆàŒx˜6Ò!Ð!Ð!Ð!å�V˜V V§^¢^°B¸Ñ%:Ô%:Ø%°Eð;ñ ;ô ;ˆå˜˜BŸJšJ r¤xÑ0Ô0Ñ1Ô1Ð1Ð1Ð1r+   c                 ó4  — |                       ¦   «         \  }}}||f}t          j        ddd¦  «        }t          j        ddd¦  «        }|d d …d f         |d d d …f         f}t          ||||d¬¦  «        }	|	j        dk    sJ ‚t          j        ||¦  «        \  }
}t          j        |
j                             ¦   «         |j                             ¦   «         f         }t          ||||d¬¦  «        }t          |	| 
                    |	j        ¦  «        ¦  «         d S )Nr   rZ   r.   rm   Fr  rÊ  )r¡  r   rÆ   r
   rÛ   ry   Úc_rö   Úravelr   r¶   )r"   r   rs   rt   r$   r#   r*  ÚyirD   rF   ÚxxÚyyrG   s                r)   Útest_xi_broadcastzTestInterpN.test_xi_broadcast^  s  € ð ×+Ò+Ñ-Ô-‰ˆˆ1ˆfØ�Q�ˆåŒ[˜˜A˜qÑ!Ô!ˆÝŒ[˜˜A˜qÑ!Ô!ˆà�Q�Q�Q˜�W”+˜r $¨¨¨ 'œ{Ð+ˆÝ�V˜V V°FÈÐOÑOÔOˆØŒx˜6Ò!Ð!Ð!Ð!å”˜R Ñ$Ô$‰ˆˆBÝ”�r”t—z’z‘|”| R¤T§Z¢Z¡\¤\Ð1Ô2ˆå�V˜V VØ"°ð8ñ 8ô 8ˆå˜˜BŸJšJ r¤xÑ0Ô0Ñ1Ô1Ð1Ð1Ð1r+   rÀ   c                 óô  ‡‡‡‡— ‰dk    rt          j        d¦  «         dgdz  dgdz  z   Št          j                             d¦  «        }|                     d¦  «        Š|                     d¦  «        Št          ‰‰‰‰d	¬
¦  «        }|j        dk    s
J ‰¦   «         ‚ˆˆˆˆfd„t          d¦  «        D ¦   «         }t          j        |¦  «         	                    ddd¦  «        }t          ||d‰¬¦  «         d S )NrJ   rC  rD  r.   rE  rË   rH  rI  Fr  rJ  c           	      óH   •— g | ]}t          ‰‰d |f         ‰‰d¬¦  «        ‘ŒS ©.Fr  ©r
   ©r¯   rQ  r   r#   rD   r$   s     €€€€r)   r±   z5TestInterpN.test_nonscalar_values.<locals>.<listcomp>†  sK   ø€ ð =ð =ð =Ø./õ �f˜f S¨! Vœn¨f¸VØ#(ð*ñ *ô *ð =ð =ð =r+   r  rZ   r   rv   rK  )rO   rf   r   rÍ   r	  r
   rÛ   r,  r_   rN  r   )	r"   r   r  rO  rP  rG   r#   rD   r$   s	    `    @@@r)   rR  z!TestInterpN.test_nonscalar_valuesr  s3  øøøø€ ð �YÒÐÝŒK˜Ñ(Ô(Ð(ð 1Ð1°AÑ5Ø,ð9
àñ9ñ ˆõ Œi×#Ò# DÑ)Ô)ˆØ—’˜OÑ,Ô,ˆØ—’˜IÑ&Ô&ˆå�F˜F F°6Ø!&ð(ñ (ô (ˆàŒw˜)Ò#Ð#Ð# VÑ#Ô#Ð#ð=ð =ð =ð =ð =ð =ð =Ý38¸±8´8ð=ñ =ô =ˆåŒX�b‰\Œ\×#Ò# A q¨!Ñ,Ô,ˆå˜˜2 E°6Ð:Ñ:Ô:Ð:Ð:Ð:r+   c                 óÚ  ‡‡‡‡— ‰dv rt          j        d¦  «         g d¢Št          j                             d¦  «        }d}|                     dddd	g|¢R ¦  «        Š|                     d
¦  «        Št          ‰‰‰‰d¬¦  «        }|j        dg|¢R k    sJ ‚ˆˆˆˆfd„t          ‰j        d         ¦  «        D ¦   «         }t          |t          j	        |¦  «        j
        d‰¬¦  «         d S )N>   rI   rJ   rC  rU  rË   r\  rå   rÁ   r  r]  r   Fr  rZ   c                 óf   •‡— g | ],Šˆˆˆˆˆfd „t          ‰j        d         ¦  «        D ¦   «         ‘Œ-S )c           	      óJ   •— g | ]}t          ‰‰d |‰f         ‰‰d¬¦  «        ‘Œ S rÕ  rÖ  )r¯   r  rQ  r   r#   rD   r$   s     €€€€€r)   r±   zBTestInterpN.test_nonscalar_values_2.<locals>.<listcomp>.<listcomp>¦  sN   ø€ ð ð ð à01õ ˜  s¨A¨q yÔ 1°6À&Ø%*ð,ñ ,ô ,ðð ð r+   r^  )r,  rÛ   r×  s    @€€€€r)   r±   z7TestInterpN.test_nonscalar_values_2.<locals>.<listcomp>¦  sp   øø€ ð 2ð 2ð 2ð ðð ð ð ð ð ð ð å5:¸6¼<ÈÔ;KÑ5LÔ5Lðñ ô ð 2ð 2ð 2r+   r³   rv   rK  )rO   rf   r   rÍ   r	  r
   rÛ   r,  r   r   rö   )	r"   r   r  rd  rO  rP  r#   rD   r$   s	    `    @@@r)   re  z#TestInterpN.test_nonscalar_values_2Œ  s/  øøøø€ ð Ð)Ð)Ð)ÝŒK˜Ñ(Ô(Ð(ðDð Dð Dˆõ
 Œi×#Ò# DÑ)Ô)ˆà ˆà—’˜Q  1 aÐ:¨/Ð:Ð:Ñ;Ô;ˆØ—’˜A‘”ˆå�F˜F F°6ÈÐNÑNÔNˆð Œw˜1Ð/˜Ð/Ð/Ò/Ð/Ð/Ð/ð2ð 2ð 2ð 2ð 2ð 2ð 2õ ˜vœ|¨BÔ/Ñ0Ô0ð2ñ 2ô 2ˆõ
 	˜�2œ: b™>œ>Ô+°%ÀÐHÑHÔHÐHÐHÐHr+   c                 ó8  — |                       ¦   «         \  }}t          j                             d¦  «         t          j                             ddddd¦  «        }t          j                             ddd¦  «        }t          t          t          |||d¬¦  «         d S )	NrË   rm   rå   rÁ   ræ   r   r§  rB   )r·  r   rÍ   rÎ   rÏ   r`   rP   r
   )r"   r#   r$   rD   s       r)   Ú test_non_scalar_values_splinef2dz,TestInterpN.test_non_scalar_values_splinef2d­  s‹   € à×-Ò-Ñ/Ô/‰ˆ�å
Œ	�Š�tÑÔÐÝ”—’  1 a¨¨AÑ.Ô.ˆÝ”—’  2 qÑ)Ô)ˆÝ•j¥'¨6°6¸6Ø(ð	*ñ 	*ô 	*ð 	*ð 	*ð 	*r+   c                 óv  — |dk    rt          j        d¦  «         |                      ¦   «         \  }}}||f}|d|z  z
  }t          j        g d¢g d¢g¦  «        j        }t          ||||¬¦  «        }t          ||j        ||¬¦  «        }t          ||j        ||¬¦  «        }	|d|	z  z   }
t          ||
¦  «         d S )NrK   rc   rd   r£  r¦  rB   re   )
rO   rf   r¡  r   r_   rö   r
   rg   rh   r   )r"   r   rs   rt   r$   r#   rD   rF   Úv2rÚv2irG   s              r)   rk   zTestInterpN.test_complex·  så   € à�WÒÐÝŒKÐDÑEÔEÐEà×+Ò+Ñ-Ô-‰ˆˆ1ˆfØ�Q�ˆØ˜"˜V™)Ñ#ˆå”Ð:Ð:Ð:Ø:Ð:Ð:ð<ñ =ô =Ü=>ð 	õ �V˜V V°FÐ;Ñ;Ô;ˆÝ�f˜fœk¨6¸&ÐAÑAÔAˆÝ�f˜fœk¨6¸&ÐAÑAÔAˆØ�2�c‘6‰\ˆå˜˜BÑÔÐÐÐr+   c                 ó  — |                       ¦   «         \  }}}||f}|d|z  z
  }t          j        g d¢g d¢g¦  «        j        }t	          j        t          d¬¦  «        5  t          |||d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nrd   r£  r¦  rg   rM   rK   rB   )r¡  r   r_   rö   rO   r   rP   r
   ©r"   rs   rt   r$   r#   rD   s         r)   Útest_complex_pchipzTestInterpN.test_complex_pchipÊ  sð   € ð ×+Ò+Ñ-Ô-‰ˆˆ1ˆfØ�Q�ˆØ˜"˜V™)Ñ#ˆå”Ð:Ð:Ð:Ø:Ð:Ð:ð<ñ =ô =Ü=>ð 	åŒ]�:¨VÐ4Ñ4Ô4ð 	<ð 	<Ý�F˜F F°7Ð;Ñ;Ô;Ð;ð	<ð 	<ð 	<ñ 	<ô 	<ð 	<ð 	<ð 	<ð 	<ð 	<ð 	<ð 	<øøøð 	<ð 	<ð 	<ð 	<ð 	<ð 	<s   ÁB Â BÂBc                 ó  — |                       ¦   «         \  }}}||f}|d|z  z
  }t          j        g d¢g d¢g¦  «        j        }t	          t
          ¦  «        5  t          |||d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nrd   r£  r¦  r§  rB   )r¡  r   r_   rö   r   r   r
   rá  s         r)   Útest_complex_spline2fdz"TestInterpN.test_complex_spline2fdÖ  sý   € ð ×+Ò+Ñ-Ô-‰ˆˆ1ˆfØ�Q�ˆØ˜"˜V™)Ñ#ˆå”Ð:Ð:Ð:Ø:Ð:Ð:ð<ñ =ô =Ü=>ð 	å�.Ñ)Ô)ð 	@ð 	@Ý�F˜F F°;Ð?Ñ?Ô?Ð?ð	@ð 	@ð 	@ñ 	@ô 	@ð 	@ð 	@ð 	@ð 	@ð 	@ð 	@ð 	@øøøð 	@ð 	@ð 	@ð 	@ð 	@ð 	@s   ÁA9Á9A=Â A=r   rU   r�   c                 ó  — t          j        ddd¦  «        }t          j        ddd¦  «        }t          d¦  «        }t          ||f|ddg|¬	¦  «        }t          ||f|j        ddg|¬	¦  «        }t          ||d
¬¦  «         d S )Nr   r.   rÀ   rZ   rÁ   rÂ   r�   rÃ   rB   FrÄ   )r   rÆ   rÇ   r
   rÈ   r   )r"   r   rs   rt   r$   rF   rG   s          r)   rÉ   z"TestInterpN.test_duck_typed_valuesâ  sŽ   € õ
 ŒK˜˜1˜aÑ Ô ˆÝŒK˜˜1˜aÑ Ô ˆå˜‘”ˆå�a˜�V˜V c¨3 Z¸Ð?Ñ?Ô?ˆÝ�a˜�V˜VœY¨¨c¨
¸6ÐBÑBÔBˆÝ˜˜B¨EÐ2Ñ2Ô2Ð2Ð2Ð2r+   c                 óÈ  — t          j        ddd¦  «        }t          j        ddd¦  «        }t          t           j                             dd¦  «        ¦  «        }t           j                             ddd¦  «        }t          ||f|||¬¦  «        }t          ||ft          j        |¦  «        ||¬¦  «        }|dk    rt          ||d	d
¬¦  «         dS t          ||¦  «         dS )z8np.matrix inputs are allowed for backwards compatibilityr   r.   rå   rZ   rÁ   rm   rB   rJ   g-Cëâ6
?g�íµ ÷ÆÀ>rw   N)r   rÆ   r   rÍ   rÏ   r
   r   r   )r"   r   rs   rt   r$   rD   rF   rG   s           r)   Útest_matrix_inputzTestInterpN.test_matrix_inputð  sÚ   € õ ŒK˜˜1˜aÑ Ô ˆÝŒK˜˜1˜aÑ Ô ˆå�œ	Ÿš q¨!Ñ,Ô,Ñ-Ô-ˆå”—’  1 aÑ(Ô(ˆå�a˜�V˜V V°FÐ;Ñ;Ô;ˆÝ�a˜�V�RœZ¨Ñ/Ô/°ÀÐGÑGÔGˆØ�YÒÐå˜B ¨°DÐ9Ñ9Ô9Ð9Ð9Ð9å˜B Ñ#Ô#Ð#Ð#Ð#r+   c                 óV  — t          j        g d¢g¦  «        }t          j        ddgddgddgg¦  «        }t          dgg d¢f||¦  «        }g d¢}t          ||d¬	¦  «         t          j        d
dgddgddgg¦  «        }t          dgg d¢f||dd ¬¦  «        }t          ||d¬	¦  «         d S )N)r=   rZ   r   rZ   gš™™™™™@gš™™™™™	@gffffff@)r.   rm   r   )gìQ¸…ëÑ?gffffff@gffffff @r\   r]   r—   r4   gffffffÀFrš   )r   r_   r
   r   )r"   r$   r*  r  r„   s        r)   rï   z TestInterpN.test_length_one_axis  sê   € õ
 ”˜<˜<˜<˜.Ñ)Ô)ˆÝŒX˜˜3�x ! S ¨A¨s¨8Ð4Ñ5Ô5ˆå˜�s˜I˜I˜IÐ&¨°Ñ3Ô3ˆðð ð ˆõ 	˜˜V¨%Ð0Ñ0Ô0Ð0õ ŒX˜˜S�z C¨ :°°c¨{Ð;Ñ<Ô<ˆÝ˜�s˜I˜I˜IÐ&¨°Ø#(°Tð;ñ ;ô ;ˆõ 	˜˜V¨%Ð0Ñ0Ô0Ð0Ð0Ð0r+   c           	      ód  — d„ }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        }||||f} |t          j        |dddœŽŽ }dd	t          j        t          j        d
dd¦  «        ¦  «        t          j        d
d	d¦  «        f}t          |||¦  «        }	|d d d…         }
|d d d…         }|d d d…         }|d d d…         }|
|||f} |t          j        |dddœŽŽ }t          |||¦  «        }t          |	|¦  «         d S )Nc                 ó0   — d| dz  z  d|dz  z  z   |z
  |z
  S r  rq   r  s       r)   Úvalue_func_4dz9TestInterpN.test_descending_points.<locals>.value_func_4d  s'   € Ø�q˜A‘v‘:  A¨¡F¡
Ñ*¨QÑ.°Ñ2Ð2r+   )r   rZ   r.   rm   )r   r   rÓ   rÔ   )r   r=   r@   rì   rn   Trá   r=   rì   r   rÔ   r   r³   )r   r_   ry   rN  rÆ   r
   r   )r"   rë  Úx1Úx2Úx3Úx4r#   r$   rn  Úcorrect_resultÚ
x1_descendÚ
x2_descendÚ
x3_descendÚ
x4_descendÚpoints_shuffledÚvalues_shuffledÚtest_results                    r)   Útest_descending_pointsz"TestInterpN.test_descending_points  sj  € ð	3ð 	3ð 	3õ ŒX�l�l�lÑ#Ô#ˆÝŒX�o�o�oÑ&Ô&ˆÝŒX�o�o�oÑ&Ô&ˆÝŒXÐ&Ð&Ð&Ñ'Ô'ˆØ�b˜"˜bÐ!ˆØ�ÝŒ[˜&¨4¸Ð=Ð=Ð=ð?ˆà�C�œ¥b¤k°!°R¸Ñ&;Ô&;Ñ<Ô<ÝŒ{˜1˜c 1Ñ%Ô%ð'ˆå  ¨°Ñ5Ô5ˆà˜˜˜"˜”Xˆ
Ø˜˜˜"˜”Xˆ
Ø˜˜˜"˜”Xˆ
Ø˜˜˜"˜”Xˆ
Ø% z°:¸zÐJˆØ'˜-ÝŒ[˜/°DÀÐFÐFÐFðHˆå˜o¨ÀÑDÔDˆå˜¨Ñ4Ô4Ð4Ð4Ð4r+   c                 ót  — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        g d¢g d¢g d¢g d¢g d¢g¦  «        }t          j        g d¢g d¢g¦  «        j        }d}t          j        t
          |¬	¦  «        5  t          ||f||¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )
Nr:  r=  r­  r®  r¯  r°  r±  r>  rM   )r   r_   rö   rO   r   rP   r
   )r"   rs   rt   rù   r*  rN   s         r)   r?  z%TestInterpN.test_invalid_points_order3  s'  € ÝŒHÐ*Ð*Ð*Ñ+Ô+ˆÝŒHÐ*Ð*Ð*Ñ+Ô+ˆÝŒH�o�o�o   ¸¸¸Ø%�o�o   ð8ñ 9ô 9ˆåŒXÐ6Ð6Ð6Ø7Ð7Ð7ð9ñ :ô :Ü:;ð 	ð ;ˆÝŒ]�:¨UÐ3Ñ3Ô3ð 	#ð 	#Ý�Q˜�F˜A˜rÑ"Ô"Ð"ð	#ð 	#ð 	#ñ 	#ô 	#ð 	#ð 	#ð 	#ð 	#ð 	#ð 	#ð 	#øøøð 	#ð 	#ð 	#ð 	#ð 	#ð 	#s   ÂB-Â-B1Â4B1c                 óÀ   — dg}ddg}t          j        d¦  «        }d}t          t          |¬¦  «        5  t	          |||¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)r   rZ   r   rZ   )rZ   rZ   rm   zaThe requested sample points xi have dimension 3, but this RegularGridInterpolator has dimension 1rM   )r   rÚ   r`   rP   r
   )r"   r#   r$   r*  Úmsgs        r)   Útest_invalid_xi_dimensionsz&TestInterpN.test_invalid_xi_dimensions?  s±   € à�ˆØ�Q�ˆÝŒW�YÑÔˆð9ˆå�:¨SÐ1Ñ1Ô1ð 	(ð 	(Ý�F˜F BÑ'Ô'Ð'ð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(ð 	(ð 	(s   ´AÁAÁAc                 óŽ  — t          j        ddd¦  «        }t          j        ddd¦  «        }t          j        ddd¦  «        }|||f}t          j        d¦  «        }t          j        g d¢¦  «        }|D ]}d|j        _        Œd|j        _        d|j        _        t          |||¦  «          t          ||¦  «        |¦  «         d S )	Nr   r   rÀ   rå   rÁ   ©rÀ   rå   rÁ   ©ç®Gáz®@çö(\�Âõ@gffffffò?F©r   rÆ   rÚ   r_   ÚflagsÚ	writeabler
   r	   )r"   rs   rt   rù   r#   r$   ÚpointÚds           r)   Útest_readonly_gridzTestInterpN.test_readonly_gridI  sÎ   € åŒK˜˜1˜aÑ Ô ˆÝŒK˜˜1˜aÑ Ô ˆÝŒK˜˜1˜aÑ Ô ˆØ�Q˜�ˆÝ”˜Ñ#Ô#ˆÝ”Ð+Ð+Ð+Ñ,Ô,ˆØð 	&ð 	&ˆAØ %ˆAŒGÔÐØ!&ˆŒÔØ %ˆŒÔÝ�˜ Ñ&Ô&Ð&Ø/Õ ¨Ñ/Ô/°Ñ6Ô6Ð6Ð6Ð6r+   c                 ó`  — t          j        ddd¦  «        }t          j        ddd¦  «        }||f}t          j        d¦  «        }t          j        ddg¦  «        }|D ]}d|j        _        Œd|j        _        d|j        _        t          |||¦  «          t          ||¦  «        |¦  «         d S )	Nr   r   rÀ   rå   ©rÀ   rå   r   r  Fr  )r"   rs   rt   r#   r$   r  r  s          r)   Útest_2d_readonly_gridz!TestInterpN.test_2d_readonly_gridX  s¶   € õ ŒK˜˜1˜aÑ Ô ˆÝŒK˜˜1˜aÑ Ô ˆØ�Q�ˆÝ”˜‘”ˆÝ”˜$ ˜Ñ&Ô&ˆØð 	&ð 	&ˆAØ %ˆAŒGÔÐØ!&ˆŒÔØ %ˆŒÔÝ�˜ Ñ&Ô&Ð&Ø/Õ ¨Ñ/Ô/°Ñ6Ô6Ð6Ð6Ð6r+   c                 óê  — t          j        ddd¦  «        }t          j        |t          j        |¦  «        f¦  «        j                             ¦   «         d d …df         }|j        j        rJ ‚t          j        ddd¦  «        }t          j        ddd¦  «        }|||f}t          j        d¦  «        }t          j	        g d¢¦  «        }t          |||¦  «          t          ||¦  «        |¦  «         d S )Nr   r   rÀ   rå   rÁ   rþ  rÿ  )r   rÆ   rõ   Ú
empty_likerö   r›  r  Úc_contiguousrÚ   r_   r
   r	   )r"   rs   rt   rù   r#   r$   r  s          r)   Útest_non_c_contiguous_gridz&TestInterpN.test_non_c_contiguous_gridg  sé   € åŒK˜˜1˜aÑ Ô ˆÝŒI�q�"œ-¨Ñ*Ô*Ð+Ñ,Ô,Ô.×3Ò3Ñ5Ô5°a°a°a¸°dÔ;ˆØ”7Ô'Ð'Ð'Ð'ÝŒK˜˜1˜aÑ Ô ˆÝŒK˜˜1˜aÑ Ô ˆØ�Q˜�ˆÝ”˜Ñ#Ô#ˆÝ”Ð+Ð+Ð+Ñ,Ô,ˆÝ�˜ Ñ&Ô&Ð&Ø/Õ ¨Ñ/Ô/°Ñ6Ô6Ð6Ð6Ð6r+   rÖ   z>f8z<f8c                 ó  — t          j        ddd|¬¦  «        }t          j        ddd|¬¦  «        }||f}t          j        d|¬¦  «        }t          j        ddg|¬¦  «        }t	          |||¦  «          t          ||¦  «        |¦  «         d S )	Nr   r   rÀ   rÕ   rå   r	  r   r  )r   rÆ   rÚ   r_   r
   r	   )r"   rÖ   rs   rt   r#   r$   r  s          r)   Útest_endiannesszTestInterpN.test_endiannesst  sœ   € õ ŒK˜˜1˜a uÐ-Ñ-Ô-ˆÝŒK˜˜1˜a uÐ-Ñ-Ô-ˆØ�Q�ˆÝ”˜ uÐ-Ñ-Ô-ˆÝ”˜$ ˜¨UÐ3Ñ3Ô3ˆÝ�˜ Ñ&Ô&Ð&Ø/Õ ¨Ñ/Ô/°Ñ6Ô6Ð6Ð6Ð6r+   N)&rƒ  r„  r…  r¡  rª  r†  rH   rµ  r·  r¼  rÁ  rÃ  rÅ  rÈ  rË  rÒ  rO   r‡  r‰  rR  re  rÜ  rk   rŽ  râ  rä  rˆ  rÉ   r   rç  rï   rø  r?  rü  r  r
  r  r  rq   r+   r)   rŸ  rŸ  ä  s¦  € € € € € ðð ð ð>ð >ð >ð $ð0ð 0ñ $Ô#ð0ð;ð ;ð ;ð&ð ð ð=ð =ð =ð2ð 2ð 2ð=ð =ð =ð2ð 2ð 2ð ð  ð  ð2ð 2ð 2ð $ð2ð 2ñ $Ô#ð2ð& „[×Ò˜1ÑÔØ#ð;ð ;ñ $Ô#ñ Ôð;ð0 $ðIð Iñ $Ô#ðIð@*ð *ð *ð $ð ð  ñ $Ô#ð ð$ „[Ôð	<ð 	<ñ Ôð	<ð „[Ôð	@ð 	@ñ Ôð	@ð „[×ÒØØ	�9Ðñô ð3ð 3ñ	ô ð3ð Ø#ð$ð $ñ $Ô#ñ Ôð$ð"1ð 1ð 1ð,5ð 5ð 5ð4
#ð 
#ð 
#ð(ð (ð (ð7ð 7ð 7ð7ð 7ð 7ð7ð 7ð 7ð „[×Ò˜W u¨e nÑ5Ô5ð	7ð 	7ñ 6Ô5ð	7ð 	7ð 	7r+   rŸ  )!r´   rO   Únumpyr   Únumpy.testingr   Úscipy._lib._array_apir   r   r   Úscipy.conftestr   r   r`   Úscipy.interpolater	   r
   r   r   r   Úscipy.sparse._sputilsr   Úscipy._lib._utilr   Úscipy._lib._testutilsr   r‡  rˆ  Ú_ALL_METHODSr†  r   rÇ   rŸ  rq   r+   r)   ú<module>r     sÔ  ðØ Ð Ð Ð à €€€Ø Ð Ð Ð à &Ð &Ð &Ð &Ð &Ð &ðð ð ð ð ð ð ð ð ð ð /Ð .Ð .Ð .Ð .Ð .à *Ð *Ð *Ð *Ð *Ð *ðLð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð )Ð (Ð (Ð (Ð (Ð (Ø +Ð +Ð +Ð +Ð +Ð +Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9ð "(¤×!8Ò!8ØÐ%Ô2ñ"ô "Ð ðr
7ð r
7ð r
7ð r
7ð r
7ñ r
7ô r
7ð r
7ðj6ð 6ð 6ð 6ð 6ñ 6ô 6ð 6ð(Z7ð Z7ð Z7ð Z7ð Z7ñ Z7ô Z7ð Z7ð Z7ð Z7r+   