
Xc           @` s   d  Z  d d l m Z m Z m Z d d l Z d d l Z d d l m Z m	 Z	 m
 Z
 m Z m Z m Z d d l m Z m Z m Z m Z m Z m Z d Z d e f d     YZ e d	 k r e   n  d S(
   s"    Test functions for linalg module
i    (   t   divisiont   absolute_importt   print_functionN(   t   linalgt   aranget   float64t   arrayt   dott	   transpose(   t   TestCaset   run_module_suitet   assert_equalt   assert_array_equalt   assert_array_almost_equalt   assert_array_lessi   t   TestRegressionc           B` sY   e  Z e d   Z e d  Z e d  Z d   Z d   Z d   Z d   Z	 d   Z
 RS(   c         C` s   t  d d d d d d d d d d d d d g  } t d d t } d  | _ | d } t j |  \ } } | j   | j   t | |  d  S(!   Ngӝ'Y@y                gF.<2/3gʹLTy        W9>/@g=J&gtV)y        B$@gZynFr62@g(3%@g:@gCr~gYqs`<gt&Aۼi   t   dtypei   yӝ'Y@        yF.<2/3        yʹLTW9>/@yʹLTW9>/y=J&        ytV)忷B$@ytV)忷B$yZynFr62@        y(3%@        y:@        yCr~        yYqs`<        yt&Aۼ        i   (   i   i   (   R   R   R   t   shapeR   t   eigt   sortR   (   t   selft   levelt   rvat   at   vat   ve(    (    sA   /tmp/pip-build-X4mzal/numpy/numpy/linalg/tests/test_regression.pyt   test_eig_build   s(    	


c         C` se   d d d g } t  d d d g d d d g d d d	 g g  } t j |  \ } } t | |  d  S(
   Ng"&Q@ggdV@g7Z@g'UlS@g4h@g%pJ/@g+>V@gqi0gJ%~X@(   R   R   t   eighR   (   R   R   t   rvalst   covt   valst   vecs(    (    sA   /tmp/pip-build-X4mzal/numpy/numpy/linalg/tests/test_regression.pyt   test_eigh_build+   s    c   	      C` s   t  d d g d d g d d g d d g g  } | j \ } } t j |  \ } } } t t | d  d   | d   f  |  } t | t j d   d  S(   Ng        g      ?g       @g      @i   (   i   i   (	   R   R   R   t   svdR   R   R   t   npt   zeros(	   R   R   R   t   mt   nt   ut   st   vht   b(    (    sA   /tmp/pip-build-X4mzal/numpy/numpy/linalg/tests/test_regression.pyt   test_svd_build6   s
    0+c         C` s,   |  j  t t j t d d d g  d  d  S(   Ng      ?g       @g      @t   fro(   t   assertRaisest
   ValueErrorR   t   normR   (   R   (    (    sA   /tmp/pip-build-X4mzal/numpy/numpy/linalg/tests/test_regression.pyt   test_norm_vector_badarg@   s    c         C` se   t  d d g d d g g d d } t  | d d } t j |  } t j |  } t | |  d  S(   NgC$ 3@g&ug.ܷ#@R   s   >f8s   <f8(   R   R   t   choleskyR   (   R   R   R)   t   apt   bp(    (    sA   /tmp/pip-build-X4mzal/numpy/numpy/linalg/tests/test_regression.pyt   test_lapack_endianE   s    c         C` s&   t  j d d  } t  j j |  d  S(   Ni  iB   (   R"   t   eyeR   R!   (   R   t   x(    (    sA   /tmp/pip-build-X4mzal/numpy/numpy/linalg/tests/test_regression.pyt   test_large_svd_32bitO   s    c         C` s   x d	 d
 d f D] } x t  t f D] } t j | d | } t j | d t } t j t j |  d k  } t	 | d  t	 t j j
 |  d  t d t j j | d d  q# Wq Wd  S(   Ni   i   R   t
   compute_uvg      ?i   t   ordi   (   i   i   (   i   i   (   i   i   (   t   floatt   complexR"   t   onesR   R!   t   Falset   count_nonzerot   absoluteR   t   matrix_rankR   R.   (   R   R   t   tR   t   wt   c(    (    sA   /tmp/pip-build-X4mzal/numpy/numpy/linalg/tests/test_regression.pyt   test_svd_no_uvT   s    c      
   C` s  t  j t  j d d g  d d g d t } t j |  } t | d d g  |  j | j t  j d   t j | d d } t | d d g  |  j | j t  j d   t j | d d } t | d d g  |  j | j t  j d   |  j	 t
 t j | d d |  j	 t
 t j | d d |  j	 t
 t j | d t  j |  j	 t
 t j | d t  j t j   7 t j d	 t  |  j	 t t f t j | d d Wd  QX|  j	 t
 t j | d d
 |  j	 t
 t j | d d t  j t  j d d g  d d g d d d g g d t } t j |  } t | d d g  |  j | j t  j d   t j | d d } t | d d g  |  j | j t  j d   |  j	 t t j | d d |  j	 t
 t j | d t  j |  j	 t
 t j | d t  j |  j	 t
 t j | d d |  j	 t
 t j | d d |  j	 t
 t j | d d
 |  j	 t t j | d d |  j	 t t j | d d |  j	 t
 t j | d d d  S(   Ni    i   R   R   R8   i   R+   t   nuct   erroriii   (   R"   R   t   objectR   R.   R   t   assertEqualR   t   assertNotEqualR,   R-   t   inft   warningst   catch_warningst   simplefiltert   DeprecationWarningt   AttributeErrort	   TypeError(   R   t
   testvectorR.   t
   testmatrix(    (    sA   /tmp/pip-build-X4mzal/numpy/numpy/linalg/tests/test_regression.pyt   test_norm_object_array_   sJ    - ! (   t   __name__t
   __module__t   rlevelR   R    R*   R/   R3   R6   RC   RR   (    (    (    sA   /tmp/pip-build-X4mzal/numpy/numpy/linalg/tests/test_regression.pyR      s   
		
		t   __main__(   t   __doc__t
   __future__R    R   R   RJ   t   numpyR"   R   R   R   R   R   R   t   numpy.testingR	   R
   R   R   R   R   RU   R   RS   (    (    (    sA   /tmp/pip-build-X4mzal/numpy/numpy/linalg/tests/test_regression.pyt   <module>   s   ..~