Skip to contents

Returns human-readable information on a specific input space group.

Usage

extract_symmetry_info(SG)

Arguments

SG

A character string. The extended Hermann-Mauguin symbol (e.g. 'P 1 1 21')

Value

infostring A named list with fields corresponding to those in the CCP4 symmetry library. The fields' name are:

  • NUMBER standard spacegroup number

  • BASISOP change of basis operator

  • CCP4 CCP4 spacegroup number e.g. 1003 (0 if not a CCP4 group)

  • HALL Hall symbol

  • xHM extended Hermann Mauguin symbol

  • OLD CCP4 spacegroup name (blank if not a CCP4 group)

  • LAUE Laue group symbol

  • PATT Patterson group symbol

  • PGRP Point group symbol

  • HKLASU reciprocal space asymmetric unit (with respect to standard setting)

  • MAPASU_CCP4 CCP4 real space asymmetric unit (with respect to standard setting. Negative ranges if not a CCP4 group)

  • MAPASU_ZERO origin based real space asymmetric unit (with respect to current setting)

  • MAPASU_NONZ non-origin based real space asymmetric uni (with respect to current setting)

  • CHESHIRE Cheshire cell (with respect to standard setting)

  • SYMOP list of primitive symmetry operators

  • CENOP list of centering operators

Details

Crystallographic symmetry is fundamental in crystallography. It affects the way atoms are arranged in a unit cell, the pattern of reflections in reciprocal space and many other common occurrences in crystallography. This function returns a named list with human-readable character strings which detail key symmetry information.

Examples

# This is the full information for space group number 19, P 21 21 21
SG <- translate_SG(19)
ltmp <- extract_symmetry_info(SG)
#> Warning: argument 'pattern' has length > 1 and only the first element will be used
ltmp
#> $NUMBER
#> [1] "number  19"
#> 
#> $BASISOP
#> [1] "basisop x,y,z"
#> 
#> $CCP4
#> [1] "symbol ccp4 19"
#> 
#> $HALL
#> [1] "symbol Hall ' P 2ac 2ab'"
#> 
#> $XHM
#> [1] "symbol xHM  'P 21 21 21'"
#> 
#> $OLD
#> [1] "symbol old  'P 21 21 21'"
#> 
#> $LAUE
#> [1] "symbol laue '-P 2 2' 'mmm'"
#> 
#> $PATT
#> [1] "symbol patt '-P 2 2' 'mmm'"
#> 
#> $PGRP
#> [1] "symbol pgrp ' P 2 2' '222'"
#> 
#> $HKLASU
#> [1] "hklasu ccp4 'h>=0 and k>=0 and l>=0'"
#> 
#> $MAPASU_CCP4
#> [1] "mapasu ccp4 0<=x<1; 0<=y<1; 0<=z<=1/4"
#> 
#> $MAPASU_ZERO
#> [1] "mapasu zero 0<=x<1; 0<=y<=1/4; 0<=z<1"
#> 
#> $MAPASU_NONZ
#> [1] "mapasu nonz 0<=x<1; 0<=y<=1/4; 0<=z<1"
#> 
#> $CHESHIRE
#> [1] "cheshire 0<=x<=1/2; 0<=y<=1/2; 0<=z<=1/2"
#> 
#> $SYMOP
#> [1] "symop x,y,z"           "symop -x+1/2,-y,z+1/2" "symop x+1/2,-y+1/2,-z"
#> [4] "symop -x,y+1/2,-z+1/2"
#> 
#> $CENOP
#> [1] "cenop x,y,z"
#>