Crystallographica version history

Version 1.60

Version 1.60 includes an interface to the Crystallographica Extension Pack, which contains some of the tools which will appear in the next generation of 32-bit Crystallographica programs. Crystallographica itself remains a 16-bit program and will continue to run under Windows 3.x as well as Windows 9x and NT. However, users with one of the 32-bit flavours of Windows can now install and use the Extension Pack containing the following tools (with more to follow!):

  • XRD File Reader: This component is shared with Crystallographica Search-Match and allows the import of x-ray profile data in various formats. The View / Load Plot... command when a Graph is active will now detect and plot many common file formats. There is also a new procedure described below which reads such data directly into interpreter arrays.
  • CIF Reader: The CIF Reader component is even more robust and forgiving than that included with version 1.53, and also offers the facility to select any one structure from a CIF containing multiple crystals. It is possible to revert to the old 16-bit reader by setting Cif32=0 in the [Module] section of cgraph.ini.

Note: The Extension Pack must be installed separately and is available only to users with Windows 9x or NT 4.0. If it is not installed then these aspects of Crystallographica function as in version 1.53.

New procedure

  • ReadFileData: This procedure allows data to be read from a file directly into interpreter arrays. Many common x-ray data file formats are recognised - for details consult the XRD File Reader installer.

Miscellaenous bugs

A small number of bugs have been fixed for this version. The most significant concerns the atom display colours used by CrystalPlot. In previous versions these were both stored and read with the green and blue components reversed. Now this bug has been fixed, which means that if you read with the new version a CIF created with the old version, the colours will appear incorrectly. A new script FixCols.x is provided to rectify this problem, and the upgrade includes corrected versions of all the distribution CIFs.

Version 1.60d

An oddity which left the initial default crystal in an inconsistent state if this crystal contained no atoms is corrected. The reflat.x script has been updated to use the new Get/SetRecipAxes procedures.

Version 1.60c

The CIF reader now uses the space group number to help in the recognition of the older notation for certain space groups. A newly-licensed demo version no longer prompts the user concerning the running of the demo script.

Version 1.60b

A bug in the CIF writer software, which prevented the correct storage of nuclear isotopes, has been eliminated.

Version 1.60a

The function AbsorptionFactor now correctly returns a value in cm-1 as stated in the documentation - previously the return value was in mm-1.


Version 1.53

Version 1.53 includes a number of 'under the surface' changes to the CIF reader. These are designed to make it more robust and also more forgiving of the various syntax errors which are common in CIFs export by certain programs.


Version 1.52

Version 1.52 has been released to correct some inconsistent use of terminology with regard to reciprocal space cells and axes. A few small bugs have been fixed en route.

Changes to procedures

GetRCell and SetRCell have been discontinued and replaced with GetRecipAxes and SetRecipAxes, These new procedures function in exactly the same way, namely they get or set the reciprocal axes a*, b*, c*, a*, b* and g* without regard to the centring of the direct space lattice. Unless the direct lattice is primitive a*, b*, c*, a*, b* and g* will not form the true reciprocal lattice.

The new procedure GetRecipCell does take the centring into account in order to return the true reciprocal lattice parameters, which will be integer multiples of a*, b* and c*.

Bug fixes

  • The missing function filename, documented in the manual but not present in the program, has been implemented.
  • A small bug in the procedure SetType has been fixed. In previous versions Crystallographica would ignore calls to SetType which changed only the nuclear isotope. This was also apparent in the Edit Atom dialog.

Other changes

  • The database of neutron scattering factors (bound coherent scattering lengths) has been updated. PLEASE NOTE THAT THE NEW VALUES ARE IN FM, AND ARE THUS A FACTOR TEN TIMES GREATER THAN THE OLD ONES.

Version 1.51

