ó
áp7]c           @   sl   d  Z  d d l Z d d l m Z d d l m Z m Z m Z m	 Z	 d „  Z
 d „  Z d „  Z d „  Z d S(	   s>   

Created on Sat Mar 23 13:34:19 2013

Author: Josef Perktold
iÿÿÿÿN(   t   brentq_expanding(   t   assert_allcloset   assert_equalt   assert_raisest   assert_array_lessc         C   s   |  | d } | S(   Ni   (    (   t   xt   at   f(    (    sG   lib/python2.7/site-packages/statsmodels/tools/tests/test_rootfinding.pyt   func   s    c         C   s8   t  j |  ƒ }  |  d | d } t  j | |  | k  <| S(   Ng      ð?i   (   t   npt
   atleast_1dt   nan(   R   R   t   bR   (    (    sG   lib/python2.7/site-packages/statsmodels/tools/tests/test_rootfinding.pyt   func_nan   s    c         C   s   |  | d } | S(   Ni   (    (   R   R   R   (    (    sG   lib/python2.7/site-packages/statsmodels/tools/tests/test_rootfinding.pyt   funcn   s    c          C   sp  d i  f d i  f d i  f d t  d d ƒ f d t  d d	 ƒ f d t  d d
 d d ƒ f d t  d d d d	 ƒ f g }  t d  f t t f t d  f t t f g } xp | D]h \ } } xY |  D]Q \ } } i | d 6} | j | ƒ t | d | f | } t | | d d ƒq¹ Wq¦ Wt	 t
 t t d d) d d d d ƒt	 t
 t t d d* d d ƒt	 t t t d d+ d d ƒt	 t
 t t d d, ƒd } t t d | f d t ƒ\ } }	 t | | d d ƒi d d 6d- d 6d. d" 6d# d$ 6d% d& 6d d' 6t d# 6}
 t |	 j d d( ƒ t |	 j d& d( ƒ x8 |
 D]0 } | d/ k r:q"n  t |
 | |	 j | ƒ q"Wt |	 j | d d ƒd  S(0   Ni    i2   iÎÿÿÿi ¡ t   lowi'  i°<ÿÿt   uppiüÿÿià“ i`®
 iîþÿt
   increasingt   argst   rtolgñhãˆµøä>iÀcÿÿiðØÿÿt   max_iti   t
   maxiter_bqi   iìÿÿÿg333333ã?iô  t   full_outputi?   t
   iterationsiÿÿÿÿi   t   start_boundsid   iè  t   brentq_boundst	   convergedt   flagi@   t   function_callst   iterations_expandiF   (   i°<ÿÿ(   i°<ÿÿ(   i°<ÿÿ(   iìÿÿÿg333333ã?(   iÿÿÿÿi   (   id   iè  (   R   R   (   t   dictR   t   Nonet   TrueR   t   Falset   updateR    R   R   t
   ValueErrort   RuntimeErrorR   R   t   __dict__R   t   root(   t   casest   funcsR   t   incR   t   kwdst   kwt   rest   valt   infot   info1t   k(    (    sG   lib/python2.7/site-packages/statsmodels/tools/tests/test_rootfinding.pyt   test_brentq_expanding    sD    						
"!(   t   __doc__t   numpyR	   t   statsmodels.tools.rootfindingR    t   numpy.testingR   R   R   R   R   R   R   R1   (    (    (    sG   lib/python2.7/site-packages/statsmodels/tools/tests/test_rootfinding.pyt   <module>   s   "			