About PyCifRWPyCIFRW provides support for reading and writing CIF (Crystallographic Information Format) files using Python, including validity testing against DDL dictionaries. It was developed at the Australian National Beamline Facility (ANBF), run by the Australian Synchrotron Research Program (ASRP), as part of a larger project to provide CIF input/output capabilities for data collection. It is currently (July 2006) under active development and testing.You can exercise the validity testing aspect of PyCIFRW online. Acknowledgements and CreditIn order to implement the CIF grammar specification, PyCifRW uses the Yapps2 parser generator developed by Amit Patel and generously released to the wider community. The remainder of PyCifRW was written by James Hester. DownloadingThe package is available as a .tar.gz file, which can be downloaded from here. File "INSTALLATION" contains installation instructions.An executable Windows installer providing a minimal installation (no documentation or demonstration programs) is available here ConformanceThe IUCr version 1.1 working specification was used as a reference. PyCifRW has been tested on the IUCr sample CIF trap files, and fails or successfully reads as it is supposed to for all 11 tests, except for test 5, which contains the no longer acceptable vertical tab and form feed characters. CIF output conforms to the standard, including line length restrictions. Supported PlatformsPyCIFRW is written entirely in Python. While this makes parsing of large CIF files rather slow, it will run wherever Python runs. It has been tested on Unix (Linux,Solaris) and Windows 95/98/2000 under Python2.3. CitationIf you have found PyCifRW useful and wish to include a citation in your paper, the canonical reference is: J. R. Hester (2006) "A validating CIF parser: PyCIFRW", J. Appl. Cryst. 39, 621---625 FilesPyCiFRW consists of the following files:
|