ó
I™xTc           @   sU   d  d l  m Z d „  Z d „  Z e d k rQ d  d l Z e d e j d ƒ n  d S(   iÿÿÿÿ(   t   divisionc             sæ  d d l  m ‰  d d l m }  d d l m } ‡  f d †  } | d d ƒ | d d ƒ | d d ƒ | d	 d
 ƒ | d d ƒ | d d ƒ | d d ƒ | d d ƒ y ˆ  j d ƒ Wn+ |  k
 rå } t | ƒ d k sì t ‚ n X| ‚ ˆ  j	 d ƒ } | j
 j d k st ‚ t | j j ƒ d k s1t ‚ y ˆ  j	 d ƒ Wn+ |  k
 ro} t | ƒ d k svt ‚ n X| ‚ ˆ  j d ƒ } t | ƒ d k s�t ‚ y ˆ  j d ƒ Wn+ |  k
 rÛ} t | ƒ d k sât ‚ n X| ‚ d  S(   Niÿÿÿÿ(   t   change_basis(   t   Sorry(   t   Exception_expectedc            sR   ˆ  j  |  ƒ } ˆ  j  | ƒ } | j | j k s6 t ‚ | j | j k sN t ‚ d  S(   N(   t   p_from_stringt   rt   AssertionErrort   t(   t   stringt   expectedt   rtt   ex(   R   (    sS   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/cctbx/regression/tst_web_change_basis.pyt   check   s    t    s   a,b,cs!   {{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}s   2, 0, 0, 0, 2, 0, 0, 0, 2s   2a,2b,2cs'   {{1/2, 0, 0}, {0, 1/2, 0}, {0, 0, 1/2}}s   1/2a,1/2b,1/2cs0   {{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}, 1/2, 1/3, 1/4s   a+1/2,b+1/3,c+1/4s)   (1 0 0 | 1/2) (0 1 0 | 1/3) (0 0 1 | 1/4)s   1/2,1/3,1/4t   0s:   Uninterpretable expression for change-of-basis matrix: "0"i    i	   s   (1/2, 1/3, 1/4)s3   Uninterpretable expression for symmetry matrix: "0"s	   0.5,1/3,4s   (0.5, 1/3, 4)s/   Uninterpretable expression for coordinates: "0"(   i    (	   i    i    i    i    i    i    i    i    i    (   t	   cctbx.webR   t   libtbx.utilsR   t   libtbx.test_utilsR   R   t   strR   t   w_from_stringR   t   elemsR   t   xyz_from_string(   R   R   R   t   eR
   t   xyz(    (   R   sS   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/cctbx/regression/tst_web_change_basis.pyt   exercise   sJ    			c         C   s(   t  |  ƒ d k s t ‚ t ƒ  d GHd  S(   Ni    t   OK(   t   lenR   R   (   t   args(    (    sS   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/cctbx/regression/tst_web_change_basis.pyt   run/   s    t   __main__NR   i   (   t
   __future__R    R   R   t   __name__t   syst   argv(    (    (    sS   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/cctbx/regression/tst_web_change_basis.pyt   <module>   s
   	-	