ó
¦–Õ\c           @   sM   d  d l  Z  e  j d ƒ d  d l Z d  d l j Z d  d l Z d „  Z	 d S(   iÿÿÿÿNt   scipyc    	      C   sq  t  j j d d	 ƒ }  t  j j d d
 ƒ } t  j j d d ƒ } t  j j d d ƒ } t j |  d d ƒ} t j j j |  ƒ } t j j j j	 | ƒ } d „  d „  d „  g } x8 | D]0 } t  j
 | | | ƒ | | | ƒ ƒ sµ t ‚ qµ Wt  j
 | j | ƒ | j | ƒ ƒ st ‚ t  j
 | j | ƒ | j | ƒ ƒ s=t ‚ | j | j k sUt ‚ | j | j k smt ‚ d  S(   Nt   sizei   i   i   t   chunksc         S   s   |  j  | ƒ S(   N(   t   matvec(   t   xt   y(    (    sC   lib/python2.7/site-packages/dask/array/tests/test_linearoperator.pyt   <lambda>   t    c         S   s   |  | S(   N(    (   R   R   (    (    sC   lib/python2.7/site-packages/dask/array/tests/test_linearoperator.pyR      R   c         S   s   |  j  | ƒ S(   N(   t   dot(   R   R   (    (    sC   lib/python2.7/site-packages/dask/array/tests/test_linearoperator.pyR      R   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   t   npt   randomt   dat
   from_arrayR    t   sparset   linalgt   aslinearoperatort	   interfacet   MatrixLinearOperatort   allcloset   AssertionErrort   matmatt   rmatvect   dtypet   shape(	   t   XR   t   wt   squaret   dXt   npLOt   daLOt	   functionst   func(    (    sC   lib/python2.7/site-packages/dask/array/tests/test_linearoperator.pyt   test_LinearOperator	   s&    (
   t   pytestt   importorskipt   numpyR	   t
   dask.arrayt   arrayR   t   scipy.sparse.linalgR    R    (    (    (    sC   lib/python2.7/site-packages/dask/array/tests/test_linearoperator.pyt   <module>   s
   