ó
ī&]\c           @` sŖ  d  d l  m Z m Z m Z d  d l 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 m Z m Z m Z m Z m Z m Z d  d l m Z m Z d  d l m Z m Z m Z m Z m  Z  m! Z! m" Z" m# Z# m$ Z$ d	 e% f d
     YZ& d e% f d     YZ' d e% f d     YZ( d e% f d     YZ) d e% f d     YZ* d e% f d     YZ+ d e% f d     YZ, d  d  d d  Z- d S(   i    (   t   divisiont   print_functiont   absolute_importN(   t   assert_equalt   assert_almost_equalt   assert_array_equalt   assert_array_almost_equalt   assert_allclose(   t   suppress_warnings(   t   raises(   t   arrayt   difft   linspacet   meshgridt   onest   pit   shape(   t   bisplrept   bisplev(	   t   UnivariateSplinet   LSQUnivariateSplinet   InterpolatedUnivariateSplinet   LSQBivariateSplinet   SmoothBivariateSplinet   RectBivariateSplinet   LSQSphereBivariateSplinet   SmoothSphereBivariateSplinet   RectSphereBivariateSplinet   TestUnivariateSplinec           B` sk   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d	   Z d
   Z RS(   c         C` s”   d d d g } d d d g } t  | | d d } t | j   d d g  t | j   d d g  t | j   d  t | d d d g  d d d g  d  S(   Ni   i   i   t   kg        g      ų?(   R   R   t	   get_knotst
   get_coeffsR   t   get_residual(   t   selft   xt   yt   lut(    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_linear_constant   s    c         C` sŌ   d d d g } d d d g } t  | | d d } d } t t |  t | |    t t |  t | | d d   d d d	 g } t t |  t | |    t t |  t | | d d   d  S(
   Ni   i   i   i    i   R   t   nug      ų?g      @(   R   R   R   (   R!   R"   R#   R$   t   arg(    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_preserve_shape   s    %c         C` s”   d d d g } d d d g } t  | | d d } t | j   d d g  t | j   d d g  t | j   d  t | d d d g  d d d g  d  S(	   Ni   i   i   i    i   R   g        g      ų?(   R   R   R   R   R   R    (   R!   R"   R#   R$   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_linear_1d(   s    c         C` sl   d t  f d     Y} | d d d d d g d d d d d g d d } t | d	 d
 g  d d g  d  S(   Nt
   ZeroSplinec           B` s   e  Z d    Z RS(   c         S` s   d t  |  S(   Ni    (   R
   (   R!   R"   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   __call__5   s    (   t   __name__t
   __module__R+   (    (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR*   4   s   i   i   i   i   i   R   g      ų?g      @g        (   R   R   (   R!   R*   t   sp(    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_subclassing1   s    3c         C` s\   d d d d d g } d d d d d	 g } t  | | d
 d } t | g   t g    d  S(   Ni   i   i   i   i	   i    i   i   i   R   (   R   R   R
   (   R!   R"   R#   t   spl(    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_empty_input;   s    c         C` sé   d d d d d d d d d	 d
 d d d g } d d d d d d d d d d d d d g } d d d d d d d d d d d d d g } t  d | d | d | d d)  } t d d  d! d" g  } t | d# d$ d% d& g  | d' d( d) S(*   s   Regression test for #1375.g      šægęę<ß&Īäæg_µÕāæg@ų³Ģą7Ńæg46	<ĘægÅóBĻ ¹æg        gÅóBĻ ¹?g46	<Ę?g@ų³Ģą7Ń?g_µÕā?gęę<ß&Īä?g      š?g1\_#ä?g~ačĒā?gwõĘ’Ł?g¶ß5?×?g0ÆmsÖ?gī­xÖ?g   ¢mBgoŁ!ž@guŖ)	~@g”eŻ?Ö­z@g½błż@g¦Öūv5|@geS®š®×s@R"   R#   t   wt   sgJ·dŲvÖ?gŌcą?g=øģ?gt²ļ?g¹?g      ą?gĶĢĢĢĢĢģ?g®Gįz®ļ?t   atolgü©ńŅMb@?N(   R   t   NoneR
   R   (   R!   R"   R#   R2   R0   t   desired(    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_resize_regressionB   s    	!c   
      C` sA  t  j d d t } | d } t d d d  } | j   } d | t  j | d k  | d	 k  <| j   } | d | | | d k  <| d
 | | | d
 k <xt t g D]} | d | d |  } xc d d g D]U } t | | d | | d d d t | | | d | |  | d d d qŠ Wxc d d g D]U } t | | d | | d d d t | | | d | |  | d d d q6Wx0 d d g D]" } t	 t
 | | t d |   qWxc d d g D]U } t | | d | | d d d t | | | d | |  | d d d qĻWqØ W| j   d d !}	 t | | |	  } t | | d d | d d d t | | d d | d d d t	 t
 | | t d d   t | | d d | d d d xd d
 d g D]V } t | |  } t	 t
 | | t d |   t	 t
 t t d | d | d |   qćWd  S(   Ni   t   dtypei   ių’’’i   id   i    g        g      @i’’’’R"   R#   t   extrapolatet   extR4   g¼Ų²Ņ<i   t   zerosi   t   raiset   consti   t   unknown(   t   npt   aranget   floatR   t   copyt
   logical_orR   R   R   t   assert_raisest
   ValueErrort   dictR   R   (
   R!   R"   R#   t   xpt   xp_zerost   xp_clipt   clsR0   R:   t   t(    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_out_of_range_regressionR   s@    
"#0#0 #4###	c         C` sa   t  j d  d } t  j d  d } t  j d d d  } d	 } t t t | | | d | d  S(
   Nid   g      š?i    ic   i
   i’’’’ie   t   bbox(   i’’’’ie   (   R?   R@   R   RD   RE   R   (   R!   t   xst   yst   knotsRM   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_lsq_fpchec{   s    c         C` sŖ   t  j d d d  d } t  j |  } t | | d d } | j d  j d  } t | d  | d   | j d  } t | d  | d	  | j d	 d   d  S(
   Ni    i   iF   i   R3   i   g333333Ó?g333333ć?gÉ?(   R?   R   t   cosR   t   antiderivativet
   derivativeR   t   integral(   R!   R"   R#   R0   t   spl2(    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt"   test_derivative_and_antiderivative   s    c         C` s¢  t  j d d t } | d } t  j |  } t | | d t } | j   d d !} | d } x;t  j t  j t  j g D] } | | d <t	 t
 t t d | d | d t   t	 t
 t t d | d | d t   t	 t
 t t d | d | d	 | d t   | | d <| | d <t	 t
 t t d | d | d
 | d t   t	 t
 t t d | d | d
 | d t   t	 t
 t t d | d | d	 | d
 | d t   qz Wd  S(   Ni
   R8   i   t   check_finitei   i’’’’R"   R#   RK   R2   (   R?   R@   RA   t	   ones_likeR   t   TrueR   t   nant   infRD   RE   RF   R   R   (   R!   R"   R#   R2   R0   RK   t   y_endt   z(    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_nan   s,    

 
			"

	"	"	c         C` s  t  j d d t } | d } t  j d d t } | d | d <| d } t  j |  } t | | d t } | j   d d !} t t t t	 d | d	 | d t   t t t
 t	 d | d	 | d t   t t t t	 d | d	 | d
 | d | d t   d  S(   Ni
   R8   i   i    i   RX   i   R"   R#   RK   R2   (   R?   R@   RA   RY   R   RZ   R   RD   RE   RF   R   R   (   R!   t   xxt   yyR"   R#   R2   R0   RK   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_increasing_xŖ   s    

			(   R,   R-   R%   R(   R)   R/   R1   R7   RL   RQ   RW   R_   Rb   (    (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR      s   						
			)			t   TestLSQBivariateSplinec           B` s,   e  Z d    Z d   Z d   Z d   Z RS(   c   
      C` s  d d d d d d d d d g	 } d d d d d d d d d g	 } d d d d d d d d d g	 } d } d | d | g } d | d | g } t    P } | j t d  } t | | | | | d d d d }	 t t |  d  Wd  QXt |	 d d  d  d  S(	   Ni   i   i   g¹?s   
The coefficients of the splinet   kxt   kyg      @(   R   t   recordt   UserWarningR   R   t   lenR   (
   R!   R"   R#   R^   R3   t   txt   tyt   supt   rR$   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR%   ¾   s    !!!$c         C` s  d d d d d d d d d g	 } d d d d d d d d d g	 } d d d d d d d d d g	 } d } d | d | g } d | d | g } t    ; } | j t d	  t | | | | | d
 d d d } Wd  QX| j   \ } } x*t | d  | d  D]\ }	 }
 xt | d  | d  D]é \ } } xŚ d d d g D]É } xĄ d d d g D]Æ } |	 d | |
 | } | d | | | } | |	 |  
