ó
Ú™xTc           @   s    d  d l  m Z d  d l m Z d  d l Z d  d l Z d  d l m	 Z	 d  d l
 m Z d  d l m Z d „  Z d „  Z e d	 k rœ e ƒ  e ƒ  d
 GHn  d S(   iÿÿÿÿ(   t   division(   t   alternate_conformationsN(   t   flex(   t   approx_equal(   t   null_outc          C   s  t  j j j d d ƒ }  t  j j j d d ƒ } |  j } | j } | j ƒ  } | j ƒ  } | j ƒ  j ƒ  } t j | | | ƒ } t | j	 d d d ƒsŸ t
 ‚ t | j d d d ƒs½ t
 ‚ t j d	 d
 d d d g d d d d g ƒ d k sö t
 ‚ t j d d g d	 d
 d d d g ƒ d k s)t
 ‚ t j d	 d
 d d d g d d d g ƒ d	 k s_t
 ‚ t j d	 d
 d d d g d d d d d g ƒ d k s›t
 ‚ t j d d d d d g d	 d
 d d g ƒ d k sÔt
 ‚ t j | t j | j ƒ  t ƒ ƒ } | d k s
t
 ‚ |  j j ƒ  }	 t |	 j d d ƒ j ƒ  ƒ }
 |
 j ƒ  |
 j ƒ  } t j j d |	 g d |
 d | d d d t d t ƒ } |  j j ƒ  j d ƒ } | j t ƒ d	 k s¶t
 ‚ t j d | d  | ƒ \ } } |	 j  ƒ  | j! ƒ  d } | j" | ƒ d! k s	t
 ‚ d  S("   Nt
   pdb_strings,  ATOM   1639  N   PHE A 113      18.514  41.994  54.886  1.00 12.36           N
ATOM   1640  CA  PHE A 113      19.737  42.742  54.898  1.00 12.97           C
ATOM   1641  C   PHE A 113      19.514  44.206  55.111  1.00 11.88           C
ATOM   1642  O   PHE A 113      18.442  44.758  54.823  1.00 13.75           O
ATOM   1643  CB  PHE A 113      20.587  42.460  53.684  1.00 20.08           C
ATOM   1644  CG  PHE A 113      19.893  42.692  52.399  1.00 17.15           C
ATOM   1645  CD1 PHE A 113      19.182  41.689  51.798  1.00 20.34           C
ATOM   1646  CD2 PHE A 113      20.029  43.895  51.745  1.00 21.22           C
ATOM   1647  CE1 PHE A 113      18.577  41.887  50.601  1.00 23.49           C
ATOM   1648  CE2 PHE A 113      19.411  44.105  50.542  1.00 24.87           C
ATOM   1649  CZ  PHE A 113      18.675  43.097  49.976  1.00 21.81           C
ATOM   1650  H   PHE A 113      17.875  42.342  54.427  1.00 14.83           H
ATOM   1651  HA  PHE A 113      20.250  42.435  55.661  1.00 15.57           H
ATOM   1652  HB2 PHE A 113      21.367  43.036  53.708  1.00 24.10           H
ATOM   1653  HB3 PHE A 113      20.865  41.531  53.707  1.00 24.10           H
ATOM   1654  HD1 PHE A 113      19.099  40.866  52.224  1.00 24.40           H
ATOM   1655  HD2 PHE A 113      20.518  44.581  52.138  1.00 25.47           H
ATOM   1656  HE1 PHE A 113      18.077  41.204  50.215  1.00 28.18           H
ATOM   1657  HE2 PHE A 113      19.488  44.927  50.113  1.00 29.84           H
ATOM   1658  HZ  PHE A 113      18.261  43.230  49.154  1.00 26.17           H
s,  ATOM   1639  N   PHE A 113      18.514  41.994  54.886  1.00 12.36           N
ATOM   1640  CA  PHE A 113      19.737  42.742  54.898  1.00 12.97           C
ATOM   1641  C   PHE A 113      19.514  44.206  55.111  1.00 11.88           C
ATOM   1642  O   PHE A 113      18.442  44.758  54.823  1.00 13.75           O
ATOM   1643  CB  PHE A 113      20.587  42.460  53.684  1.00 20.08           C
ATOM   1644  CG  PHE A 113      19.893  42.692  52.399  1.00 17.15           C
ATOM   1645  CD1 PHE A 113      20.174  43.797  51.643  1.00 20.34           C
ATOM   1646  CD2 PHE A 113      18.888  41.845  51.991  1.00 21.22           C
ATOM   1647  CE1 PHE A 113      19.512  44.033  50.483  1.00 23.49           C
ATOM   1648  CE2 PHE A 113      18.224  42.071  50.816  1.00 24.87           C
ATOM   1649  CZ  PHE A 113      18.548  43.166  50.057  1.00 21.81           C
ATOM   1650  H   PHE A 113      17.875  42.342  54.427  1.00 14.83           H
ATOM   1651  HA  PHE A 113      20.250  42.435  55.661  1.00 15.57           H
ATOM   1652  HB2 PHE A 113      21.367  43.036  53.708  1.00 24.10           H
ATOM   1653  HB3 PHE A 113      20.865  41.531  53.707  1.00 24.10           H
ATOM   1654  HD1 PHE A 113      20.840  44.386  51.919  1.00 24.40           H
ATOM   1655  HD2 PHE A 113      18.681  41.096  52.501  1.00 25.47           H
ATOM   1656  HE1 PHE A 113      19.730  44.776  49.967  1.00 28.18           H
ATOM   1657  HE2 PHE A 113      17.560  41.484  50.533  1.00 29.84           H
ATOM   1658  HZ  PHE A 113      18.093  43.330  49.263  1.00 26.17           H
gš™™™™™É?t   epsgü©ñÒMbP?gþó4`�ôÜ?gñhãˆµøä>i   i   i   i   i   i   i   i   i	   i    iþÿÿÿiÿÿÿÿt   d_ming      ø?t   xray_structurest   f_obst   r_free_flagst   scattering_tablet
   n_gaussiant   bulk_solvent_and_scalingt   skip_twin_detections   name CZt   fmodelt	   selectioni   (#   t   iotbxt   pdbt	   hierarchyt   inputt   atomst   extract_xyzR   t   coord_stats_with_flipsR   t   rmsdt   AssertionErrort   max_devt   get_selection_gapt   score_rotamersR   t   boolt   sizet   Truet   xray_structure_simplet   abst   structure_factorst   f_calct#   set_observation_type_xray_amplitudet   generate_r_free_flagst   mmtbxt   utilst   fmodel_simplet   Falset   atom_selection_cacheR   t   countt   get_partial_omit_mapt
   sites_fract
   iselectiont   tricubic_interpolation(   t   pdb_1t   pdb_2t   hierarchy_1t   hierarchy_2t   pdb_atoms_1t   sites_1t   sites_2t   resultt
   n_outlierst   xrsR#   t   flagsR   t   selt   two_fofc_mapt   fofc_mapt   site(    (    sX   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/mmtbx/building/alternate_conformations/tst.pyt   exercise_utils
   sL    				936<9	
			c    	   	   C   sÅ  d d l  m }  t j j j d |  ƒ } | j } t j j ƒ  } t j	 d | d | d d d t
 ƒ  ƒ } | d	 k s t | ƒ ‚ | j ƒ  j ƒ  d
 } | j ƒ  d } | j ƒ  j ƒ  } x | j ƒ  D] } d | _ qÄ Wx | j ƒ  D] } d | _ qä Wd | j ƒ  _ d | _ | j | ƒ t j	 d | j ƒ  d | d d d t
 ƒ  ƒ } | d k sat | ƒ ‚ x$ | j ƒ  D] } | j d | _ qnWt j	 d | d | d t
 ƒ  ƒ } | d k sÁt | ƒ ‚ d  S(   Niÿÿÿÿ(   t   pdb_rawR   t   pdb_hierarchyt   paramst   model_error_mlg      à?t   logi   i    i   gš™™™™™©?gffffffî?t   At   Bi   i
   (   t$   mmtbx.regression.tst_build_alt_confsR@   R   R   R   R   R   t   rejoin_philt   extractt   rejoin_split_single_conformersR   R   t
   only_modelt   chainst   residue_groupst   only_atom_groupt   detached_copyR   t   occt   altloct   append_atom_groupt	   deep_copyt   b(	   R@   t   pdb_inR   RB   t
   n_modifiedt   chaint   rg6t   agt   atom(    (    sX   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/mmtbx/building/alternate_conformations/tst.pyt   exercise_rejoin^   sB    					t   __main__t   OK(   t
   __future__R    t   mmtbx.buildingR   t   mmtbx.utilsR&   t   iotbx.pdb.hierarchyR   t   scitbx.array_familyR   t   libtbx.test_utilsR   t   libtbx.utilsR   R?   R[   t   __name__(    (    (    sX   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/mmtbx/building/alternate_conformations/tst.pyt   <module>   s   	T	&