ó
8™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 m Z	 d „  Z
 e d k rt e
 ƒ  d GHn  d	 S(
   iÿÿÿÿ(   t   division(   t   flex(   t   xray(   t   sgtbx(   t   random_structurec          C   sà  t  j t j d ƒ d d g d d d ƒ}  |  j t d ƒ j ƒ  } t j d | j	 ƒ  d | j
 ƒ  d	 | j
 ƒ  d
 | j ƒ  d d d d d d d d d d d d d d ƒ } | j d d ƒ | j d d ƒ | j d d ƒ | j d ƒ | j d ƒ | j d ƒ | j d ƒ | j d ƒ | j d  ƒ | j ƒ  } | j ƒ  } | j ƒ  } | j ƒ  } | j ƒ  } | j ƒ  } t j t t t t t t g ƒ }	 t j | j
 ƒ  j ƒ  d ƒ }
 | j |
 |	 ƒ } |
 } |
 } | j | | |	 ƒ } d } | j | | | | | |	 ƒ } | j ƒ  } | j ƒ  } | j ƒ  } | j ƒ  } | j ƒ  } | j ƒ  } | j d ƒ | j d! ƒ | j d ƒ | j d ƒ | j d ƒ | j d ƒ | j t j d d d g ƒ ƒ } | j ƒ  j ƒ  d k sÜt ‚ d S("   s6    This example illustrates the use of the f_model classt   P1t   elementst   Ci6  t   n_scatterersg      @t   hklt   f_atomst   f_maskt	   unit_cellt	   k_overallg      ð?t   u_stari    t   k_solt   u_solt   f_partt   k_partt   u_partg      @gš™™™™™á?g      I@gš™™™™™©?g      9@i   i{   i   i   N(   i    i    i    i    i    i    (   i    i    i    i    i    i    (   i    i    i    i    i    i    (   i   i   i   i   i   i   (    t   rst   xray_structureR   t   space_group_infot   structure_factorst   Falset   f_calcR   t   f_model_core_datat   indicest   dataR   t   Nonet   renew_overall_scale_parameterst#   renew_bulk_solvent_scale_parameterst(   renew_partial_structure_scale_parameterst   ksolt   usolt   kpartt   upartt   koverallt   ustarR   t   boolt   Truet   doublet   sizet   d_target_d_allt   selectt   intt   f_modelt   AssertionError(   R   t   sfst   f_model_structure_factorsR!   t   bsolR#   t   bpartR%   R&   t   gradient_flagst   dt_dabsfmodelt   dtdallt   dtdat   dtdbt   hkl_not	   dtdsinglet   tmpt   new_f_model_object(    (    sL   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/cctbx/examples/f_model_example.pyt   f_model_example   sv    		
!t   __main__t   OKN(   t
   __future__R    t   cctbx.array_familyR   t   cctbxR   R   t   cctbx.developmentR   R   R=   t   __name__(    (    (    sL   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/cctbx/examples/f_model_example.pyt   <module>   s   	q