ó
q™xTc           @   s™   d  d l  m Z d  d l m Z d  d l m Z d  d l m Z d „  Z	 d „  Z
 d „  Z d „  Z d	 „  Z d
 „  Z d „  Z e d k r• e ƒ  n  d S(   iÿÿÿÿ(   t   division(   t   approx_equal(   t   flex(   t   random_transformc          C   s¬   t  j d d d d d d ƒ }  t j |  ƒ } t j |  |  ƒ } t j |  |  |  ƒ } t | d d d ƒsr t ‚ t | d d d ƒs� t ‚ t | d d d ƒs¨ t ‚ d  S(	   Nt   mui    t   sigmai   t   Ni@B t   epsg{®Gáz”?(   t   rtt   normal_variateR   t   meanR   t   AssertionError(   t   datat   mu1t   mu2t   mu3(    (    sV   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/python_utils/tst_random_transform.pyt   exercise_gauss   s    c       	   C   s€   t  j d d d d d d d d ƒ }  t j |  ƒ } t j |  |  ƒ } t | d d	 d
 ƒsa t ‚ t | d d	 d ƒs| t ‚ d  S(   Nt   ai   R   i    R   i   R   i@B R   g{®Gáz”?g      ø?g{®Gáz¤?(   R   t	   t_variateR   R
   R   R   (   R   R   R   (    (    sV   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/python_utils/tst_random_transform.pyt   exercise_t_variate   s
    $c          C   sn   t  j d d ƒ }  t j |  ƒ } t j |  |  ƒ } t | d d d ƒsO t ‚ t | d d d ƒsj t ‚ d  S(   NR   i@B g'1¬Zì?R   g{®Gáz”?g      ð?(   R   t   wilson_amplitude_variateR   R
   R   R   (   R   R   R   (    (    sV   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/python_utils/tst_random_transform.pyt!   exercise_wilson_amplitude_variate   s
    c          C   sn   t  j d d ƒ }  t j |  ƒ } t j |  |  ƒ } t | d d d ƒsO t ‚ t | d d d ƒsj t ‚ d  S(   NR   i@B g      ð?R   g{®Gáz”?g       @g{®Gáz¤?(   R   t   wilson_intensity_variateR   R
   R   R   (   R   R   R   (    (    sV   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/python_utils/tst_random_transform.pyt!   exercise_wilson_intensity_variate   s
    c          C   s@   t  j d d ƒ }  t j |  ƒ } t | d d d ƒs< t ‚ d  S(   NR   i@B g      à?R   g{®Gáz”?(   R   t   pseudo_normalized_abs_delta_iR   R
   R   R   (   R   R   (    (    sV   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/python_utils/tst_random_transform.pyt&   exercise_pseudo_normalized_abs_delta_i$   s    c          C   s  d d  l  }  |  j d ƒ t j d d ƒ j ƒ  } t j | ƒ } t j | | ƒ | | } t | d d d ƒsv t ‚ t | d d d ƒs‘ t ‚ t j d d ƒ j ƒ  } t j | ƒ } t j | | ƒ | | } t | d	 d d ƒsî t ‚ t | d	 d d ƒs	t ‚ d  S(
   Niÿÿÿÿi    i † i   g      ð?R   gš™™™™™©?i
   g      $@(	   t   randomt   seedR   t   poisson_variatet	   as_doubleR   R
   R   R   (   R   R   t   mt   v(    (    sV   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/python_utils/tst_random_transform.pyt   exercise_poisson)   s    c           C   s3   t  ƒ  t ƒ  t ƒ  t ƒ  t ƒ  t ƒ  d GHd  S(   Nt   OK(   R    R   R   R   R   R   (    (    (    sV   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/python_utils/tst_random_transform.pyt   run8   s    t   __main__N(   t
   __future__R    t   libtbx.test_utilsR   t   scitbx.array_familyR   t   scitbx.python_utilsR   R   R   R   R   R   R   R    R"   t   __name__(    (    (    sV   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/python_utils/tst_random_transform.pyt   <module>   s   									