d | d | | |
 |  | d | | |	 |  d | | | |
 |  | | } t | | |  |  qWWqAWq%WqWd  S(   Ni   i   i   i    i   i   i   g¹?s   
The coefficients of the splineRd   Re   i’’’’g      ą?gĶĢĢĢĢĢģ?g333333Ó?gŁ?gffffffę?(   R   t   filterRg   R   R   t   zipR   (   R!   R"   R#   R^   R3   Ri   Rj   Rk   R$   t   xat   xbt   yat   ybRK   RG   t   ypt   zp(    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_bilinearityĢ   s$    !!!*$$gc         C` sī  d d d d d d d d d g	 } d d d d d d d d d g	 } t  d d d d d d d d d g	  } d } d | d | g } d | d | g } t   P } | j t d	  } t | | | | | d
 d d d }	 t t |  d  Wd  QX|	 j   \ } } |	 | |  }
 d t |  d  d   d  f t |  d  d  d   f |
 d  d  d  d  f |
 d d   d  d  f |
 d  d  d d   f |
 d d   d d   f j
   } t |	 j | d | d | d | d  |  d  S(   Ni   i   i   i   i    i   i   g¹?s   
The coefficients of the splineRd   Re   g      Š?i’’’’(   R
   R   Rf   Rg   R   R   Rh   R   R   R5   t   sumR   RU   (   R!   R"   R#   R^   R3   Ri   Rj   Rk   Rl   R$   t   tzt   trpz(    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_integralå   s     !!'$„(c   
      C` s4  d d d d d d d d d g	 } d d d d d d d d d g	 } d d d d d d d d d g	 } d } d | d | g } d | d | g } t    P } | j t d  } t | | | | | d d d d }	 t t |  d  Wd  QXt |	 g  g   t j d
   t |	 g  g  d	 t	 t j d   d  S(   Ni   i   i   g¹?s   
The coefficients of the splineRd   Re   i    t   grid(   i    i    (   i    (
   R   Rf   Rg   R   R   Rh   R   R?   R;   t   False(
   R!   R"   R#   R^   R3   Ri   Rj   Rk   Rl   R$   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR1   ł   s    !!!$(   R,   R-   R%   Ru   Ry   R1   (    (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyRc   ¼   s   			t   TestSmoothBivariateSplinec           B` s,   e  Z d    Z d   Z d   Z d   Z RS(   c      	   C` s(  d d d d d d d d d g	 } d d d d d d d d d g	 } d d d d d d d d d g	 } t  | | | d d d d } t | j   d d d d g d d d d g f  t | j   d d d d g  t | j   d  t | d d d g d d g  d d g d d g d d g g  d  S(   Ni   i   i   Rd   Re   g        g      ų?(   R   R   R   R   R   R    (   R!   R"   R#   R^   R$   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR%     s    !!!1c      	   C` s(  d d d d d d d d d g	 } d d d d d d d d d g	 } d d d d d d d d d g	 } t  | | | d d d d } t | j   d d d d g d d d d g f  t | j   d d d d g  t | j   d  t | d d	 d g d d	 g  d d g d d g d d g g  d  S(
   Ni   i   i   i    i   Rd   Re   g        g      ų?(   R   R   R   R   R   R    (   R!   R"   R#   R^   R$   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR)     s    !!!1c         C` s  d d d d d d d d d g	 } d d d d d d d d d g	 } t  d d d d d d d d d g	  } t   ; } | j t d  t | | | d	 d d
 d d d } Wd  QXd d d g } d d d g } | | |  } d t |  d  d   d  f t |  d  d  d   f | d  d  d  d  f | d d   d  d  f | d  d  d d   f | d d   d d   f j   }	 t | j	 | d | d | d | d  |	  t | | | d	 d d
 d d d }
 t |
 j	 | d | d | d | d  |	 d d | | d  | d   } d t | d   d  d   d  f t | d   d  d  d   f | d  d  d  d  f | d d   d  d  f | d  d  d d   f | d d   d d   f j   }	 t | j	 | d | d | d | d  |	  d  S(   Ni   i   i   i   i    i   i   s   
The required storage spaceRd   Re   R3   g      Š?i’’’’t   decimaliž’’’(
   R
   R   Rm   Rg   R   R   R5   Rv   R   RU   (   R!   R"   R#   R^   Rk   R$   Ri   Rj   Rw   Rx   t   lut2(    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyRy     s&    !!'*„/$.­c   
      C` s“   t  j d d d  } t  j d d d  } | | } t  j d d d  } t  j d d d  } t | | |  } t | | |  } t | | |  } | | |  }	 t | |	  d  S(   Niž’’’i   iP   i’’’’i   id   (   R?   R   R   R   R   R   (
   R!   R"   R#   R^   t   xit   yit   tckt   res1t   interp_t   res2(    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_rerun_lwrk2_too_small:  s    
(   R,   R-   R%   R)   Ry   R   (    (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR|   
  s   	
	
	t   TestLSQSphereBivariateSplinec           B` s#   e  Z d    Z d   Z d   Z RS(   c         C` s7  d \ } } t  d | d d d | d |  t } t  d | d d d | d |  d t } t | j d | j d f  } | d  d  d  } | d  d  d  } | d  d  d  d  d  d  f } t | |  \ }	 }
 t |	 j   |
 j   | j j   | |  } | |  _ | |  _	 | | |  _
 |  _ d  S(	   NiF   iZ   g      ą?i   g       @i    i   (   iF   iZ   (   R   R   R   R   R   R   t   ravelt   Tt   lut_lsqt   datat   new_lonst   new_lats(   R!   t   nthetat   nphit   thetat   phiR   t   knotstt   knotspt   knotdatat   latst   lonsR   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   setup_methodK  s    *. "		c         C` s<   t  |  j j   d  t |  j |  j |  j  |  j  d  S(   Ng        (   R   R   R    R   R   R   R   (   R!   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR%   ]  s    c         C` sN   t  |  j g  g   t j d   t  |  j g  g  d t t j d   d  S(   Ni    Rz   (   i    i    (   i    (   R   R   R?   R;   R{   (   R!   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR1   b  s    "(   R,   R-   R   R%   R1   (    (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR   J  s   		t   TestSmoothSphereBivariateSplinec           B` s#   e  Z d    Z d   Z d   Z RS(   c         C` sŠ   t  d t d t d t d t d t d t d t d t d t g	  } t  d t t d t d t t d t d t t d t g	  } t  d d d d d d d d d g	  } t | | | d d |  _ d  S(   Ng      Š?g      ą?g      č?g      ų?i   R3   g    _ B(   R
   R   R   R$   (   R!   R   R   Rl   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR   h  s    4/'c         C` s]   t  |  j j   d  t |  j d d d g d d g  d d g d d g d d g g  d  S(   Ng        i   g      ų?i   i   (   R   R$   R    R   (   R!   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR%   p  s    !c         C` sN   t  |  j g  g   t j d   t  |  j g  g  d t t j d   d  S(   Ni    Rz   (   i    i    (   i    (   R   R$   R?   R;   R{   (   R!   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR1   u  s    "(   R,   R-   R   R%   R1   (    (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR   g  s   		t   TestRectBivariateSplinec           B` s5   e  Z d    Z d   Z d   Z d   Z d   Z RS(   c      
   C` sČ   t  d d d d d g  } t  d d d d d g  } t  d d d d d g d d d d d g d d d d d g d d d d d g d d d d d g g  } t | | |  } t | | |  |  d  S(   Ni   i   i   i   i   (   R
   R   R   (   R!   R"   R#   R^   R$   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_defaults{  s
    fc      
   C` sB  t  d d d d d g  } t  d d d d d g  } t  d d d d d g d d d d d g d d d d d g d d d d d g d d d d d g g  } t | | |  } d d d d d	 d
 d g } d d	 d
 d d d d g } | j | |  } t  g  t | |  D] \ } }	 | | |	  d ^ q	 }
 t | |
  d  S(   Ni   i   i   i   i   gffffff@g333333@g      ą?gffffff
@g333333ó?g      @g      @g      š?i    (   i    i    (   R
   R   t   evRn   R   (   R!   R"   R#   R^   R$   R   R   t   ziRG   Rs   t   zi2(    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_evaluate  s    f;c      
   C` sF  t  d d d d d g  } t  d d d d d g  } t  d d d d d g d d d d d g d d d d d g d d d d d g d d d d d g g  } t  d d d d d g d d d d d g d d d d d g d d d	 d d g d d d d d g g  d
 } t  d d d d d g d d d d d g d d d d d g d d d d d g d d d d d g g  } t  d d d d d g d d d d d g d d d d d g d d d d d  g d d d d d g g  d
 } t | | |  } t | | | d! d |  t | | | d" d |  t | | | d! d d" d |  d  S(#   Ni   i   i   i   i   i    iģ’’’i   iõ’’’g      @i’’’’iü’’’g      ų?g      ųæg      Š?g      Šæiž’’’i(   iē’’’i   iŲ’’’ię’’’g     @0@g     @0Ąi   ių’’’iū’’’i   i   g     +Ąg     +@iź’’’t   dxt   dy(   R
   R   R   (   R!   R"   R#   R^   R   R   t   dxdyR$   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_derivatives_grid  s    f919-'Cc      
   C` ss  t  d d d d d g  } t  d d d d d g  } t  d d d d d g d d d d d g d d d d d g d d d d d g d d d d d g g  } t  d d d d d g  } t  d d d d	 d
 g  } t  d d d d d g  d } t | | |  } t | | | d d d t |  t | | | d d d t |  t | | | d d d d d t |  d  S(   Ni   i   i   i   i   i    g       @i’’’’g      Šæiü’’’i    iA   i7   i    g      8@R   Rz   R   gUUUUUUå?(   R
   R   R   R{   (   R!   R"   R#   R^   R   R   R    R$   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_derivatives  s    f""c      
   C` s÷   t  d d d d d g  } t  d d d d d g  } t  d d d d d g d d d d d g d d d d d g d d d d d g d d d d d g g  } t | | |  } t | | |  | | d  d   d  f | d  d  d   f d t  d  S(   Ni   i   i   i   i   Rz   (   R
   R   R   R5   R{   (   R!   R"   R#   R^   R$   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   test_broadcastŖ  s
    f(   R,   R-   R   R   R”   R¢   R£   (    (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR   z  s
   				t   TestRectSphereBivariateSplinec           B` s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C` s  t  d d t d d  } t  d t d d  } t d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g g  } t | | |  } t | | |  |  d  S(   Ng{®Gįz?i   i   i   i   (   R   R   R
   R   R   (   R!   R#   R"   R^   R$   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR   ³  s    KH!c         C` s  t  d d t d d  } t  d t d d  } t d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g g  } t | | |  } d d d d d	 d
 d g } d d d d d d d g } | j | |  } t g  t | |  D] \ } }	 | | |	  d ^ qQ }
 t | |
  d  S(   Ng{®Gįz?i   i   i   i   gÉ?gffffff@gĶĢĢĢĢĢ@g      @gģQøė@g      @g      ų?gŁ?gń?gĶĢĢĢĢĢÜ?gj¼tĪ?g      š?g-Cėā6?i    (   i    i    (   R   R   R
   R   R   Rn   R   (   R!   R#   R"   R^   R$   R   R   R   RG   Rs   R   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR   ¼  s    KH!;c         C` sź  t  d d t d d  } t  d t d d  } t d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g g  } t | | |  } t  d d t d d  } t  d t d d  } t | | | d d t | | | d d d	 d
 d d
 t | | | d d t | | | d d d	 d
 d d
 t | | | d d d d t | | | d d d d d d d	 d d d d  S(   Ng{®Gįz?i   i   i   i   g{®Gįz?t   dthetaR   t   rtolg-Cėā6?R4   t   dphiR   t   epsgķµ ÷Ę°>gü©ńŅMbP?(   R   R   R
   R   R   t   _numdiff_2d(   R!   R#   R"   R^   R$   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR”   É  s    KH!--?c         ` s?  t  d d t d d  } t  d t d d  } t d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g d d d d d d d g g  } t | | |    t  d d t d d  } t  d t d d  } t   | | d d d t j | j  t   | | d d d t t   f d	   | | d
 d d d d d t   | | d d d t t   f d   | | d d d d d d t   | | d d d d d t t   f d   | | d
 d d d d d d d d d d  S(   Ng{®Gįz?i   i   i   i   g{®Gįz?R„   Rz   c         ` s     |  | d t  S(   NRz   (   R{   (   R"   R#   (   R$   (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   <lambda>ź  s    R   R¦   g-Cėā6?R4   R§   c         ` s     |  | d t  S(   NRz   (   R{   (   R"   R#   (   R$   (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyRŖ   ķ  s    R   c         ` s     |  | d t  S(   NRz   (   R{   (   R"   R#   (   R$   (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyRŖ   š  s    RØ   gķµ ÷Ę°>gü©ńŅMbP?(	   R   R   R
   R   R   R{   R   R   R©   (   R!   R#   R"   R^   (    (   R$   sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR¢   Ü  s$    KH!(!!!-(   R,   R-   R   R   R”   R¢   (    (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR¤   ²  s   				g:0āyE>c         C` s1  | d k r% | d k r% |  | |  S| d k rg | d k rg |  | | |  |  | | |  d | S| d k r© | d k r© |  | | |  |  | | |  d | S| d k r!| d k r!|  | | | |  |  | | | |  |  | | | |  |  | | | |  d | d St  d   d  S(   Ni    i   i   s   invalid derivative order(   RE   (   t   funcR"   R#   R   R   RØ   (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyR©   ō  s    **`(.   t
   __future__R    R   R   t   numpyR?   t   numpy.testingR   R   R   R   R   t   scipy._lib._numpy_compatR   t   pytestR	   RD   R
   R   R   R   R   R   R   t   scipy.interpolate.fitpackR   R   t   scipy.interpolate.fitpack2R   R   R   R   R   R   R   R   R   t   objectR   Rc   R|   R   R   R   R¤   R©   (    (    (    sD   lib/python2.7/site-packages/scipy/interpolate/tests/test_fitpack2.pyt   <module>   s   (4@©N@8B