ó
¢áSc           @` sú  d  d l  m Z m Z m Z d  d l Z d  d l Z e j j d d d ƒ j d d ƒ Z	 e j j d d d ƒ j d d ƒ Z
 e	 d e
 Z e e e g e e e g g Z e e e g e e e g g Z e j j e	 d	 e ƒZ e j j e
 d	 e ƒZ e j j e d	 e ƒZ e j j d d d0 ƒ j d
 d
 ƒ Z e j j d d d1 ƒ j d
 d
 ƒ Z e d e Z e d k Z e d k  Z e j j e d	 e ƒZ e j j e d	 e ƒZ e j j e d	 e ƒZ d d d d „ Z d e	 e e e d „ Z d d e e	 e e e d „ Z d e e	 e e
 e e e e e d „
 Z  e! d k röe e j" ƒ e e j# ƒ e e j$ ƒ e  e j% ƒ e  e j& ƒ e  e j' ƒ e d d d d ƒe d d d d d ƒe d d d d ƒe d d d d ƒe d d d d ƒe d d d d ƒe d d d d ƒe d  d! d d d" e ƒe d  d# d d d" e ƒe( d$ d% ƒ e( d& ƒ e d' d( d d) ƒe( d$ d% ƒ e( d* ƒ e d+ d( d d) ƒe( d$ d% ƒ e( d, ƒ e d- d( d d ƒe( d$ d% ƒ e( d. ƒ e d/ d( d d
 ƒn  d S(2   i    (   t   divisiont   absolute_importt   print_functionNiÿÿÿÿi   i   i   i   y              ð?t   maskid   gš™™™™™é?gš™™™™™é¿t    iô  c         C` s  d d d d g } d d d d g } t  d	 | |  f d
 d ƒg  d D] } d t | d ƒ ^ qE } d d j | ƒ } t j d |  d | ƒ }	 t |	 j | | ƒ ƒ | }
 |
 d k rç t t t j	 t j
 |
 ƒ ƒ d ƒ d ƒ } n d } t  d | | d |
 | | | | f ƒ d  S(   Nt   st   mss   Âµst   nsi   g     @�@g    €„.Ag    eÍÍAs   %s : %-50s : t   endt    t   xyzs   %ss,nm%ss,%sl,nm%sli   s"   from __main__ import numpy, ma, %st   ,t   stmtt   setupg        i   s&   %d loops, best of %d: %.*g %s per loop(   t   printt   tuplet   joint   timeitt   Timert   mint   repeatt   intt   numpyt   floort   log10(   R   t   vt   nloopt   nrept   unitst   scalingt   xt   varnamesR   R   t   bestt   order(    (    sH   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/numpy/ma/bench.pyt   timer*   s    '/c   	      C` s‘   |  j  } t d d ƒ t d | ƒ d \ } } t d t ƒ  d d | d	 | ƒt d
 | ƒ d \ } } t d t ƒ  d d | d	 | ƒd  S(   Nt   -i2   s   %s on small arrayss   numpy.mat   nmxss!   %(module)s.%(funcname)s(%(data)s)R   s   %11sR   s   %s on large arrayst   nmxl(   s   numpy.mas   nmxs(   s   numpy.mas   nmxl(   t   __name__R   R"   t   locals(	   t   funcR   t   xsR$   t   xlR%   t   funcnamet   modulet   data(    (    sH   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/numpy/ma/bench.pyt   compare_functions_1v>   s    	!!R   c	         C` sŠ   t  d d ƒ t  d |  ƒ d | d }	 }
 t d t ƒ  d |
 d | ƒt  d	 |  ƒ d
 | d }	 }
 t d t ƒ  d |
 d | ƒd  S(   NR#   i2   s   %s on small arrayss   nm%sss   numpy.mas!   %(data)s.%(methodname)s(%(args)s)R   R   s   %s on large arrayss   nm%sl(   R   R"   R'   (   t
   methodnamet   argst   varsR   t   testR)   R$   R*   R%   R-   t   ver(    (    sH   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/numpy/ma/bench.pyt   compare_methodsK   s    c         C` s‘   |  j  } t d d ƒ t d | ƒ d \ } } t d t ƒ  d d | d	 | ƒt d
 | ƒ d \ } } t d t ƒ  d d | d	 | ƒd  S(   NR#   i2   s   %s on small arrayss   numpy.mas	   nmxs,nmyss!   %(module)s.%(funcname)s(%(data)s)R   s   %11sR   s   %s on large arrayss	   nmxl,nmyl(   s   numpy.mas	   nmxs,nmys(   s   numpy.mas	   nmxl,nmyl(   R&   R   R"   R'   (   R(   R   R2   R)   R$   t   yst   nmysR*   R%   t   ylt   nmylR+   R,   R-   (    (    sH   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/numpy/ma/bench.pyt   compare_functions_2vW   s    	!!t   __main__t   ravelR   iè  t	   conjugatet   zt	   transposet
   compressedt   __getitem__t   0s   (0,0)s   [0,-1]t   __setitem__s   0, 17R2   s	   (0,0), 17R#   i2   s   __setitem__ on small arrayss(   nmxs.__setitem__((-1,0),numpy.ma.masked)s   numpy.ma   i'  s   __setitem__ on large arrayss(   nmxl.__setitem__((-1,0),numpy.ma.masked)s   where on small arrayss    numpy.ma.where(nmxs>2,nmxs,nmys)s   where on large arrayss    numpy.ma.where(nmxl>2,nmxl,nmyl)i'  i'  ()   t
   __future__R    R   R   R   R   t   randomt   uniformt   reshapeR)   R5   t   zst   Truet   Falset   m1t   m2t   mat   arrayR$   R6   t   nmzsR*   R7   t   zlt   maskxt   maskyR%   R8   t   nmzlR"   R.   R4   R9   R&   t   sint   logt   sqrtt   multiplyt   dividet   powerR   (    (    (    sH   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/numpy/ma/bench.pyt   <module>   sp   $$$$	



