ó
X™xTc           @   s¥   d  d l  m Z d  d l Z d  d l m Z d  d l Z d  d l m	 Z	 d  d l
 m Z d  d l Z d  d l Z d „  Z d „  Z d „  Z e d	 k r¡ e ƒ  n  d S(
   iÿÿÿÿ(   t   divisionN(   t   approx_equal(   t   basic_statistics(   t   flexc          C   sn   d d l  m }  |  ƒ  } | j | j f d	 k s7 t ‚ |  d d d d ƒ } | j | j f d
 k sj t ‚ d  S(   Niÿÿÿÿ(   t   normal_distributioni    i   t   meani   t   sigmai
   (   i    i   (   i   i
   (   t   scitbx.randomR   R   R   t   AssertionError(   R   t   n(    (    sL   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/random/tests/tst_random.pyt   exercise_distributions
   s
    	c          C   sû  d d l  m }  m } m } m } m } xf t d ƒ D]X } t j j	 d ƒ |  | ƒ  ƒ } t
 | ƒ  d ƒ sr t ‚ t
 | d ƒ d% ƒ s5 t ‚ q5 Wt t j t j | d ƒ ƒ ƒ } t
 | j d d d ƒsÐ t ‚ t
 | j d d d ƒsî t ‚ t
 | j d d d ƒst ‚ t
 | j d d d ƒs*t ‚ |  | d ƒ ƒ } x2 t j | d ƒ D] }	 |	 t t f k sOt ‚ qOWt j t j | d ƒ ƒ }
 t
 |
 j t ƒ t |
 ƒ d d d ƒsºt ‚ t j j	 d ƒ |  | ƒ  ƒ } t
 | ƒ  d ƒ sñt ‚ t
 | d ƒ d& ƒ st ‚ t t j t j | d ƒ ƒ ƒ } t
 | j d d d ƒsKt ‚ t
 | j d d d ƒsit ‚ t
 | j d d d ƒs‡t ‚ t j j	 d ƒ |  | d d d d ƒ ƒ } t
 | ƒ  d ƒ sÊt ‚ t
 | d ƒ d' ƒ såt ‚ t t j t j | d ƒ ƒ ƒ } t
 | j d! d d ƒs$t ‚ t
 | j d t j d ƒ d d" ƒsOt ‚ t
 | j d# d d" ƒsmt ‚ d$ } |  | | ƒ ƒ } | d ƒ j ƒ  } t j | ƒ } t j | | ƒ | | } t
 | | d d" ƒsÜt ‚ t
 | | d d" ƒs÷t ‚ d  S((   Niÿÿÿÿ(   t   variateR   t   bernoulli_distributiont   gamma_distributiont   poisson_distributioni
   i    gš±Ú¦¸rô¿g·½‰JçÙ¿gì¥·÷ÇÚ¿gBøa/þ¿g	OüÐ?ù¿g©75peó¿gø{‚”˜Êý¿gS¦WÉRCá¿g™ƒ©ül×ó¿g‰þ&ÛÑ¤ä?g)aÒ˜Í-ã¿i@B t   epsg{®Gázt?i   i   gš™™™™™¹?i'  g{®Gáz„?g‘ÏÍwé?i   gk @·Áì?gª½ÙJô?t   alphat   betag?LÝ¼«0@g¿Á$@gª–X|@i   gš™™™™™©?i   g      $@(
   g·½‰JçÙ¿gì¥·÷ÇÚ¿gBøa/þ¿g	OüÐ?ù¿g©75peó¿gø{‚”˜Êý¿gS¦WÉRCá¿g™ƒ©ül×ó¿g‰þ&ÛÑ¤ä?g)aÒ˜Í-ã¿(   gk @·Áì?gª½ÙJô?(   g¿Á$@gª–X|@(   R   R   R   R   R   R   t   xranget   scitbxt   randomt   set_random_seedR   R   R   R   t   doublet	   itertoolst   isliceR   t   biased_variancet   skewt   kurtosist   Truet   Falset   boolt   countt   lent   matht   sqrtt	   as_double(   R   R   R   R   R   t   it   gt   statt   bernoulli_seqt   bt   bernoulli_sampleR   t   pvt   drawst   mt   v(    (    sL   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/random/tests/tst_random.pyt   exercise_variate_generators   s^    (    !!!+c           C   s   t  j j ƒ  t ƒ  t ƒ  d  S(   N(   t   libtbxt   utilst   show_times_at_exitR
   R.   (    (    (    sL   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/random/tests/tst_random.pyt   runH   s    t   __main__(   t
   __future__R    t   libtbx.utilsR/   t   libtbx.test_utilsR   R   R   t   scitbx.mathR   t   scitbx.array_familyR   R   R!   R
   R.   R2   t   __name__(    (    (    sL   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/random/tests/tst_random.pyt   <module>   s   		7	