ó
†™xTc           @   sÏ   d  d l  m Z d  d l m Z d  d l m Z 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
 d e d d „ Z d „  Z d „  Z d „  Z e d k rË e ƒ  n  d S(   iÿÿÿÿ(   t   division(   t   merge(   t   random_f_calc(   t   miller(   t   flex(   t   debug_utils(   t   approx_equalNc         C   st  t  j d d d |  ƒ t  j d t d ƒ ƒ } | j ƒ  } t | ƒ d k sR t ‚ | d } | j |  ƒ } |  j ƒ  r† | j	 ƒ  } n  t
 j |  j ƒ  | j ƒ  ƒ } t | j ƒ  d d d ƒsÅ t ‚ t | j ƒ  ƒ d k  sã t ‚ t
 j |  j ƒ  | j ƒ  ƒ } |  j ƒ  r1t | j ƒ  d d d ƒsRt ‚ n! t | j ƒ  d d d	 ƒsRt ‚ t | j ƒ  ƒ d k  spt ‚ d  S(
   Nt	   file_names   tmp.scat   miller_arrayt   file_handlei   i    t   epsgü©ñÒMbP?gš™™™™™¹?(   R   t   writet   readert   opent   as_miller_arrayst   lent   AssertionErrort	   adopt_sett   is_xray_amplitude_arrayt	   f_sq_as_fR   t   linear_regressiont   dataR   t   slopet   abst   y_interceptt   sigmast   is_xray_intensity_array(   R   t   read_back_filet   read_back_arrayst   read_back_arrayt   read_back_input_indexingt
   regression(    (    sG   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/iotbx/scalepack/tst_merge.pyt   recycle
   s(    
	!	$!i   g      @i    c         C   sÚ   t  d |  d | d | d | d | ƒ } | d  k r7 d  St j | j ƒ  ƒ } d t j | ƒ } | | d } t j d | d	 | d
 | d ƒ j ƒ  } | j	 t j
 d | j ƒ  ƒ ƒ } t d | ƒ t d | j ƒ  ƒ d  S(   Nt   space_group_infot   n_scattererst   d_mint   anomalous_flagt   verbosei~–˜ i   t
   miller_setR   R   i
   t   sizeR   (   R   t   NoneR   t   normR   t   maxR   t   arrayt#   set_observation_type_xray_intensityt   selectt   random_permutationR'   R    R   (   R!   R"   R#   R$   R%   t   f_calcR   t   scale_factor(    (    sG   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/iotbx/scalepack/tst_merge.pyt   exercise!   s$    	 	!c         C   s4   x- t  t f D] } t | d | d |  j ƒq Wd  S(   NR$   R%   (   t   Falset   TrueR1   t   Verbose(   t   flagsR!   R$   (    (    sG   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/iotbx/scalepack/tst_merge.pyt   run_call_back5   s
    c          C   s`   t  d d ƒ j d ƒ t j d t  d ƒ ƒ }  |  j ƒ  } t | d j ƒ  ƒ d k s\ t ‚ d  S(   Ns   overloads.scat   ws/      1
 -987
    50.000    50.000    80.000    90.000    90.000   120.000 p3121
  19   2   3 ******* 47482.6 ******* 26861.1
  19   2   2 16333.4 17143.9 38472.0 22574.8
  19   2   1 49448.5 24728.9 28427.6 18873.9
  19   2   0 34296.1 24479.1 25846.4 22660.4
  19   2  -1 27513.6 23318.8 30341.0 19273.1R	   i    i   (   R   R   R   R   R   R   t   indicesR   (   t   file_int   arrays(    (    sG   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/iotbx/scalepack/tst_merge.pyt   exercise_overloads<   s
    c           C   s"   t  j t j d t ƒ t ƒ  d  S(   Ni   (   R   t   parse_options_loop_space_groupst   syst   argvR6   R;   (    (    (    sG   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/iotbx/scalepack/tst_merge.pyt   runJ   s    t   __main__(   t
   __future__R    t   iotbx.scalepackR   t   iotbx.regression.utilsR   t   cctbxR   t   cctbx.array_familyR   t   cctbx.developmentR   t   libtbx.test_utilsR   R=   R    R2   R1   R6   R;   R?   t   __name__(    (    (    sG   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/iotbx/scalepack/tst_merge.pyt   <module>   s   				