ó
+Šm\c           @` s_  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
 d  d l m Z d  d l Z d  d l m Z d  d l j j Z d  d l Te e e d „ Z e e d „ Z e d	 „ Z d
 „  Z d „  Z d „  Z d „  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 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* e' f d+ „  ƒ  YZ* d, e' f d- „  ƒ  YZ+ d. „  Z, d/ „  Z- d S(0   i    (   t   divisiont   print_functiont   absolute_importN(   t   assert_t   assert_allcloset   assert_equal(   t   raises(   t   linalg(   t   *c         C` sÇ   | d  k r- d t j |  j ƒ j d } n  | d  k rU d t j |  j ƒ j } n  | r t |  j d |  j d k d ƒ n  t j |  j	 j
 ƒ  |  ƒ } t | t j |  j d ƒ d | d | ƒd  S(   Ng      $@i   i    i   s   unitary matrices must be squaret   rtolt   atol(   t   Nonet   npt   finfot   dtypet	   precisiont   epsR   t   shapet   dott   Tt   conjR   t   eye(   t   aR	   R
   t
   assert_sqrt   aTa(    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   assert_unitary   s    !$c         C` sŸ   | d  k r- d t j |  j ƒ j d } n  | d  k rU d t j |  j ƒ j } n  t j |  j d |  j d d t j ƒ } t	 |  | d d | d | ƒd  S(	   Ng      $@i   i    i   iÿÿÿÿg        R	   R
   (
   R   R   R   R   R   R   t   triR   t   bool_R   (   R   R	   R
   t   mask(    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   assert_upper_tri   s    !)c         C` sI   t  |  | | | ƒ t | | | ƒ t |  j | ƒ | d | d | ƒd  S(   NR	   R
   (   R   R   R   R   (   t   qt   rR   R	   R
   R   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   check_qr    s    c   
   	   C` s   d
 d d d d d d d g } t  | ƒ } d } g  } xc|  D][} | j d k r¾ | | | } | d 7} t j | d | j d | d | j ƒ } | | d d  | d … } | | d <nÍ | j d k r| | | } | | d | }	 | d 7} t j | d | j d | d |	 d | j d |	 d f | j ƒ } | | d d  | d … |	 d d  |	 d … f } | | d <n t d	 ƒ ‚ | j | ƒ q= W| S(   Ni   i   i   i   i   i   i    .s0   make_strided only works for ndim = 1 or 2 arrays(   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   t   lent   ndimR   t   zerosR   R   t
   ValueErrort   append(
   t   arrst   stridest   kmaxt   kt   retR   t   st   baset   viewt   t(    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   make_strided%   s*    
,
I2c         C` s¦   g  } x™ |  D]‘ } t  j | ƒ } | j d k rV | d  d  d … d  d  d … f } n1 | j d k r{ | d  d  d … } n t d ƒ ‚ | | d <| j | ƒ q W| S(   Ni   iÿÿÿÿi   s2   negate_strides only works for ndim = 1 or 2 arrays.(   R   t
   zeros_likeR"   R$   R%   (   R&   R*   R   t   b(    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   negate_strides=   s    %
c         C` sk   g  } x^ |  D]V } | j  } t j | j d | f d g ƒ } | j | ƒ } | | d <| j | ƒ q W| S(   NR   t   junkt   S1.(   R3   R4   (   R   R   R#   R   t   getfieldR%   (   R&   t   outR   t   a_dtypeR1   t   c(    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   nonitemsize_stridesK   s    	!
c         C` s:   g  } x- |  D]% } | j  | j | j j ƒ  ƒ ƒ q W| S(   N(   R%   t   astypeR   t   newbyteorder(   R&   R6   R   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   make_nonnativeU   s    #t   BaseQRdeltasc           B` s   e  Z d  „  Z d d „ Z RS(   c         C` sA   d t  j |  j ƒ j d |  _ d t  j |  j ƒ j |  _ d  S(   Ng      $@i   i
   (   R   R   R   R   R	   R   R
   (   t   self(    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   setup_method\   s    !t   fullc         C` sÎ   t  j j d ƒ i d d 6d d 6d d 6d d	 6d d
 6d d 6| } t  j j | ƒ } t  j |  j j d ƒ ƒ r” t  j j | ƒ } | d | } n  | j |  j ƒ } t j | d | ƒ\ } } | | | f S(   NiÆr  i   t   sqri   i   t   tallt   fati   t   Mx1t   1xNt   1x1y              ð?t   mode(   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (	   R   t   randomt   seedt   iscomplexobjR   t   typeR:   R   t   qr(   R>   RK   RG   R   R   R1   R   R   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   generate`   s    (   t   __name__t
   __module__R?   RM   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR=   [   s   	t   BaseQRdeletec           B` s`  e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z e j j  d d ƒ d „  ƒ Z! d „  Z" d  „  Z# d! „  Z$ d" „  Z% d# „  Z& d$ „  Z' d% „  Z( d& „  Z) d' „  Z* d( „  Z+ d) „  Z, d* „  Z- d+ „  Z. d, „  Z/ d- „  Z0 d. „  Z1 d/ „  Z2 d0 „  Z3 d1 „  Z4 d2 d3 „ Z5 d4 „  Z6 d5 „  Z7 d6 „  Z8 d7 „  Z9 d8 „  Z: d9 „  Z; d: „  Z< d; „  Z= d< „  Z> d= „  Z? d> „  Z@ d? „  ZA d@ „  ZB dA „  ZC dB „  ZD RS(C   c         C` s‰   |  j  d ƒ \ } } } xj t | j d ƒ D]U } t | | | d t ƒ\ } } t j | | d ƒ } t | | | |  j |  j	 ƒ q, Wd  S(   NRA   i    t   overwrite_qr(
   RM   t   rangeR   t	   qr_deletet   FalseR   t   deleteR    R	   R
   (   R>   R   R   R   t   rowt   q1t   r1t   a1(    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_sqr_1_rowm   s
    c   	   	   C` s·   |  j  d ƒ \ } } } x˜ t d d ƒ D]‡ } x~ t | j d | ƒ D]e } t | | | | d t ƒ\ } } t j | t | | | ƒ d ƒ } t | | | |  j	 |  j
 ƒ qF Wq( Wd  S(   NRA   i   i   i    RQ   (   RM   RR   R   RS   RT   R   RU   t   sliceR    R	   R
   (	   R>   R   R   R   t   ndelRV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_sqr_p_rowt   s    !"c      	   C` s   |  j  d ƒ \ } } } xp t | j d ƒ D][ } t | | | d d d t ƒ\ } } t j | | d ƒ } t | | | |  j |  j	 ƒ q, Wd  S(   NRA   i   t   whicht   colRQ   (
   RM   RR   R   RS   RT   R   RU   R    R	   R
   (   R>   R   R   R   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_sqr_1_col|   s
    $c   	      C` s½   |  j  d ƒ \ } } } xž t d d ƒ D] } x„ t | j d | ƒ D]k } t | | | | d d d t ƒ\ } } t j | t | | | ƒ d ƒ } t | | | |  j	 |  j
 ƒ qF Wq( Wd  S(   NRA   i   i   i   R^   R_   RQ   (   RM   RR   R   RS   RT   R   RU   R[   R    R	   R
   (	   R>   R   R   R   R\   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_sqr_p_colƒ   s    "c         C` s‰   |  j  d ƒ \ } } } xj t | j d ƒ D]U } t | | | d t ƒ\ } } t j | | d ƒ } t | | | |  j |  j	 ƒ q, Wd  S(   NRB   i    RQ   (
   RM   RR   R   RS   RT   R   RU   R    R	   R
   (   R>   R   R   R   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_tall_1_rowŒ   s
    c   	   	   C` s·   |  j  d ƒ \ } } } x˜ t d d ƒ D]‡ } x~ t | j d | ƒ D]e } t | | | | d t ƒ\ } } t j | t | | | ƒ d ƒ } t | | | |  j	 |  j
 ƒ qF Wq( Wd  S(   NRB   i   i   i    RQ   (   RM   RR   R   RS   RT   R   RU   R[   R    R	   R
   (	   R>   R   R   R   R\   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_tall_p_row“   s    !"c      	   C` s   |  j  d ƒ \ } } } xp t | j d ƒ D][ } t | | | d d d t ƒ\ } } t j | | d ƒ } t | | | |  j |  j	 ƒ q, Wd  S(   NRB   i   R^   R_   RQ   (
   RM   RR   R   RS   RT   R   RU   R    R	   R
   (   R>   R   R   R   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_tall_1_col›   s
    $c   	      C` s½   |  j  d ƒ \ } } } xž t d d ƒ D] } x„ t | j d | ƒ D]k } t | | | | d d d t ƒ\ } } t j | t | | | ƒ d ƒ } t | | | |  j	 |  j
 ƒ qF Wq( Wd  S(   NRB   i   i   i   R^   R_   RQ   (   RM   RR   R   RS   RT   R   RU   R[   R    R	   R
   (	   R>   R   R   R   R\   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_tall_p_col¢   s    "c         C` s‰   |  j  d ƒ \ } } } xj t | j d ƒ D]U } t | | | d t ƒ\ } } t j | | d ƒ } t | | | |  j |  j	 ƒ q, Wd  S(   NRC   i    RQ   (
   RM   RR   R   RS   RT   R   RU   R    R	   R
   (   R>   R   R   R   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_fat_1_row«   s
    c   	   	   C` s·   |  j  d ƒ \ } } } x˜ t d d ƒ D]‡ } x~ t | j d | ƒ D]e } t | | | | d t ƒ\ } } t j | t | | | ƒ d ƒ } t | | | |  j	 |  j
 ƒ qF Wq( Wd  S(   NRC   i   i   i    RQ   (   RM   RR   R   RS   RT   R   RU   R[   R    R	   R
   (	   R>   R   R   R   R\   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_fat_p_row²   s    !"c      	   C` s   |  j  d ƒ \ } } } xp t | j d ƒ D][ } t | | | d d d t ƒ\ } } t j | | d ƒ } t | | | |  j |  j	 ƒ q, Wd  S(   NRC   i   R^   R_   RQ   (
   RM   RR   R   RS   RT   R   RU   R    R	   R
   (   R>   R   R   R   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_fat_1_colº   s
    $c   	      C` s½   |  j  d ƒ \ } } } xž t d d ƒ D] } x„ t | j d | ƒ D]k } t | | | | d d d t ƒ\ } } t j | t | | | ƒ d ƒ } t | | | |  j	 |  j
 ƒ qF Wq( Wd  S(   NRC   i   i   i   R^   R_   RQ   (   RM   RR   R   RS   RT   R   RU   R[   R    R	   R
   (	   R>   R   R   R   R\   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_fat_p_colÁ   s    "c         C` s   |  j  d d ƒ \ } } } xm t | j d ƒ D]X } t | | | d t ƒ\ } } t j | | d ƒ } t | | | |  j |  j	 t ƒ q/ Wd  S(   NRB   t   economici    RQ   (
   RM   RR   R   RS   RT   R   RU   R    R	   R
   (   R>   R   R   R   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_economic_1_rowÊ   s
    c   	      C` s£   |  j  d d ƒ \ } } } x t | j d | ƒ D]h } t | | | | d t ƒ\ } } t j | t | | | ƒ d ƒ } t | | | |  j	 |  j
 t ƒ q3 Wd  S(   NRB   Rj   i    RQ   (   RM   RR   R   RS   RT   R   RU   R[   R    R	   R
   (	   R>   R\   R   R   R   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   base_economic_p_row_xxxÖ   s
    !"c         C` s   |  j  d ƒ d  S(   Ni   (   Rl   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_economic_p_row_economicÝ   s    c         C` s   |  j  d ƒ d  S(   Ni   (   Rl   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_economic_p_row_sqrá   s    c         C` s   |  j  d ƒ d  S(   Ni   (   Rl   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_economic_p_row_fatå   s    c      	   C` s•   |  j  d d ƒ \ } } } xs t | j d ƒ D]^ } t | | | d d d t ƒ\ } } t j | | d ƒ } t | | | |  j |  j	 t ƒ q/ Wd  S(   NRB   Rj   i   R^   R_   RQ   (
   RM   RR   R   RS   RT   R   RU   R    R	   R
   (   R>   R   R   R   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_economic_1_colé   s
    $c   	      C` sÃ   |  j  d d ƒ \ } } } x¡ t d d ƒ D] } x‡ t | j d | ƒ D]n } t | | | | d d d t ƒ\ } } t j | t | | | ƒ d ƒ } t | | | |  j	 |  j
 t ƒ qI Wq+ Wd  S(	   NRB   Rj   i   i   i   R^   R_   RQ   (   RM   RR   R   RS   RT   R   RU   R[   R    R	   R
   (	   R>   R   R   R   R\   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_economic_p_colð   s    "c         C` s‰   |  j  d ƒ \ } } } xj t | j d ƒ D]U } t | | | d t ƒ\ } } t j | | d ƒ } t | | | |  j |  j	 ƒ q, Wd  S(   NRD   i    RQ   (
   RM   RR   R   RS   RT   R   RU   R    R	   R
   (   R>   R   R   R   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_Mx1_1_rowù   s
    c   	   	   C` s·   |  j  d ƒ \ } } } x˜ t d d ƒ D]‡ } x~ t | j d | ƒ D]e } t | | | | d t ƒ\ } } t j | t | | | ƒ d ƒ } t | | | |  j	 |  j
 ƒ qF Wq( Wd  S(   NRD   i   i   i    RQ   (   RM   RR   R   RS   RT   R   RU   R[   R    R	   R
   (	   R>   R   R   R   R\   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_Mx1_p_row   s    !"c      	   C` s   |  j  d ƒ \ } } } xp t | j d ƒ D][ } t | | | d d d t ƒ\ } } t j | | d ƒ } t | | | |  j |  j	 ƒ q, Wd  S(   NRE   i   R^   R_   RQ   (
   RM   RR   R   RS   RT   R   RU   R    R	   R
   (   R>   R   R   R   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_1xN_1_col  s
    $c   	      C` s½   |  j  d ƒ \ } } } xž t d d ƒ D] } x„ t | j d | ƒ D]k } t | | | | d d d t ƒ\ } } t j | t | | | ƒ d ƒ } t | | | |  j	 |  j
 ƒ qF Wq( Wd  S(   NRE   i   i   i   R^   R_   RQ   (   RM   RR   R   RS   RT   R   RU   R[   R    R	   R
   (	   R>   R   R   R   R\   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_1xN_p_col  s    "c         C` s   |  j  d d ƒ \ } } } xm t | j d ƒ D]X } t | | | d t ƒ\ } } t j | | d ƒ } t | | | |  j |  j	 t ƒ q/ Wd  S(   NRD   Rj   i    RQ   (
   RM   RR   R   RS   RT   R   RU   R    R	   R
   (   R>   R   R   R   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_Mx1_economic_1_row  s
    c   	   	   C` s½   |  j  d d ƒ \ } } } x› t d d ƒ D]Š } x t | j d | ƒ D]h } t | | | | d t ƒ\ } } t j | t | | | ƒ d ƒ } t | | | |  j	 |  j
 t ƒ qI Wq+ Wd  S(   NRD   Rj   i   i   i    RQ   (   RM   RR   R   RS   RT   R   RU   R[   R    R	   R
   (	   R>   R   R   R   R\   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_Mx1_economic_p_row  s    !"c         C` s‹   |  j  d ƒ \ } } } t | | d d d ƒ \ } } t | t j d d d | j ƒ ƒ t | t j d d | j d f d | j ƒ ƒ d  S(   NRE   i    i   RV   R   R   (   i    i    (   RM   RS   R   R   t   ndarrayR   R   (   R>   R   R   R   RW   RX   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_delete_last_1_row'  s    "c         C` s&  |  j  d d ƒ \ } } } t | | d | j d d ƒ \ } } t | t j d d	 d | j ƒ ƒ t | t j d d | j d f d | j ƒ ƒ |  j  d d ƒ \ } } } t | | d | j d d ƒ \ } } t | t j d d
 d | j ƒ ƒ t | t j d d | j d f d | j ƒ ƒ d  S(   NRB   R@   i    RV   R   R   i   Rj   (   i    i    (   i    i    (   RM   RS   R   R   R   Rx   R   (   R>   R   R   R   RW   RX   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_delete_last_p_row.  s    %"/%"c         C` s,  |  j  d d ƒ \ } } } t | | d d d ƒ \ } } t | t j d | j d d f d | j ƒ ƒ t | t j d d	 d | j ƒ ƒ |  j  d d ƒ \ } } } t | | d d d ƒ \ } } t | ƒ t | j | j k ƒ t | j | j k ƒ t | t j d | j d d f d | j ƒ ƒ d  S(
   NRD   Rj   i    i   R_   R   R   R@   (   i    i    (	   RM   RS   R   R   Rx   R   R   R   R   (   R>   R   R   R   RW   RX   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_delete_last_1_col9  s    /"
t   reasonsA   MKL precision failure.  Reported to Intel.  Not of great concern.c         C` s:  |  j  d d ƒ \ } } } t | | d | j d d ƒ \ } } t | ƒ t | j | j k ƒ t | j | j k ƒ t | t j d | j d d f d | j ƒ ƒ |  j  d d ƒ \ } } } t | | d | j d d ƒ \ } } t | t j d | j d d f d | j ƒ ƒ t | t j d d	 d | j ƒ ƒ d  S(
   NRB   R@   i    i   R_   R   R   Rj   (   i    i    (	   RM   RS   R   R   R   R   R   R   Rx   (   R>   R   R   R   RW   RX   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_delete_last_p_colF  s    %
/%/c         C` s&  |  j  d ƒ \ } } } t | | d d d ƒ \ } } t | t j d d d | j ƒ ƒ t | t j d d | j d f d | j ƒ ƒ |  j  d ƒ \ } } } t | | d d d ƒ \ } } t | ƒ t | j | j k ƒ t | j | j k ƒ t | t j d | j d d f d | j ƒ ƒ d  S(	   NRF   i    i   RV   R   R   R_   (   i    i    (	   RM   RS   R   R   Rx   R   R   R   R   (   R>   R   R   R   RW   RX   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_delete_1x1_row_colT  s    "/
c         C` s_  | d k rH t  | d  ƒ t  | d  ƒ f } t  | d  ƒ t  d  ƒ f } n4 t  d  ƒ t  d  ƒ f } t  d  ƒ t  d  | ƒ f } xÜt j d d d g | ƒ D]¿\ } }	 |  j | ƒ \ }
 } } | | | f ƒ \ } } | d k r