Version 1.51 has been released to coincide with the launch of Crystallographica Search-Match (CSM), and includes a number of new procedures and user interface items designed primarily for use with CSM. These items support three new attributes of the crystal: a comment string, a chemical formula string, and an integer Z holding the number of formula units per unit cell. These three attributes may be set and accessed using the new procedures described below, or else in the new, enhanced Crystal Information dialog.

The new Add To CSM User Database command on the File menu and its associated AddToCSM procedure allow the current structure to be added to CSM's User Database. See CSM's documentation for more details.

Also new for version 1.51 is the View button on the VR Crystal Options dialog, with associated procedure ViewVRCrystal. These allow a VRML file to be viewed from within the program, and work by invoking the default viewer for VRML files.

New procedures

AddToCSM Add the current structure to a CSM User Database.
Set / GetComments Allows a comment string to be accessed and modified.
Set / GetFormula Allows a string containing the chemical formula to be accessed and modified. This information is also now read from and stored in CIFs.
Set / GetZ Allows an integer containing Z, the number of formula units per unit cell, to be accessed and modified.
ViewVRCrystal Save a VRML file and view it using the default viewer.

All these changes are described in the on-line version of the Appendix.


Version 1.50

Version 1.50 includes a number of enhancements to the user interface. Each of the dialog boxes has been re-designed so that much more information is displayed. These changes are mostly self-evident and are listed below.

These improvements make available through the GUI crystallographic information which could previously only be retrieved using interpreter functions. This makes feasible a simple point-and-click version of the program: Crystallographica Lite.

Atom List Dialog It is now possible to list both the asymmetric unit and the complete unit cell. The number of atoms in each is displayed together with the density.
Bonds / Display Dialog Clicking on an atom generates a display of the bond lengths and angles associated with that atom.
Cell Parameters Dialog The cell volume and reciprocal cell dimensions are displayed.
Space Group Information on the crystal system, lattice centring and so forth is displayed.
Generators Dialog It is now possible to display either the generators, the complete list of general equivalent positions or the centring translations. The number of each is displayed.
Reflection List Dialog As well as allowing the parameters defining the reflection list to be altered, this dialog now displays a list of the reflections and associated properties. The list may be saved to disk, and new procedure SaveReflections is provided to mirror this operation.
Powder Dialog It is now possible to save a list of the reflections in the powder pattern as well as the calculated profile. A new procedure SavePowderReflections is provided to mirror this operation.

As well as SaveReflections and SavePowderReflections mentioned above a new pair of procedures Set/GetCrystalMaintain allow the user to suspend updates of graphics during a sequence of changes to the crystal; and the procedures AddPlots, ScalePlot, ShiftPlotX and ShiftPlotY provide for general manipulation of Graph plots (especially useful for the manipulation of powder patterns).

Another area which has been improved is the VRML export. Files now contain extra information so that passing the mouse over objects in the scene displays information in the browser's status area. For example, if the mouse passes over an atom, its co-ordinates are displayed. Likewise a bond will report its length, cell edges their lengths and so forth. Experiment!

Version 1.50a:

  • fixes a minor bug in EmptyCrystal;
  • eliminates a crash generated via the Bonds Dialog when no atoms are present.

Version 1.50b:

  • improves the handling of out of memory errors when calculating large powder patterns or reflection lists;
  • removes a bug connected with non-centrosymmetric Shelxl files containing no SYMM instruction;
  • removes a 'bug' apparent under NT 4.0 which prevented scripts from running using the "Run Focussed Editor" method (actually caused by undocumented changes to the OS).

Version 1.40

The main change is a further series of additions to the language:

A set of geometrical commands:
AngleDirections, AnglePlanes, Distance, FractionaltoOrthogonal, Modulus, OrthogonaltoFractional, RDistance and RModulus.

Additional symmetry-related commands:
GeneratorOperator, GeneratorPositionString, NGenerators, NCentringTranslations, WriteOperator and WriteSpaceGroupInfo.

