ó
^™xTc           @   sx   d  d l  m Z d  d l m Z d  d l m Z d  d l m Z d  d l	 Z	 d „  Z
 d „  Z e d k rt e ƒ  n  d S(	   iÿÿÿÿ(   t   division(   t   euler_angles(   t   approx_equal(   t   format_cpu_timesNc         C   s�   xz t  j t  j f t  j t  j f t  j t  j f g D]E \ } } | |  Œ  } | | ƒ } | | Œ  } t | | ƒ s4 t ‚ q4 Wd  S(   N(	   t   eulert
   xyz_matrixt
   xyz_anglest
   yzx_matrixt
   yzx_anglest
   zyz_matrixt
   zyz_anglesR   t   AssertionError(   t	   angles_int   euler_matrixR   t   mt
   angles_outt   m2(    (    sP   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/math/tests/tst_euler_angles.pyt   exercise_core   s    c          C   sÎ   t  j d ƒ xg t d d d ƒ D]S }  xJ t d d d ƒ D]6 } x- t d d d ƒ D] } t |  | | f ƒ qR Wq9 Wq  WxH t d ƒ D]: } t g  d d d g D] } t  j  ƒ  d d ^ q� ƒ q„ Wt ƒ  GHd  S(	   Ni    i�  i   iè  i   i   ih  i´   (   t   randomt   seedt   xrangeR   R   (   t   a1_int   a2_int   a3_int   i_trialt   i(    (    sP   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/math/tests/tst_euler_angles.pyt   exercise   s    8t   __main__(   t
   __future__R    t   scitbx.mathR   R   t   libtbx.test_utilsR   t   libtbx.utilsR   R   R   R   t   __name__(    (    (    sP   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/math/tests/tst_euler_angles.pyt   <module>   s   	
	