t j |
 |	 | d k rþ d n d ƒ } n€ t  |	 |	 | ƒ } |	 d k  rct  |	 |	 | | d k rO|
 j d n
 |
 j d ƒ } n  t j |
 | | d k rd n d ƒ } | j d ƒ } | j d ƒ } t	 | | |	 | | t
 ƒ \ } } t | | | |  j |  j ƒ t	 | | |	 | | t ƒ \ } } t | | | |  j |  j ƒ | rqt | | | d |  j d	 |  j ƒt | | | d |  j d	 |  j ƒn  | j d ƒ } | j d ƒ } t	 | | |	 | | t
 ƒ \ } } t | | | |  j |  j ƒ t	 | | |	 | | t ƒ \ } } t | | | |  j |  j ƒ | rXt | | | d |  j d	 |  j ƒt | | | d |  j d	 |  j ƒn  | j d ƒ } | j d ƒ } | | | f ƒ \ } } t	 | | |	 | | t
 ƒ \ } } t | | | |  j |  j ƒ t	 | | |	 | | t ƒ \ } } t | | | |  j |  j ƒ | r˜ t | | | d |  j d	 |  j ƒt | | | d |  j d	 |  j ƒq˜ q˜ Wd  S(
   NRV   RA   RB   RC   i   i    t   FR	   R
   (   R[   R   t	   itertoolst   productRM   R   RU   R   t   copyRS   RT   R    R	   R
   t   TrueR   (   R>   t   adjust_stridest   kst   pR^   t   overwriteablet   qindt   rindRK   R)   R   t   q0t   r0t   qst   rsRY   R+   R   R   RW   RX   t   q1ot   r1ot   q2t   r2t   q2ot   r2ot   q3t   r3t   q3ot   r3o(    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   base_non_simple_stridesg  sT    (*:'!!#&!!#&!!#c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   RV   (   R˜   R/   Rƒ   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_non_unit_strides_1_rowž  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   RV   (   R˜   R/   Rƒ   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_non_unit_strides_p_row¡  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   R_   (   R˜   R/   Rƒ   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_non_unit_strides_1_col¤  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   R_   (   R˜   R/   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_non_unit_strides_p_col§  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   RV   (   R˜   R2   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_neg_strides_1_rowª  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   RV   (   R˜   R2   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_neg_strides_p_row­  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   R_   (   R˜   R2   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_neg_strides_1_col°  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   R_   (   R˜   R2   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_neg_strides_p_col³  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   RV   (   R˜   R9   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_non_itemize_strides_1_row¶  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   RV   (   R˜   R9   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_non_itemize_strides_p_row¹  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   R_   (   R˜   R9   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_non_itemize_strides_1_col¼  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   R_   (   R˜   R9   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_non_itemize_strides_p_col¿  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   RV   (   R˜   R<   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt    test_non_native_byte_order_1_rowÂ  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   RV   (   R˜   R<   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt    test_non_native_byte_order_p_rowÅ  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   R_   (   R˜   R<   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt    test_non_native_byte_order_1_colÈ  s    c         C` s    |  j  t d g d d t ƒ d  S(   Ni    i   R_   (   R˜   R<   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt    test_non_native_byte_order_p_colË  s    c   
   	   C` s  |  j  d ƒ \ } } } x÷ t j d d g d d g d d g ƒ D]Î \ } } } t | | | | | d t ƒ\ } } | d k rº t j | t | | j d	 | | | j d	 ƒ d	 ƒ }	 n8 t j | t | | j d	 | | | j d ƒ d ƒ }	 t	 | | |	 |  j
 |  j ƒ q@ Wd  S(
   NRA   iýÿÿÿiùÿÿÿi   i   RV   R_   RQ   i    (   RM   R€   R   RS   RT   R   RU   R[   R   R    R	   R
   (
   R>   R   R   R   R)   R†   t   wRW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt
   test_neg_kÎ  s    7$;8R@   c         C` sô  | d k r t  n t } | d k r` t | d  ƒ t | d  ƒ f } t | d  ƒ t d  ƒ f } n4 t d  ƒ t d  ƒ f } t d  ƒ t d  | ƒ f } |  j d | ƒ \ }	 }
 } | d k rå t j |	 d | d k rÙ d n d ƒ } n4 t j |	 t d d | ƒ | d k rd n d ƒ } |
 j d ƒ } | j d ƒ } t | | d | | t ƒ \ } } t	 | | | |  j
 |  j | ƒ t	 | | |	 |  j
 |  j | ƒ | rC|
 j d ƒ } | j d ƒ } t | | d | | t  ƒ \ } } t	 | | | |  j
 |  j | ƒ t | | | d |  j
 d	 |  j ƒt | | | d |  j
 d	 |  j ƒn  | rð|
 j d
 ƒ } | j d
 ƒ } t | | d | | t  ƒ \ } } t	 | | | |  j
 |  j | ƒ t | | | d |  j
 d	 |  j ƒt | | | d |  j
 d	 |  j ƒn  d  S(   NR@   RV   RA   i   i   i    R   R	   R
   t   C(   Rƒ   RT   R[   R   RM   R   RU   R‚   RS   R    R	   R
   R   (   R>   R^   R†   t   test_Ct   test_FRG   R   Rˆ   R‰   R   RŠ   R‹   RY   R   R   RW   RX   R   R‘   R”   R•   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   base_overwrite_qrØ  s:    *4!!#&!#c         C` s   |  j  d d t t ƒ d  S(   NRV   i   (   R®   Rƒ   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_overwrite_qr_1_rowþ  s    c         C` s   |  j  d d t t d ƒ d  S(   NRV   i   Rj   (   R®   Rƒ   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt    test_overwrite_economic_qr_1_row  s    c         C` s   |  j  d d t t ƒ d  S(   NR_   i   (   R®   Rƒ   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_overwrite_qr_1_col  s    c         C` s   |  j  d d t t ƒ d  S(   NRV   i   (   R®   Rƒ   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_overwrite_qr_p_row  s    c         C` s   |  j  d d t t d ƒ d  S(   NRV   i   Rj   (   R®   Rƒ   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt    test_overwrite_economic_qr_p_row  s    c         C` s   |  j  d d t t ƒ d  S(   NR_   i   (   R®   RT   Rƒ   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_overwrite_qr_p_col  s    c         C` s8   |  j  d ƒ \ } } } t t t | | d d d ƒd  S(   NRA   i    R^   t   foo(   RM   t   assert_raisesR$   RS   (   R>   R   R   R   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_bad_which  s    c         C` s¬   |  j  d ƒ \ } } } t t t | | | j d d ƒ t t t | | | j d d d ƒ t t t | | | j d d d ƒ t t t | | | j d d d d ƒ d  S(   NRB   i    i   R_   (   RM   R¶   R$   RS   R   (   R>   R   R   R   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt
   test_bad_k  s
     %#c         C` sÑ   |  j  d ƒ \ } } } t t t | | d d ƒ t t t | | d d d ƒ t t t | | d d ƒ t t t | | d d d ƒ t t t | | d | j d d ƒ t t t | | d | j d d d ƒ d  S(   NRB   i    iÿÿÿÿR_   i   i   i   (   RM   R¶   R$   RS   R   (   R>   R   R   R   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt
   test_bad_p#  s    $c         C` s>   |  j  d ƒ \ } } } t t t t j g  ƒ | d d ƒ d  S(   NRB   i    i   (   RM   R¶   R$   RS   R   t   array(   R>   R   R   R   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_empty_q1  s    c         C` s>   |  j  d ƒ \ } } } t t t | t j g  ƒ d d ƒ d  S(   NRB   i    i   (   RM   R¶   R$   RS   R   Rº   (   R>   R   R   R   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_empty_r6  s    c         C` s?   |  j  d ƒ \ } } } | d } t t t | | d d ƒ d  S(   NRB   i   i    (   RM   R¶   R$   RS   (   R>   R   R   R   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_mismatched_q_and_r;  s    
c         C` s[  d d d d d d d d d	 d
 d d g } |  j  d ƒ \ } } } x| D]
} | j j | ƒ } | j j | ƒ } t t t | | d d d ƒ t t t | | d d d ƒ t t t | | d d d ƒ t t t | | d d d ƒ t t t | | d d d ƒ t t t | | d d d ƒ t t t | | d d d ƒ t t t | | d d d ƒ qI Wd  S(   Nt   int8t   int16t   int32t   int64t   uint8t   uint16t   uint32t   uint64t   float16t
   longdoublet   longcomplext   boolRB   i    i   RV   i   R_   (   RM   t   realR:   R¶   R$   RS   (   R>   t   dtsR   RŠ   R‹   R   R   R   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_unsupported_dtypes@  s     		c         C` s4  |  j  d ƒ \ } } } | j d ƒ } t j | d <t t t | | d d d ƒ t t t | | d d d ƒ t t t | | d d d ƒ t t t | | d d d ƒ | j d ƒ } t j | d	 <t t t | | d d d ƒ t t t | | d d d ƒ t t t | | d d d ƒ t t t | | d d d ƒ d  S(
   NRB   R   i   i    RV   i   R_   (   i   i   (   i   i   (   RM   R‚   R   t   nanR¶   R$   RS   (   R>   t   a0RŠ   R‹   R   R   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_check_finiteS  s    c         C` sœ   |  j  d ƒ \ } } } t t t | d | d d d ƒ t t t | | d d d d ƒ t t t | d | d d d ƒ t t t | | d	 d d d ƒ d  S(
   NRF   i    i   RV   R_   (   i    i    (   i    i    (   i    i    (   i    i    (   RM   R¶   R$   RS   (   R>   R   R   R   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_qr_scalard  s
       (E   RN   RO   RZ   R]   R`   Ra   Rb   Rc   Rd   Re   Rf   Rg   Rh   Ri   Rk   Rl   Rm   Rn   Ro   Rp   Rq   Rr   Rs   Rt   Ru   Rv   Rw   Ry   Rz   R{   t   pytestt   markt   xfailR}   R~   R˜   R™   Rš   R›   Rœ   R   Rž   RŸ   R    R¡   R¢   R£   R¤   R¥   R¦   R§   R¨   Rª   R®   R¯   R°   R±   R²   R³   R´   R·   R¸   R¹   R»   R¼   R½   RÌ   RÏ   RÐ   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRP   l   s€   																																			7																	
&														t   TestQRdelete_fc           B` s   e  Z e j d  ƒ Z RS(   t   f(   RN   RO   R   R   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRÔ   k  s   t   TestQRdelete_Fc           B` s   e  Z e j d  ƒ Z RS(   R   (   RN   RO   R   R   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRÖ   n  s   t   TestQRdelete_dc           B` s   e  Z e j d  ƒ Z RS(   t   d(   RN   RO   R   R   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR×   q  s   t   TestQRdelete_Dc           B` s   e  Z e j d  ƒ Z RS(   t   D(   RN   RO   R   R   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRÙ   t  s   t   BaseQRinsertc           B` sl  e  Z d  d d d „ Z d „  Z d „  Z d „  Z d „  Z d „  Z d	 „  Z d
 „  Z	 d „  Z
 d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d  „  Z d! „  Z  d" „  Z! d# „  Z" d$ „  Z# d% „  Z$ d& „  Z% d' „  Z& d( „  Z' d) „  Z( d* „  Z) d+ „  Z* d, „  Z+ d- „  Z, d. „  Z- d/ „  Z. d0 „  Z/ d1 „  Z0 d2 „  Z1 d3 „  Z2 d4 „  Z3 d5 „  Z4 d6 „  Z5 d7 „  Z6 d8 „  Z7 d9 „  Z8 d: „  Z9 d; „  Z: d< „  Z; d= „  Z< d> „  Z= d? „  Z> d@ „  Z? dA „  Z@ dB „  ZA dC „  ZB dD „  ZC dE „  ZD RS(F   R@   RV   i   c   
      C` sM  t  t |  ƒ j | | ƒ \ } } } t | d k ƒ | d k rŠ | d k rh t j j | j d ƒ } qê t j j | | j d f ƒ } n` | d k rà | d k r¾ t j j | j d ƒ } qê t j j | j d | f ƒ } n
 t d ƒ t j |  j	 j
 d ƒ ƒ r+t j j | j ƒ }	 | d |	 } n  | j |  j	 ƒ } | | | | f S(   Ni    RV   i   R_   s%   which should be either "row" or "col"y              ð?(   t   superRÛ   RM   R   R   RH   R   R$   RJ   R   RK   R:   (
   R>   RK   RG   R^   R†   R   R   R   t   uR1   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRM   x  s     $""
c   	      C` s–   |  j  d d d ƒ\ } } } } xn t | j d d ƒ D]U } t | | | | ƒ \ } } t j | | | d ƒ } t | | | |  j |  j ƒ q9 Wd  S(   NRA   R^   RV   i    i   (	   RM   RR   R   t	   qr_insertR   t   insertR    R	   R
   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRZ   ’  s
    !c   	      C` s¯   |  j  d d d d d ƒ\ } } } } x t | j d d ƒ D]h } t | | | | ƒ \ } } t j | | t j d t j ƒ | d ƒ } t | | | |  j	 |  j
 ƒ q? Wd  S(   NRA   R^   RV   R†   i   i    i   (   RM   RR   R   RÞ   R   Rß   t   onest   intpR    R	   R
   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR]   ™  s
    '+c   	   	   C` sŸ   |  j  d d d ƒ\ } } } } xw t | j d d ƒ D]^ } t | | | | d d t ƒ\ } } t j | | | d ƒ } t | | | |  j |  j	 ƒ q9 Wd  S(   NRA   R^   R_   i   t   overwrite_qru(
   RM   RR   R   RÞ   RT   R   Rß   R    R	   R
   (	   R>   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR`   ¡  s
    !$c   	   	   C` s¸   |  j  d d d d d ƒ\ } } } } xŠ t | j d d ƒ D]q } t | | | | d d t ƒ\ } } t j | | t j d t j ƒ | d ƒ } t	 | | | |  j
 |  j ƒ q? Wd  S(   NRA   R^   R_   R†   i   i   Râ   (   RM   RR   R   RÞ   RT   R   Rß   Rà   Rá   R    R	   R
   (	   R>   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRa   ¨  s
    '$+c   	      C` s–   |  j  d d d ƒ\ } } } } xn t | j d d ƒ D]U } t | | | | ƒ \ } } t j | | | d ƒ } t | | | |  j |  j ƒ q9 Wd  S(   NRB   R^   RV   i    i   (	   RM   RR   R   RÞ   R   Rß   R    R	   R
   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRb   °  s
    !c   	      C` s¯   |  j  d d d d d ƒ\ } } } } x t | j d d ƒ D]h } t | | | | ƒ \ } } t j | | t j d t j ƒ | d ƒ } t | | | |  j	 |  j
 ƒ q? Wd  S(   NRB   R^   RV   R†   i   i    i   (   RM   RR   R   RÞ   R   Rß   Rà   Rá   R    R	   R
   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRc   ·  s
    '+c   	   	   C` sŸ   |  j  d d d ƒ\ } } } } xw t | j d d ƒ D]^ } t | | | | d d t ƒ\ } } t j | | | d ƒ } t | | | |  j |  j	 ƒ q9 Wd  S(   NRB   R^   R_   i   Râ   (
   RM   RR   R   RÞ   RT   R   Rß   R    R	   R
   (	   R>   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRd   ¿  s
    !$c   
   	   C` s¸   |  j  d d d d | ƒ\ } } } } xŠ t | j d d ƒ D]q } t | | | | d d t ƒ\ } } t j | | t j | t j ƒ | d ƒ }	 t	 | | |	 |  j
 |  j ƒ q? Wd  S(   NRB   R^   R_   R†   i   Râ   (   RM   RR   R   RÞ   RT   R   Rß   Rà   Rá   R    R	   R
   (
   R>   R†   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   base_tall_p_col_xxxÊ  s
    '$+c         C` s   |  j  d ƒ d  S(   Ni   (   Rã   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_tall_p_col_tallÑ  s    c         C` s   |  j  d ƒ d  S(   Ni   (   Rã   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_tall_p_col_sqrÕ  s    c         C` s   |  j  d ƒ d  S(   Ni   (   Rã   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_tall_p_col_fatÙ  s    c   	      C` s–   |  j  d d d ƒ\ } } } } xn t | j d d ƒ D]U } t | | | | ƒ \ } } t j | | | d ƒ } t | | | |  j |  j ƒ q9 Wd  S(   NRC   R^   RV   i    i   (	   RM   RR   R   RÞ   R   Rß   R    R	   R
   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRf   Ý  s
    !c   
      C` s¯   |  j  d d d d | ƒ\ } } } } x t | j d d ƒ D]h } t | | | | ƒ \ } } t j | | t j | t j ƒ | d ƒ }	 t | | |	 |  j	 |  j
 ƒ q? Wd  S(   NRC   R^   RV   R†   i    i   (   RM   RR   R   RÞ   R   Rß   Rà   Rá   R    R	   R
   (
   R>   R†   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   base_fat_p_row_xxxè  s
    '+c         C` s   |  j  d ƒ d  S(   Ni   (   Rç   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_fat_p_row_fatï  s    c         C` s   |  j  d ƒ d  S(   Ni   (   Rç   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_fat_p_row_sqró  s    c         C` s   |  j  d ƒ d  S(   Ni   (   Rç   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_fat_p_row_tall÷  s    c   	   	   C` sŸ   |  j  d d d ƒ\ } } } } xw t | j d d ƒ D]^ } t | | | | d d t ƒ\ } } t j | | | d ƒ } t | | | |  j |  j	 ƒ q9 Wd  S(   NRC   R^   R_   i   Râ   (
   RM   RR   R   RÞ   RT   R   Rß   R    R	   R
   (	   R>   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRh   û  s
    !$c   	   	   C` s¸   |  j  d d d d d ƒ\ } } } } xŠ t | j d d ƒ D]q } t | | | | d d t ƒ\ } } t j | | t j d t j ƒ | d ƒ } t	 | | | |  j
 |  j ƒ q? Wd  S(   NRC   R^   R_   R†   i   i   Râ   (   RM   RR   R   RÞ   RT   R   Rß   Rà   Rá   R    R	   R
   (	   R>   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRi     s
    '$+c   	      C` sŸ   |  j  d d d ƒ \ } } } } xw t | j d d ƒ D]^ } t | | | | d t ƒ\ } } t j | | | d ƒ } t | | | |  j |  j	 t ƒ q9 Wd  S(   NRB   Rj   RV   i    i   Râ   (
   RM   RR   R   RÞ   RT   R   Rß   R    R	   R
   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRk   
  s
    !!c   	      C` sµ   |  j  d d d d ƒ \ } } } } xŠ t | j d d ƒ D]q } t | | | | d t ƒ\ } } t j | | t j d t j ƒ | d ƒ } t	 | | | |  j
 |  j t ƒ q< Wd  S(   NRB   Rj   RV   i   i    i   Râ   (   RM   RR   R   RÞ   RT   R   Rß   Rà   Rá   R    R	   R
   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_economic_p_row  s
    $!+c   	   	   C` s«   |  j  d d d d ƒ\ } } } } x€ t | j d d ƒ D]g } t | | | j ƒ  | d d t ƒ\ } } t j | | | d ƒ } t | | | |  j	 |  j
 t ƒ q< Wd  S(   NRB   Rj   R^   R_   i   Râ   (   RM   RR   R   RÞ   R‚   RT   R   Rß   R    R	   R
   (	   R>   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRp     s
    $*c         C` sz   t  j d d d |  j ƒ} t  j d d |  j ƒ} t  j d d d d d g |  j ƒ } t t j t | | | d d ƒ d  S(   Ni   i   R   i   i    R_   (   R   R   R   Rº   R¶   R   t   LinAlgErrorRÞ   (   R>   R   R   RÝ   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_economic_1_col_bad_update   s    $c   
   	   C` s¾   |  j  d d d d d | ƒ\ } } } } x t | j d d ƒ D]t } t | | | | d d t ƒ\ } } t j | | t j | t j ƒ | d ƒ }	 t	 | | |	 |  j
 |  j t ƒ qB Wd  S(   NRB   Rj   R^   R_   R†   i   Râ   (   RM   RR   R   RÞ   RT   R   Rß   Rà   Rá   R    R	   R
   (
   R>   R†   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   base_economic_p_col_xxx,  s
    *$+c         C` s   |  j  d ƒ d  S(   Ni   (   Rî   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_economic_p_col_eco3  s    c         C` s   |  j  d ƒ d  S(   Ni   (   Rî   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_economic_p_col_sqr7  s    c         C` s   |  j  d ƒ d  S(   Ni   (   Rî   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_economic_p_col_fat;  s    c   	      C` s–   |  j  d d d ƒ\ } } } } xn t | j d d ƒ D]U } t | | | | ƒ \ } } t j | | | d ƒ } t | | | |  j |  j ƒ q9 Wd  S(   NRD   R^   RV   i    i   (	   RM   RR   R   RÞ   R   Rß   R    R	   R
   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRr   ?  s
    !c   	      C` s¯   |  j  d d d d d ƒ\ } } } } x t | j d d ƒ D]h } t | | | | ƒ \ } } t j | | t j d t j ƒ | d ƒ } t | | | |  j	 |  j
 ƒ q? Wd  S(   NRD   R^   RV   R†   i   i    i   (   RM   RR   R   RÞ   R   Rß   Rà   Rá   R    R	   R
   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRs   F  s
    '+c   	   	   C` sŸ   |  j  d d d ƒ\ } } } } xw t | j d d ƒ D]^ } t | | | | d d t ƒ\ } } t j | | | d ƒ } t | | | |  j |  j	 ƒ q9 Wd  S(   NRD   R^   R_   i   Râ   (
   RM   RR   R   RÞ   RT   R   Rß   R    R	   R
   (	   R>   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_Mx1_1_colM  s
    !$c   	   	   C` s¸   |  j  d d d d d ƒ\ } } } } xŠ t | j d d ƒ D]q } t | | | | d d t ƒ\ } } t j | | t j d t j ƒ | d ƒ } t	 | | | |  j
 |  j ƒ q? Wd  S(   NRD   R^   R_   R†   i   i   Râ   (   RM   RR   R   RÞ   RT   R   Rß   Rà   Rá   R    R	   R
   (	   R>   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_Mx1_p_colT  s
    '$+c   	      C` s™   |  j  d d d ƒ \ } } } } xq t | j d d ƒ D]X } t | | | | ƒ \ } } t j | | | d ƒ } t | | | |  j |  j t	 ƒ q9 Wd  S(   NRD   Rj   RV   i    i   (
   RM   RR   R   RÞ   R   Rß   R    R	   R
   RT   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRv   [  s
    !c   	      C` s¯   |  j  d d d d ƒ \ } } } } x„ t | j d d ƒ D]k } t | | | | ƒ \ } } t j | | t j d t j ƒ | d ƒ } t | | | |  j	 |  j
 t ƒ q< Wd  S(   NRD   Rj   RV   i   i    i   (   RM   RR   R   RÞ   R   Rß   Rà   Rá   R    R	   R
   RT   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRw   b  s
    $+c   	   	   C` s¢   |  j  d d d ƒ \ } } } } xz t | j d d ƒ D]a } t | | | | d d t ƒ\ } } t j | | | d ƒ } t | | | |  j |  j	 t ƒ q9 Wd  S(   NRD   Rj   R_   i   Râ   (
   RM   RR   R   RÞ   RT   R   Rß   R    R	   R
   (	   R>   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_Mx1_economic_1_coli  s
    !$c   	   	   C` s¸   |  j  d d d d ƒ \ } } } } x t | j d d ƒ D]t } t | | | | d d t ƒ\ } } t j | | t j d t j ƒ | d ƒ } t	 | | | |  j
 |  j t ƒ q< Wd  S(   NRD   Rj   R_   i   i   Râ   (   RM   RR   R   RÞ   RT   R   Rß   Rà   Rá   R    R	   R
   (	   R>   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_Mx1_economic_p_colp  s
    $$+c   	      C` s–   |  j  d d d ƒ\ } } } } xn t | j d d ƒ D]U } t | | | | ƒ \ } } t j | | | d ƒ } t | | | |  j |  j ƒ q9 Wd  S(   NRE   R^   RV   i    i   (	   RM   RR   R   RÞ   R   Rß   R    R	   R
   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_1xN_1_roww  s
    !c   	      C` s¯   |  j  d d d d d ƒ\ } } } } x t | j d d ƒ D]h } t | | | | ƒ \ } } t j | | t j d t j ƒ | d ƒ } t | | | |  j	 |  j
 ƒ q? Wd  S(   NRE   R^   RV   R†   i   i    i   (   RM   RR   R   RÞ   R   Rß   Rà   Rá   R    R	   R
   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_1xN_p_row~  s
    '+c   	   	   C` sŸ   |  j  d d d ƒ\ } } } } xw t | j d d ƒ D]^ } t | | | | d d t ƒ\ } } t j | | | d ƒ } t | | | |  j |  j	 ƒ q9 Wd  S(   NRE   R^   R_   i   Râ   (
   RM   RR   R   RÞ   RT   R   Rß   R    R	   R
   (	   R>   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRt   …  s
    !$c   	   	   C` s¸   |  j  d d d d d ƒ\ } } } } xŠ t | j d d ƒ D]q } t | | | | d d t ƒ\ } } t j | | t j d t j ƒ | d ƒ } t	 | | | |  j
 |  j ƒ q? Wd  S(   NRE   R^   R_   R†   i   i   Râ   (   RM   RR   R   RÞ   RT   R   Rß   Rà   Rá   R    R	   R
   (	   R>   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRu   Œ  s
    '$+c   	      C` s–   |  j  d d d ƒ\ } } } } xn t | j d d ƒ D]U } t | | | | ƒ \ } } t j | | | d ƒ } t | | | |  j |  j ƒ q9 Wd  S(   NRF   R^   RV   i    i   (	   RM   RR   R   RÞ   R   Rß   R    R	   R
   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_1x1_1_row“  s
    !c   	      C` s¯   |  j  d d d d d ƒ\ } } } } x t | j d d ƒ D]h } t | | | | ƒ \ } } t j | | t j d t j ƒ | d ƒ } t | | | |  j	 |  j
 ƒ q? Wd  S(   NRF   R^   RV   R†   i   i    i   (   RM   RR   R   RÞ   R   Rß   Rà   Rá   R    R	   R
   (	   R>   R   R   R   RÝ   RV   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_1x1_p_rowš  s
    '+c   	   	   C` sŸ   |  j  d d d ƒ\ } } } } xw t | j d d ƒ D]^ } t | | | | d d t ƒ\ } } t j | | | d ƒ } t | | | |  j |  j	 ƒ q9 Wd  S(   NRF   R^   R_   i   Râ   (
   RM   RR   R   RÞ   RT   R   Rß   R    R	   R
   (	   R>   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_1x1_1_col¡  s
    !$c   	   	   C` s¸   |  j  d d d d d ƒ\ } } } } xŠ t | j d d ƒ D]q } t | | | | d d t ƒ\ } } t j | | t j d t j ƒ | d ƒ } t	 | | | |  j
 |  j ƒ q? Wd  S(   NRF   R^   R_   R†   i   i   Râ   (   RM   RR   R   RÞ   RT   R   Rß   Rà   Rá   R    R	   R
   (	   R>   R   R   R   RÝ   R_   RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_1x1_p_col¨  s
    '$+c         C` så   |  j  d d d ƒ\ } } } } t t t | d | | d d ƒ t t t | | d | d d ƒ t t t | | | d d d ƒ t t t | d | | d d ƒ t t t | | d	 | d d ƒ t t t | | | d d d ƒ d  S(
   NRF   R^   RV   i    R_   (   i    i    (   i    i    (   i    i    (   i    i    (   RM   R¶   R$   RÞ   (   R>   R   R   R   RÝ   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_1x1_1_scalar¯  s    !     c   !   	   C` s½  x¶d d d g D]¥} |  j  | d | d | ƒ\ } } } }	 | | | |	 f ƒ \ }
 } } | d k r” t j | | |	 | d k rˆ d n d ƒ } nO t j | | t j | t j ƒ | d k rÅ |	 n |	 | d k rÚ d n d ƒ } | j d	 ƒ } | j d	 ƒ } |	 j d	 ƒ } t |
 | | | | d
 t ƒ\ } } t | | | |  j	 |  j
 ƒ t |
 | | | | d
 t ƒ\ } } t | | | |  j	 |  j
 ƒ | j d	 ƒ } | j d	 ƒ } |	 j d	 ƒ } t | | | | | d
 t ƒ\ } } t | | | |  j	 |  j
 ƒ t | | | | | d
 t ƒ\ } } t | | | |  j	 |  j
 ƒ | j d	 ƒ } | j d	 ƒ } |	 j d	 ƒ } t | | | | | d
 t ƒ\ } } t | | | |  j	 |  j
 ƒ t | | | | | d
 t ƒ\ } } t | | | |  j	 |  j
 ƒ | j d	 ƒ } | j d	 ƒ } |	 j d	 ƒ } | | | | f ƒ \ }
 } } t |
 | | | | d
 t ƒ\ } } t | | | |  j	 |  j
 ƒ t |
 | | | | d
 t ƒ\ } }  t | |  | |  j	 |  j
 ƒ q Wd  S(   NRA   RB   RC   R^   R†   i   RV   i    R   Râ   (   RM   R   Rß   Rà   Rá   R‚   RÞ   RT   R    R	   R
   Rƒ   (!   R>   R„   R)   R†   R^   RK   R   RŠ   R‹   t   u0RŒ   R   t   ust   aiR   R   RÝ   RW   RX   RŽ   R   R   R‘   R’   R“   R”   R•   R–   R—   t   q5t   r5t   q5ot   r5o(    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR˜   ¹  sJ    '-$$$$$$$$c         C` s   |  j  t d d d ƒ d  S(   Ni    i   RV   (   R˜   R/   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR™   ë  s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   RV   (   R˜   R/   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRš   î  s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   R_   (   R˜   R/   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR›   ñ  s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   R_   (   R˜   R/   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRœ   ô  s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   RV   (   R˜   R2   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR   ÷  s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   RV   (   R˜   R2   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRž   ú  s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   R_   (   R˜   R2   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRŸ   ý  s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   R_   (   R˜   R2   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR       s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   RV   (   R˜   R9   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_non_itemsize_strides_1_row  s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   RV   (   R˜   R9   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_non_itemsize_strides_p_row  s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   R_   (   R˜   R9   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_non_itemsize_strides_1_col	  s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   R_   (   R˜   R9   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_non_itemsize_strides_p_col  s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   RV   (   R˜   R<   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR¥     s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   RV   (   R˜   R<   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR¦     s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   R_   (   R˜   R<   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR§     s    c         C` s   |  j  t d d d ƒ d  S(   Ni    i   R_   (   R˜   R<   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR¨     s    c         C` s  |  j  d d d d d ƒ\ } } } } | j d ƒ } | j ƒ  } t | | | d d d t ƒ\ } } t j | d | d ƒ }	 t | | |	 |  j |  j ƒ t | | | |  j |  j ƒ t | | | d d d t	 ƒ\ }
 } t |
 | |	 |  j |  j ƒ t
 |
 | d	 |  j d
 |  j ƒt
 | | j ƒ  |  j |  j ƒ | j d ƒ } | j ƒ  } t | | | d d d t ƒ\ } } t | | |	 |  j |  j ƒ t | | | |  j |  j ƒ t | | | d d d t	 ƒ\ } } t | | |	 |  j |  j ƒ t
 | | d	 |  j d
 |  j ƒd  S(   NRA   R^   R_   R†   i   R«   i    Râ   R	   R
   R   (   RM   R‚   RÞ   RT   R   Rß   R    R	   R
   Rƒ   R   R   (   R>   R   RŠ   R   RÝ   R   Rý   RW   RX   RY   R   R‘   t   qFt   u1R”   R•   t   q4t   r4(    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_overwrite_qu_rank_1  s&    '$$$$c         C` s  |  j  d d d d d ƒ\ } } } } | j d ƒ } t j | t j d t j ƒ | d ƒ } t | | | d d d	 t ƒ\ } } t | | | |  j	 |  j
 ƒ t | | | |  j	 |  j
 ƒ t | | | d d d	 t ƒ\ }	 }
 t |	 |
 | |  j	 |  j
 ƒ t |	 | d
 |  j	 d |  j
 ƒd  S(   NRA   R^   R_   R†   i   R   i   i    Râ   R	   R
   (   RM   R‚   R   Rß   R#   Rá   RÞ   RT   R    R	   R
   Rƒ   R   (   R>   R   RŠ   R   RÝ   R   RY   RW   RX   R   R‘   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_overwrite_qu_rank_p<  s    ''$$c         C` s  |  j  d d d ƒ\ } } } } t t t t j g  ƒ | | d d ƒ t t t | t j g  ƒ | d d ƒ t t t | | t j g  ƒ d d ƒ t t t t j g  ƒ | | d d ƒ t t t | t j g  ƒ | d d ƒ t t t | | t j g  ƒ d d ƒ d  S(   NRA   R^   RV   i    R_   (   RM   R¶   R$   RÞ   R   Rº   (   R>   R   R   R   RÝ   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_empty_inputsN  s    !%%%%%c         C` så   |  j  d d d ƒ\ } } } } t t t | | d | d d ƒ t t t | d  | | d d ƒ t t t | | | d d d ƒ t t t | | d | d d ƒ t t t | d  | | d d ƒ t t t | | | d d d ƒ d  S(   NRB   R^   RV   i   i    iþÿÿÿR_   (   RM   R¶   R$   RÞ   (   R>   R   R   R   RÝ   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_mismatched_shapesW  s    !     c   
      C` s>  d d d d d d d d d	 d
 d d g } |  j  d d d ƒ\ } } } } xì | D]ä } | j j | ƒ } | j j | ƒ } | j j | ƒ }	 t t t | | | d d ƒ t t t | | | d d ƒ t t t | | | d d ƒ t t t | | | d d ƒ t t t | | |	 d d ƒ t t t | | |	 d d ƒ qR Wd  S(   NR¾   R¿   RÀ   RÁ   RÂ   RÃ   RÄ   RÅ   RÆ   RÇ   RÈ   RÉ   RA   R^   RV   i    R_   (   RM   RÊ   R:   R¶   R$   RÞ   (
   R>   RË   R   RŠ   R‹   Rý   R   R   R   RÝ   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRÌ   `  s    		!c         C` s/  |  j  d d d d d ƒ\ } } } } | j d ƒ } t j | d
 <t t t | | | d  d  … d f d d ƒ t t t | | | d d ƒ t t t | | | d  d  … d f d d	 ƒ t t t | | | d d	 ƒ | j d ƒ } t j | d <t t t | | | d  d  … d f d d ƒ t t t | | | d d ƒ t t t | | | d  d  … d f d d	 ƒ t t t | | | d d	 ƒ | j d ƒ } t j | d <t t t | | | d  d  … d f d d ƒ t t t | | | d d ƒ t t t | | | d  d  … d f d d	 ƒ t t t | | | d d	 ƒ d  S(   NRA   R^   RV   R†   i   R   i   i    R_   (   i   i   (   i   i   (   i    i    (   RM   R‚   R   RÍ   R¶   R$   RÞ   (   R>   RÎ   RŠ   R‹   Rý   R   R   RÝ   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRÏ   q  s&    ',,,,,,(E   RN   RO   RM   RZ   R]   R`   Ra   Rb   Rc   Rd   Rã   Rä   Rå   Ræ   Rf   Rç   Rè   Ré   Rê   Rh   Ri   Rk   Rë   Rp   Rí   Rî   Rï   Rð   Rñ   Rr   Rs   Rò   Ró   Rv   Rw   Rô   Rõ   Rö   R÷   Rt   Ru   Rø   Rù   Rú   Rû   Rü   R˜   R™   Rš   R›   Rœ   R   Rž   RŸ   R    R  R  R  R  R¥   R¦   R§   R¨   R  R  R  R  RÌ   RÏ   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRÛ   w  s†   																																											
	2																	!						t   TestQRinsert_fc           B` s   e  Z e j d  ƒ Z RS(   RÕ   (   RN   RO   R   R   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR  ‰  s   t   TestQRinsert_Fc           B` s   e  Z e j d  ƒ Z RS(   R   (   RN   RO   R   R   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR  Œ  s   t   TestQRinsert_dc           B` s   e  Z e j d  ƒ Z RS(   RØ   (   RN   RO   R   R   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR    s   t   TestQRinsert_Dc           B` s   e  Z e j d  ƒ Z RS(   RÚ   (   RN   RO   R   R   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR  ’  s   t   BaseQRupdatec           B` s£  e  Z d  d d „ Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d	 „  Z	 d
 „  Z
 d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d  „  Z  d! „  Z! d" „  Z" d# „  Z# d$ „  Z$ d% „  Z% d& „  Z& d' „  Z' d( „  Z( d) „  Z) d* „  Z* d+ „  Z+ d, „  Z, d- „  Z- d. „  Z. RS(/   R@   i   c         C` s>  t  t |  ƒ j | | ƒ \ } } } | d k re t j j | j d ƒ } t j j | j d ƒ } n> t j j | j d | f ƒ } t j j | j d | f ƒ } t j |  j j d ƒ ƒ rt j j | j ƒ }	 | d |	 } t j j | j ƒ }
 | d |
 } n  | j	 |  j ƒ } | j	 |  j ƒ } | | | | | f S(   Ni   i    y              ð?(
   RÜ   R  RM   R   RH   R   RJ   R   RK   R:   (   R>   RK   RG   R†   R   R   R   RÝ   t   vR1   R8   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRM   –  s    $c   	      C` sx   |  j  d ƒ \ } } } } } t | | | | t ƒ \ } } | t j | | j ƒ  ƒ } t | | | |  j |  j ƒ d  S(   NRA   (	   RM   t	   qr_updateRT   R   t   outerR   R    R	   R
   (	   R>   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_sqr_rank_1¬  s    c   
      C` s×   xÐ d d d d g D]¼ } |  j  d d | ƒ\ } } } } } | d k rv | j | j d ƒ } | j | j d ƒ } n  t | | | | t ƒ \ } } | t j | | j j ƒ  ƒ }	 t	 | | |	 |  j
 |  j ƒ q Wd  S(   Ni   i   i   i   RA   R†   (   RM   t   reshapet   sizeR  RT   R   R   R   R   R    R	   R
   (
   R>   R†   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_sqr_rank_p²  s    $c   	      C` sx   |  j  d ƒ \ } } } } } t | | | | t ƒ \ } } | t j | | j ƒ  ƒ } t | | | |  j |  j ƒ d  S(   NRB   (	   RM   R  RT   R   R  R   R    R	   R
   (	   R>   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_tall_rank_1½  s    c   
      C` s×   xÐ d d d d g D]¼ } |  j  d d | ƒ\ } } } } } | d k rv | j | j d ƒ } | j | j d ƒ } n  t | | | | t ƒ \ } } | t j | | j j ƒ  ƒ }	 t	 | | |	 |  j
 |  j ƒ q Wd  S(   Ni   i   i   i   RB   R†   (   RM   R  R  R  RT   R   R   R   R   R    R	   R
   (
   R>   R†   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_tall_rank_pÃ  s    $c   	      C` sx   |  j  d ƒ \ } } } } } t | | | | t ƒ \ } } | t j | | j ƒ  ƒ } t | | | |  j |  j ƒ d  S(   NRC   (	   RM   R  RT   R   R  R   R    R	   R
   (	   R>   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_fat_rank_1Í  s    c   
      C` s×   xÐ d d d d g D]¼ } |  j  d d | ƒ\ } } } } } | d k rv | j | j d ƒ } | j | j d ƒ } n  t | | | | t ƒ \ } } | t j | | j j ƒ  ƒ }	 t	 | | |	 |  j
 |  j ƒ q Wd  S(   Ni   i   i   i   RC   R†   (   RM   R  R  R  RT   R   R   R   R   R    R	   R
   (
   R>   R†   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_fat_rank_pÓ  s    $c   	      C` s~   |  j  d d ƒ \ } } } } } t | | | | t ƒ \ } } | t j | | j ƒ  ƒ } t | | | |  j |  j t ƒ d  S(   NRB   Rj   (	   RM   R  RT   R   R  R   R    R	   R
   (	   R>   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_economic_rank_1Ý  s    !c   
      C` sÚ   xÓ d d d d g D]¿ } |  j  d d | ƒ \ } } } } } | d k rv | j | j d ƒ } | j | j d ƒ } n  t | | | | t ƒ \ } } | t j | | j j ƒ  ƒ }	 t	 | | |	 |  j
 |  j t ƒ q Wd  S(   Ni   i   i   i   RB   Rj   (   RM   R  R  R  RT   R   R   R   R   R    R	   R
   (
   R>   R†   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_economic_rank_pã  s    $c   	      C` sx   |  j  d ƒ \ } } } } } t | | | | t ƒ \ } } | t j | | j ƒ  ƒ } t | | | |  j |  j ƒ d  S(   NRD   (	   RM   R  RT   R   R  R   R    R	   R
   (	   R>   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_Mx1_rank_1í  s    c   	      C` s«   |  j  d d d ƒ\ } } } } } | j | j d ƒ } | j | j d ƒ } t | | | | t ƒ \ } } | t j | | j j ƒ  ƒ } t	 | | | |  j
 |  j ƒ d  S(   NRD   R†   i   (   RM   R  R  R  RT   R   R   R   R   R    R	   R
   (	   R>   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_Mx1_rank_pó  s    $c   	      C` s~   |  j  d d ƒ \ } } } } } t | | | | t ƒ \ } } | t j | | j ƒ  ƒ } t | | | |  j |  j t ƒ d  S(   NRD   Rj   (	   RM   R  RT   R   R  R   R    R	   R
   (	   R>   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_Mx1_economic_rank_1ý  s    !c   	      C` s±   |  j  d d d d ƒ\ } } } } } | j | j d ƒ } | j | j d ƒ } t | | | | t ƒ \ } } | t j | | j j ƒ  ƒ } t	 | | | |  j
 |  j t ƒ d  S(   NRD   Rj   R†   i   (   RM   R  R  R  RT   R   R   R   R   R    R	   R
   (	   R>   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_Mx1_economic_rank_p  s    'c   	      C` sx   |  j  d ƒ \ } } } } } t | | | | t ƒ \ } } | t j | | j ƒ  ƒ } t | | | |  j |  j ƒ d  S(   NRE   (	   RM   R  RT   R   R  R   R    R	   R
   (	   R>   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_1xN_rank_1  s    c   	      C` s«   |  j  d d d ƒ\ } } } } } | j | j d ƒ } | j | j d ƒ } t | | | | t ƒ \ } } | t j | | j j ƒ  ƒ } t	 | | | |  j
 |  j ƒ d  S(   NRE   R†   i   (   RM   R  R  R  RT   R   R   R   R   R    R	   R
   (	   R>   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_1xN_rank_p  s    $c   	      C` sx   |  j  d ƒ \ } } } } } t | | | | t ƒ \ } } | t j | | j ƒ  ƒ } t | | | |  j |  j ƒ d  S(   NRF   (	   RM   R  RT   R   R  R   R    R	   R
   (	   R>   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_1x1_rank_1  s    c   	      C` s«   |  j  d d d ƒ\ } } } } } | j | j d ƒ } | j | j d ƒ } t | | | | t ƒ \ } } | t j | | j j ƒ  ƒ } t	 | | | |  j
 |  j ƒ d  S(   NRF   R†   i   (   RM   R  R  R  RT   R   R   R   R   R    R	   R
   (	   R>   R   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_1x1_rank_p#  s    $c         C` s–   |  j  d ƒ \ } } } } } t t t | d | | | ƒ t t t | | d | | ƒ t t t | | | d | ƒ t t t | | | | d ƒ d  S(   NRF   i    (   i    i    (   i    i    (   RM   R¶   R$   R  (   R>   R   R   R   RÝ   R  (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_1x1_rank_1_scalar-  s
    c   )      C` sû  | d k r t  n t } xÜd d d g D]Ë} |  j | | | ƒ \ } } }	 }
 } | | |	 |
 | f ƒ \ } } } } | d k r¡ | t j |
 | j ƒ  ƒ } n | t j |
 | j j ƒ  ƒ } | j d ƒ } |	 j d ƒ } |
 j d ƒ } | j d ƒ } t	 | | | | t  ƒ \ } } t
 | | | |  j |  j | ƒ t	 | | | | t ƒ \ } } t
 | | | |  j |  j | ƒ | rÃt | | d |  j d	 |  j ƒt | | j ƒ  d |  j d	 |  j ƒn  | j d ƒ } |	 j d ƒ } |
 j d ƒ } | j d ƒ } t	 | | | | t  ƒ \ } } t
 | | | |  j |  j | ƒ t	 | | | | t ƒ \ } } t
 | | | |  j |  j | ƒ | rÆt | | d |  j d	 |  j ƒt | | j ƒ  d |  j d	 |  j ƒn  | j d ƒ } |	 j d ƒ } |
 j d ƒ } | j d ƒ } t	 | | | | t  ƒ \ } } t
 | | | |  j |  j | ƒ t	 | | | | t ƒ \ } }  t
 | |  | |  j |  j | ƒ | rÉt |  | d |  j d	 |  j ƒt | | j ƒ  d |  j d	 |  j ƒn  | j d ƒ } |	 j d ƒ } |
 j d ƒ } | j d ƒ } t	 | | | | t  ƒ \ }! }" t
 |! |" | |  j |  j | ƒ t	 | | | | t ƒ \ }# }$ t
 |# |$ | |  j |  j | ƒ | rÌt |$ | d |  j d	 |  j ƒt | | j ƒ  d |  j d	 |  j ƒn  | j d ƒ } |	 j d ƒ } |
 j d ƒ } | j d ƒ } | | | | | f ƒ \ } } } } t	 | | | | t  ƒ \ }% }& t
 |% |& | |  j |  j | ƒ t	 | | | | t ƒ \ }' }( t
 |' |( | |  j |  j | ƒ | r( t |( | d |  j d	 |  j ƒt | | j ƒ  d |  j d	 |  j ƒq( q( Wd  S(
   NRj   RA   RB   RC   i   R   R«   R	   R
   (   RT   Rƒ   RM   R   R  R   R   R   R‚   R  R    R	   R
   R   ()   R>   R„   RG   R†   R‡   R   RK   R   RŠ   R‹   Rý   t   v0RŒ   R   Rþ   t   vst   aupR   R   RÝ   R  RW   RX   RŽ   R   R   R‘   R’   R“   R”   R•   R–   R—   R
  R  t   q4ot   r4oR   R  R  R  (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR˜   4  s~    $$(((($c         C` s   |  j  t d d t ƒ d  S(   NR@   i   (   R˜   R/   Rƒ   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_non_unit_strides_rank_1  s    c         C` s   |  j  t d d t ƒ d  S(   NRj   i   (   R˜   R/   Rƒ   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt%   test_non_unit_strides_economic_rank_1„  s    c         C` s   |  j  t d d t ƒ d  S(   NR@   i   (   R˜   R/   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_non_unit_strides_rank_p‡  s    c         C` s   |  j  t d d t ƒ d  S(   NRj   i   (   R˜   R/   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt%   test_non_unit_strides_economic_rank_pŠ  s    c         C` s   |  j  t d d t ƒ d  S(   NR@   i   (   R˜   R2   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_neg_strides_rank_1  s    c         C` s   |  j  t d d t ƒ d  S(   NRj   i   (   R˜   R2   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt    test_neg_strides_economic_rank_1  s    c         C` s   |  j  t d d t ƒ d  S(   NR@   i   (   R˜   R2   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_neg_strides_rank_p“  s    c         C` s   |  j  t d d t ƒ d  S(   NRj   i   (   R˜   R2   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt    test_neg_strides_economic_rank_p–  s    c         C` s   |  j  t d d t ƒ d  S(   NR@   i   (   R˜   R9   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt    test_non_itemsize_strides_rank_1™  s    c         C` s   |  j  t d d t ƒ d  S(   NRj   i   (   R˜   R9   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt)   test_non_itemsize_strides_economic_rank_1œ  s    c         C` s   |  j  t d d t ƒ d  S(   NR@   i   (   R˜   R9   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt    test_non_itemsize_strides_rank_pŸ  s    c         C` s   |  j  t d d t ƒ d  S(   NRj   i   (   R˜   R9   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt)   test_non_itemsize_strides_economic_rank_p¢  s    c         C` s   |  j  t d d t ƒ d  S(   NR@   i   (   R˜   R<   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt!   test_non_native_byte_order_rank_1¥  s    c         C` s   |  j  t d d t ƒ d  S(   NRj   i   (   R˜   R<   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt*   test_non_native_byte_order_economic_rank_1¨  s    c         C` s   |  j  t d d t ƒ d  S(   NR@   i   (   R˜   R<   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt!   test_non_native_byte_order_rank_p«  s    c         C` s   |  j  t d d t ƒ d  S(   NRj   i   (   R˜   R<   RT   (   R>   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt*   test_non_native_byte_order_economic_rank_p®  s    c         C` sü  |  j  d ƒ \ } } } } } | t j | | j ƒ  ƒ } | j d ƒ } | j d ƒ } | j d ƒ }	 | j d ƒ }
 t | | |	 |
 t ƒ \ } } t | | | |  j |  j	 ƒ t | | | |  j |  j	 ƒ t | | |	 |
 t
 ƒ \ } } t | | | |  j |  j	 ƒ t | | d |  j d |  j	 ƒt | | d |  j d |  j	 ƒ| j d ƒ } | j d ƒ } | j d ƒ }	 | j d ƒ }
 t | | |	 |
 t
 ƒ \ } } t | | | |  j |  j	 ƒ t | | d |  j d |  j	 ƒt | | d |  j d |  j	 ƒd  S(   NRA   R   R	   R
   R«   (   RM   R   R  R   R‚   R  RT   R    R	   R
   Rƒ   R   (   R>   R   RŠ   R‹   Rý   R+  RY   R   R   RÝ   R  RW   RX   R   R‘   R”   R•   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_overwrite_qruv_rank_1±  s*    c         C` s  |  j  d d ƒ \ } } } } } | t j | | j ƒ  ƒ } | j d ƒ } | j d ƒ } | j d ƒ }	 | j d ƒ }
 t | | |	 |
 t ƒ \ } } t | | | |  j |  j	 t ƒ t | | | |  j |  j	 t ƒ t | | |	 |
 t
 ƒ \ } } t | | | |  j |  j	 t ƒ t | | d |  j d |  j	 ƒt | | d |  j d |  j	 ƒ| j d ƒ } | j d ƒ } | j d ƒ }	 | j d ƒ }
 t | | |	 |
 t
 ƒ \ } } t | | | |  j |  j	 t ƒ t | | d |  j d |  j	 ƒt | | d |  j d |  j	 ƒd  S(   NRB   Rj   R   R	   R
   R«   (   RM   R   R  R   R‚   R  RT   R    R	   R
   Rƒ   R   (   R>   R   RŠ   R‹   Rý   R+  RY   R   R   RÝ   R  RW   RX   R   R‘   R”   R•   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt#   test_overwrite_qruv_rank_1_economicÏ  s*    !c         C` sQ  |  j  d d d ƒ\ } } } } } | t j | | j j ƒ  ƒ } | j d ƒ } | j d ƒ } | j d ƒ }	 | j d ƒ }
 t | | |	 |
 t ƒ \ } } t | | | |  j	 |  j
 ƒ t | | | |  j	 |  j
 ƒ t | | |	 |
 t ƒ \ } } t | | | |  j	 |  j
 ƒ t | | d |  j	 d |  j
 ƒt | | d |  j	 d |  j
 ƒd  S(   NRA   R†   i   R   R«   R	   R
   (   RM   R   R   R   R   R‚   R  RT   R    R	   R
   Rƒ   R   (   R>   R   RŠ   R‹   Rý   R+  RY   R   R   RÝ   R  RW   RX   R   R‘   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_overwrite_qruv_rank_pî  s    $c         C` sª   |  j  d ƒ \ } } } } } t t t t j g  ƒ | | | ƒ t t t | t j g  ƒ | | ƒ t t t | | t j g  ƒ | ƒ t t t | | | t j g  ƒ ƒ d  S(   NRB   (   RM   R¶   R$   R  R   Rº   (   R>   R   R   R   RÝ   R  (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR    s
    """c         C` s–   |  j  d ƒ \ } } } } } t t t | | d | | ƒ t t t | d  | | | ƒ t t t | | | d | ƒ t t t | | | | d ƒ d  S(   NRB   i   iþÿÿÿ(   RM   R¶   R$   R  (   R>   R   R   R   RÝ   R  (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR  
  s
    c         C` s	  d d d d d d d d d	 d
 d d g } |  j  d ƒ \ } } } } } xº | D]² } | j j | ƒ } | j j | ƒ }	 | j j | ƒ }
 | j j | ƒ } t t t | | | | ƒ t t t | |	 | | ƒ t t t | | |
 | ƒ t t t | | | | ƒ qO Wd  S(   NR¾   R¿   RÀ   RÁ   RÂ   RÃ   RÄ   RÅ   RÆ   RÇ   RÈ   RÉ   RB   (   RM   RÊ   R:   R¶   R$   R  (   R>   RË   R   RŠ   R‹   Rý   R+  R   R   R   RÝ   R  (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRÌ     s    		c         C` s|   t  j d ƒ j d d ƒ } | j ƒ  } | d  d  … d f j ƒ  } | d d  d  … f j ƒ  } t t t | | | | ƒ d  S(   Ni   i   i    (   R   t   arangeR  R‚   R¶   R$   R  (   R>   R   R   RÝ   R  (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_integer_input!  s
    c   
   	   C` sà  |  j  d d d ƒ\ } } } } } | j d ƒ } t j | d <t t t | | | d  d  … d f | d  d  … d f ƒ t t t | | | | ƒ | j d ƒ } t j | d <t t t | | | d  d  … d f | d  d  … d f ƒ t t t | | | | ƒ | j d ƒ } t j | d	 <t t t | | | d  d  … d f | d  d  … d f ƒ t t t | | | | ƒ | j d ƒ }	 t j |	 d
 <t t t | | | d  d  … d f |	 d  d  … d f ƒ t t t | | | |	 ƒ d  S(   NRB   R†   i   R   i   i    (   i   i   (   i   i   (   i    i    (   i    i    (   RM   R‚   R   RÍ   R¶   R$   R  (
   R>   RÎ   RŠ   R‹   Rý   R+  R   R   RÝ   R  (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRÏ   (  s"    $9999c   
   	   C` sæ  |  j  d d d d d ƒ\ } } } } } | j d ƒ } t j | d	 <t t t | | | d  d  … d f | d  d  … d f ƒ t t t | | | | ƒ | j d ƒ } t j | d
 <t t t | | | d  d  … d f | d  d  … d f ƒ t t t | | | | ƒ | j d ƒ } t j | d <t t t | | | d  d  … d f | d  d  … d f ƒ t t t | | | | ƒ | j d ƒ }	 t j |	 d <t t t | | | d  d  … d f |	 d  d  … d f ƒ t t t | | | |	 ƒ d  S(   NRB   RG   Rj   R†   i   R   i   i    (   i   i   (   i   i   (   i    i    (   i    i    (   RM   R‚   R   RÍ   R¶   R$   R  (
   R>   RÎ   RŠ   R‹   Rý   R+  R   R   RÝ   R  (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_economic_check_finite?  s"    *9999c         C` s  t  j d d g d d g d d g d d g g |  j ƒ } t  j d d g d d g g |  j ƒ } t  j d d d d g |  j ƒ } t  j d d g |  j ƒ } t | | | | ƒ \ } } t  j | | ƒ t  j | | j ƒ  ƒ } t | | | |  j |  j	 t
 ƒ d  S(   Ni    i   iÿÿÿÿi   (   R   Rº   R   R  R   R  R   R    R	   R
   RT   (   R>   R   R   RÝ   R  RW   RX   RY   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_u_exactly_in_span_qV  s    9'!((/   RN   RO   RM   R  R  R  R  R  R  R   R!  R"  R#  R$  R%  R&  R'  R(  R)  R*  R˜   R0  R1  R2  R3  R4  R5  R6  R7  R8  R9  R:  R;  R<  R=  R>  R?  R@  RA  RB  R  R  RÌ   RD  RÏ   RE  RF  (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyR  •  sZ   				
		
		
		
		
		
		
		M																									t   TestQRupdate_fc           B` s   e  Z e j d  ƒ Z RS(   RÕ   (   RN   RO   R   R   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRG  _  s   t   TestQRupdate_Fc           B` s   e  Z e j d  ƒ Z RS(   R   (   RN   RO   R   R   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRH  b  s   t   TestQRupdate_dc           B` s   e  Z e j d  ƒ Z RS(   RØ   (   RN   RO   R   R   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRI  e  s   t   TestQRupdate_Dc           B` s   e  Z e j d  ƒ Z RS(   RÚ   (   RN   RO   R   R   (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRJ  h  s   c    
      C` sÕ   d d g }  d g } d d d g } d d g } d d d d	 g } xŒ t  j |  | | | | ƒ D]o \ } } } } }	 | d k r´ t | | | | d |	 ƒ t | | | | d
 |	 ƒ q^ t | | | | d
 |	 ƒ q^ Wd  S(   NR   R«   i   t   Ai   i   RÕ   RØ   RÚ   i   (   i   i   (   R€   R   t   check_form_qTu(
   t   q_ordert   q_shapet   u_ordert   u_shapeR   t   qoRŒ   t   uoRþ   RØ   (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   test_form_qTuk  s    	.c         C` sÄ  t  j j d ƒ | d k r8 | d k r8 | d f } n | d | f } t  j | ƒ } | j d k r t  j j | ƒ } t  j j | ƒ } nh | j d k rë t  j j | ƒ d t  j j | ƒ } t  j j | ƒ d t  j j | ƒ } n
 t d ƒ t  j | | |  ƒ } | d k r.t  j | | | ƒ } n t | j | ƒ f ƒ \ } d	 t  j	 | ƒ j
 d
 } d
 t  j	 | ƒ j }	 t  j | j j ƒ  | ƒ }
 t j | | ƒ } t | |
 d | d |	 ƒd  S(   Ni/   i   i    t   fdt   FDy              ð?s#   form_qTu doesn't support this dtypeRK  g      $@i   R	   R
   (   R   RH   RI   R   t   charR$   t   requireR/   R:   R   R   R   R   R   R   t   _decomp_updatet	   _form_qTuR   (   RM  RN  RO  RP  t   u_ndimR   R   RÝ   R	   R
   t   expectedt   res(    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyRL  …  s*    &)
(.   t
   __future__R    R   R   R€   t   numpyR   t   numpy.testingR   R   R   RÑ   R   R¶   t   scipyR   t   scipy.linalg._decomp_updateRX  R   Rƒ   R   R   R    R/   R2   R9   R<   t   objectR=   RP   RÔ   RÖ   R×   RÙ   RÛ   R  R  R  R  R  RG  RH  RI  RJ  RS  RL  (    (    (    sD   lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.pyt   <module>   sL   
			
	ÿ ÿ ÿ ÿ ÿ Ë	