<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hi,<br>
    <br>
    in making ccp4 formatted binary files readable by coot there are two
    <b>determine_gridding methods on the c++ side of cctbx ; </b><a class="moz-txt-link-freetext" href="http://cctbx.sourceforge.net/current/c_plus_plus/namespacecctbx_1_1maptbx.html">http://cctbx.sourceforge.net/current/c_plus_plus/namespacecctbx_1_1maptbx.html</a><br>
    1)<br>
    template&lt;typename IndexValueType&gt;af::tiny&lt; IndexValueType,
    3 &gt; &nbsp;&nbsp;&nbsp; determine_gridding (uctbx::unit_cell const
    &amp;unit_cell, double d_min, double resolution_factor, af::tiny&lt;
    IndexValueType, 3 &gt; const
    &amp;mandatory_factors=detail::one_one_one, IndexValueType
    max_prime=5, bool assert_shannon_sampling=true);<br>
    2)<br>
    template&lt;typename IndexValueType&gt;af::tiny&lt; IndexValueType,
    3 &gt; &nbsp;&nbsp;&nbsp; determine_gridding (uctbx::unit_cell const
    &amp;unit_cell, double d_min, double resolution_factor,
    sgtbx::search_symmetry_flags const &amp;symmetry_flags,
    sgtbx::space_group_type const &amp;space_group_type, af::tiny&lt;
    IndexValueType, 3 &gt; const
    &amp;mandatory_factors=detail::one_one_one, IndexValueType
    max_prime=5, bool assert_shannon_sampling=true);<br>
    <br>
    From the python side these get called within<br>
<a class="moz-txt-link-freetext" href="http://cctbx.sourceforge.net/current/python/cctbx.maptbx.html#crystal_gridding">http://cctbx.sourceforge.net/current/python/cctbx.maptbx.html#crystal_gridding</a><br>
    __init__(self, unit_cell, d_min=None, resolution_factor=None,
    step=None, symmetry_flags=None, space_group_info=None,
    mandatory_factors=None, max_prime=5, assert_shannon_sampling=True,
    pre_determined_n_real=None);<br>
    <br>
    In phenix code it appears that only resolution_factor is ever set
    and internally then only the first determine_gridding method ever
    gets called. For numerous space groups these grid dimensions aren't
    compatible with symmetry operations and if symmetry operations are
    added to the ccp4 binary file coot has issues with asu (asymmetric
    unit) fitting to the grid. <a class="moz-txt-link-freetext" href="http://www.ccp4.ac.uk/html/maplib.html">http://www.ccp4.ac.uk/html/maplib.html</a><br>
    If the symmetry operator equations are skipped then coot will read
    as if the map is P 1 and not know the space group and asu's.
    symmetry_flags would have to be set to something non-None to call
    the second method.<br>
    <br>
    And if the second determine_gridding method(which is spacegroup
    aware) would be used, the grid dimensions are compatible with
    symmetry operators and coot reads and works with the asu's (and my
    own custom code is also happy).<br>
    <br>
    For all the maps produced from phenix.refine runs I've examined they
    have a space group number between 1 and 230, no symmetry operators
    included and grid dimensions from the first determine_gridding
    method.<br>
    <br>
    Now there are a number of space groups which have different axes
    chosen.&nbsp; For example 155 can be R=Rhombohedral
    <a class="moz-txt-link-freetext" href="http://img.chem.ucl.ac.uk/sgp/large/155az1.htm">http://img.chem.ucl.ac.uk/sgp/large/155az1.htm</a> or H=Hexagonal
    <a class="moz-txt-link-freetext" href="http://img.chem.ucl.ac.uk/sgp/large/155bz1.htm">http://img.chem.ucl.ac.uk/sgp/large/155bz1.htm</a> axes.&nbsp; The symmetry
    operators identify which one or some systems prepend a number on the
    space group number such as 155 -&gt; 1155.&nbsp; But coot (0.7 or 0.8.1)
    doesn't respond to that; only to the symmetry operators I suppose
    because the symmetry operators are the most trustworthy.<br>
    <br>
    The functionality is already in cctbx. Is there a reason the second
    determine_gridding method(spacegroup aware) is not used by phenix? <br>
    <br>
    And a reason symmetry operator equations are not added to the output
    ccp4 binary files?<br>
    <br>
    How should a ccp4 binary know the R or H axes of the space group?
    (according to its format <a class="moz-txt-link-freetext" href="http://www.ccp4.ac.uk/html/maplib.html">http://www.ccp4.ac.uk/html/maplib.html</a>)<br>
    <br>
    -Roger<br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
  </body>
</html>