Main Page   Compound List   File List   Compound Members   File Members   Related Pages  

Fortran API to CSYM

File list


This library consists of a set of wrappers to the CSYM library giving the same API as the original symlib.f For details of the API, see the original documentation. This document covers some peculiarities of the C implementation.

Multiple Spacegroups

The set of Fortran calls which mimic the original symlib.f assume you are working within a single spacegroup. All calls access the same spacegroup data structure, in analogy with the COMMON blocks of symlib.f For cases where you wish to work with multiple spacegroups (e.g. in the program REINDEX, a different set of calls is provided (the names of which generally start with "CCP4SPG_F_"). These identify the spacegroup of interest via an index "sindx" (by analogy with the "mindx" of mtzlib).

Symmetry information from MTZ files

MTZ file headers contain 2 types of symmetry records:

Contains number of symmetry operators, number of primitive symmetry operators, lattice type, spacegroup number, spacegroup name and point group name.
A series of records holding the symmetry operators.
Note that the spacegroup name is likely to be ambiguous at best, with no indication of the particular setting used. The primary source of symmetry information is therefore taken to be the list of symmetry operators. Note also that the order of operators is important if an ISYM column is present.