Additional commands connected with the reflection list:
Bijvoet, GetEquivReflection, GetHKL, GetIncludeReflections, NReflections, SetIncludeReflections and WriteBijvoet.

New output commands:
WriteBijvoet, WriteOperator, WriteSpaceGroupInfo, WriteSpeciesInfo and WriteVRCrystal.

A new command to restore an empty crystal:
EmptyCrystal.

The reflection list has been improved so that it is possible to exclude forbidden and/or equivalent reflections using the SetIncludeReflections function. This change is also evident in the modified Reflection List dialog. An alternative to the the NextHKL method of looping the over the reflection list is supplied in the NReflections and GetHKL routines.


Version 1.31

Version 1.31 includes major improvements to the way in which bonds are drawn in CrystalPlot, as well as a number of more minor tweaks to other CrystalPlot and RelPlot features.

Version 1.31a allows execution with a read-only configuration file (suitable for network execution). A bug connected with off-origin inversion operators is fixed, and a problem reading old-style .xpl files eliminated.


Version 1.30

This html document added as an alternative to the readme and also provides a convenient mechanism for browsing the packaged scripts, cifs and vrml files.

A major change is enhancement of the symmetry handling via the addition of a number of new functions giving direct access to the symmetry operators. The new functions are:

NGeneralPositions, NCentringTranslations, GeneralPositionOperator, GeneralPositionString, CentringTranslationOperator, CentringTranslationString, StringtoOperator, OperatortoString, ApplyOperator, ValidOperator, EquivCoords, EquivOperator and EquivUaniso.

The bond calculation routines have also been extended with the addition of:

NBonds, BondAtom, BondCoords, BondLength and BondAngle.

Another change is to functions which set various properties of atoms. These have been extended so that if a atom type is supplied then the relevant change is applied to all atoms of that type in the asymmetric units. This change is also apparent in the Bonding and Display dialogs. The affected functions are:

SetAnomalous, SetBondRadius, SetBondType, SetDisplayColour, SetDisplayRadius, SetSFactor, SetSLength, SetOccupancy, SetUaniso and SetUiso.

Reflection lists are now sorted so that equivalent reflections appear next to each other.

All these changes are documented in a new help file, "Appendix", avaliable from the Help manual. This help file is also supplied as a MS-Word document that can be printed out and added to your Crystallographica manual.


Version 1.22

Version 1.22 now allows registration as Student user.


Version 1.21

The powder diffraction dialog has been enhanced to allow the graph title and plot label to be changed, and the pattern to be deleted.

The equivalent position parser has been enhanced to recognise the form "0.5+x, y, z" as well as "1/2+x, y, z" - useful for Shelxl users.


Version 1.20

A Reciprocal Lattice Plotting program 'RelPlot' has been added -it can be invoked via the Program menu, the new toolbar button or using AddRelPlot. RelPlot plots the lattice and reflection structure factors in reciprocal space. This package is documented in a new help file, avaliable from the Help manual. This help file is also supplied as a MS-Word document that can be printed out and added to your Crystallographica manual.

The Reflection List Dialog has also been added to allow the reflection list to be set up without using interpreter functions.

It is now possible to synchronise the rotations of two or more Crystal Plot or RelPlot windows using the Synchronise command, or equivalently the corresponding tool panel or menu items.

VR Crystal can now export translucent polyhedra.

A number of new CIFs and scripts are now included in the installation.


Version 1.10

The major change is the addition of the VR Crystal package, which allows the crystal structure to be exported as a VRML scene including polyhedra, anisotropic displacement ellipsoids and Miller planes. This package is documented in a new help file, avaliable from the Help manual. This help file is also supplied as a MS-Word document that can be printed out and added to your Crystallographica manual.

Powder simulation. The intensities are now subject to an additional scale factor of lambda**3/CellVolume**2. This allows direct comparison between powder patterns of equal volumes of different materials.


Version 1.0

Crystallographica version 1.0 was launched in January 1996.