Health warning
I'm making this code available in the hope of some useful feedback.
However, it is still under development, and probably won't work
for you.
Libraries
- core CCIF library
This is a set of low level C routines written by Peter Keller, which provide
a toolbox for mmCIF applications. The role of this library is to perform
the lexical and syntactical analysis of mmCIF files, and maintain the contents
of the file as a data structure that can be accessed easily by application
programs. It has, however, no knowledge of the meaning of the mmCIF data
items (the semantics).
- cciflib.f, cciflib.fh
This is to be the intermediate library between Peter's core CCIF library and
the CCP4 application programs. Its role is to interpret the mmCIF data items,
and to provide functionality for common crystallographic tasks. It is effectively
a replacement for rwbrook.f and will be compiled into libccp4.
Programs
These are CCP4 programs I have converted to use cciflib.f
This is mainly for the purposes of experimentation, and is not
necessarily how these programs will end up.
- act_cif.f
An example of reading and analysing an mmCIF file.
- vectors_cif.f
An example of writing a new mmCIF file.
- peakmax_cif.f
Another example of writing a new mmCIF file.
- baverage_cif.f
An example of reading an mmCIF file, and writing another file with the value
of some data items (namely the isotropic B factors) changed. In this case,
XYZOUT is copied from XYZIN, and then data items are updated where necessary.
- gensym_cif.f
An example of reading an mmCIF file, and writing a substantially different
file. Here, XYZOUT is written from scratch, albeit using information obtained
from XYZIN.
- cifutil.f
An approximate equivalent to pdbset (just started!)
Conversion utilities
- pdb2cif.f,
pdb2cif.fh
Utility for converting PDB files to CCIF files, and vice versa.
An additional file (logical name CIFEXTS) is created by CCIF -> PDB to
hold lost information, and can be used by PDB -> CCIF.
Back to mmCIF page...