Identifying symmetry in a map with map_symmetry
Author(s)
- map_symmetry: Tom Terwilliger
Purpose
The routine map_symmetry will identify the symmetry in a map and create a
file with the symmetry operations.
Usage
How map_symmetry works:
Map-symmetry uses the density at a set of randomly-chosen points in a map
to identify the symmetry in a map from a set of pre-defined symmetry types that
include point-group symmetry as well as helical symmetry. For each possible
symmetry, the correlation of values at symmetry-related points is calculated.
The score for the symmetry type is the square root of the number of elements
in the symmetry multiplied by the map correlation for that symmetry.
Map-symmetry assumes that the principal axes of symmetry in a map are along
x, y, or z, and that helical symmetry is helical along z. The software
has a database of 45 common symmetry elements and point groups, along with
alternative settings of some of these. The user can specify a specific symmetry
type to examine (e.g., I for icosahedral or D7 for a 7-fold axis along z
perpendicular to a 2-fold axis along x or along y), or all elements in the
database can be examined.
For helical symmetry, a Fourier transform of the density is examined along the
c* axis to find periodicity along z likely to correspond to the helical
translation. These likely translations (and integer fractions of them) are
tested along with possible rotations to check for helical symmetry.
Examples
Standard run of map_symmetry:
Running map_symmetry is easy. From the command-line you can type:
phenix.map_symmetry emd_8750.map symmetry=D7
where emd_8750.map is a map (CCP4, mrc or other related format), and in
this case you are specifying that only D7 symmetry should be considered.
Possible Problems
Specific limitations and problems:
Map-symmetry assumes that the principal symmetry axes are along the x, y,
and z-axes of the map (or half-way between in some cases). If the symmetry
in your map is arbitrarily oriented then this procedure will not work. You
can try using phenix.find_ncs_from_density to find symmetry in such a case.
Helical symmetry is assumed to be along the z-axis.
Literature
Additional information
List of all available keywords
- job_title = None Job title in PHENIX GUI, not used on command line
- input_files
- map_file = None File with CCP4-style map.
- symmetry_file = None Optional symmetry file (.ncs_spec format or BIOMTR records) with reconstruction symmetry
- output_files
- symmetry_out = symmetry_from_map.ncs_spec Output file (.ncs_spec format) describing symmetry in the map
- crystal_info
- resolution = None High-resolution limit for main search. This can be lower resolution than the data. The search is quicker at lower resolution. .short_caption = High-resolution limit
- use_sg_symmetry = False If you set use_sg_symmetry=True then the symmetry of the space group will be used. For example in P1 a point at one end of the unit cell is next to a point on the other end. Normally for cryo-EM data this should be set to False and for crystal data it should be set to True.
- reconstruction_symmetry
- symmetry = ANY Symmetry used in reconstruction. For example D7, C3, C2 I (icosahedral),T (tetrahedral), or ANY (try everything and use the highest symmetry found). Not needed if symmetry is supplied.
- include_helical_symmetry = True You can include or exclude searches for helical symmetry
- symmetry_center = None Center (in A) for Symmetry operators (if ncs is found automatically). If set to None, first guess is the center of the cell and then if that fails, found automatically as the center of the density in the map.
- optimize_center = None Optimize position of Symmetry center. Default is False if symmetry_center is supplied or center of map is used and True if it is found automatically).
- helical_rot_deg = None helical rotation about z in degrees
- helical_trans_z_angstrom = None helical translation along z in Angstrom units
- max_helical_optimizations = 2 Number of optimizations of helical parameters when finding NCS
- max_helical_ops_to_check = 5 Number of helical operations in each direction to check when finding NCS
- max_helical_rotations_to_check = None Number of helical rotations to check when finding NCS
- two_fold_along_x = None Specifies if D or I two-fold is along x (True) or y (False). If None, both are tried.
- smallest_object = None Dimension of smallest object to consider when finding symmetry. Default is 5 * resolution
- score_basis = ncs_score cc *None Symmetry score basis. Normally ncs_score (sqrt(n)* cc) is used except for identification of helical symmetry
- scale_weight_fractional_translation = 1.05 Give slight increase in weighting in helical symmetry search to translations that are a fraction (1/2, 1/3) of the d-spacing of the peak of intensity in the fourier transform of the density.
- random_points = 100 Number of random points in map to examine in finding Symmetry
- identify_ncs_id = True If Symmetry is not point-group symmetry, try each possible operator when evaluating Symmetry and choose the one that results in the most uniform density at Symmetry-related points.
- min_ncs_cc = 0.75 Minimum Symmetry CC to keep operators when identifying automatically
- n_rescore = 5 Number of Symmetry operators to rescore
- op_max = 14 If ncs_type is ANY, try up to op_max-fold symmetries
- tol_r = 0.02 tolerance in rotations for point group or helical symmetry
- abs_tol_t = 2 tolerance in translations (A) for point group or helical symmetry
- max_helical_operators = None Maximum helical operators (if extending existing helical operators)
- rel_tol_t = .05 tolerance in translations (fractional) for point group or helical symmetry
- require_helical_or_point_group_symmetry = False normally helical or point-group symmetry (or none) is expected. However in some cases (helical + rotational symmetry for example) this is not needed and is not the case.
- control
- nproc = 1 Number of processors to use
- random_seed = 171731 Random seed
- quick = True Run quickly if possible
- verbose = False Verbose output
- guiGUI-specific parameter required for output directory