**Faculty of Physics and Nuclear Techniques, AGH University of Science
and Technology, al.Mickiewicza 30, 30-059 Krakow, Poland
**

- You can download the MODY for Windows program.
- Read more about the program after downloading it's help file
- Study the Examples
- Here's also the MODY program History

More detailed description of the program algorithms and functions can be found in our publication, which should be also referenced, when any results produced using our program are presented:

W.Sikora, F.Białas and L.Pytlik - MODY: a program for calculation of symmetry-adapted
functions for ordered structures in crystals,

Journal of Applied Crystallography, **37**(2004), 1015-1019

In the experimental investigations of crystalline solid state compounds many various physical quantities are encountered. The basic nature of the given physical quantity determines its mathematical description. There are things that are definitely described by scalars, namely electron charge density, probability of site occupation and others. For such things one number (scalar) is enough to specify all what is needed for a given crystalline site. There are other quantities which definitely require a vector description. For that class of quantities there is an additional division with respect to the behavior under space inversion and time reversal. The first subclass, in which the vector changes its sign after space inversion is called the polar vectors class and it includes quantities like atom displacement, dipolar moment etc. The second subclass comprises quantities for which the vector does not change its sign under space inversion transformation and that subclass is called the axial vectors class. It includes quantities like angular momentum, magnetic moment, spin etc. There is also a class which requires a tensor description i.e. the whole tensor (matrix) has to be defined to specify the quantity completely for a given crystal site. That class includes e.g. moments of inertia, quadrupolar moments, local susceptibilities and others.

Whatever is the quantity being studied in the experiment the simplest possible description usually consist of specification of all individual values of a given quantity on all the crystal sites in every crystal unit cell. The basic symmetry which usually leads to a more convenient description is the translation symmetry of the crystal. By making use of that symmetry physicist are able to express the values in each cell by the values on sites of the "basic" (zero) crystal cell and the wave vector describing the particular type of ordering, observed for a given quantity in the experiment. However the full symmetry of the crystal (described by its space group) contains also information about the local point symmetry of crystal sites (symmetry axes, reflection planes, screw axes etc), which is exactly the symmetry used by chemists in the description of molecules. Therefore the optimal symmetry description of the local crystal quantities should employ the full symmetry of the crystal, i.e. the symmetry determined by the elements contained in its space group. In order to make use of that symmetry one has to know all the transformation rules of a given quantity under the action of all symmetry operations allowed for a given space group.

Once the rules are known the quantity can be described by special form of functions called symmetry adapted functions. Because their properties origin from the transformation rules in a given space group no wonder they are closely related to the so called irreducible representations (IR's) of the space group i.e. set of matrices which strictly "mimic" the transformation rules under the action of symmetry operations. These symmetry adapted functions mentioned above are usually called basis functions (basis vectors - BV's) attributed to a given IR, because under the action of symmetry operations they transform exactly according the given irreducible representation. The basic advantage of using the symmetry adapted functions is a significant reduction of the number of parameters required for a full specification of a given quantity in all the crystal sites. The simplest analogy seems to be the use of vibrational eigenmodes, when it is enough to specify the amplitude of the given eigenmode instead of individual atomic displacements.

In the construction process all the details required are the of space group symmetry of the crystal itself and additionally description of the so called wave vector group , responsible for the symmetry related to the wave vector of the ordering observed. In particular the set of wave vectors equivalent in the reciprocal space of the crystal, called the wave vector star, and one selected vector called the arm of the wave vector star are required. The wave vector group decides, which irreducible representation are present in the decomposition of the characteristics full representation (e.g. mechanical or magnetic representation) for a given crystal symmetry

The detailed description of projection operators and the mathematical procedure are described in:

- Cotton F.A.
*Chemical application of Group Theory*Second Edition Wiley-Interscience a Division of John Wiley and Sons, Inc. New York London Sydney Toronto 1963, 1971 - Birman J. L.
*Theory of Crystal Space Groups and Infra-Red and Raman Lattice Processes of Insulating Crystals*The City College of the University of New York, Springer-Verlag, Berlin Heidelberg New York, 1974 - Izyumov Yu. A. and Syromyatnikov V. N.
*Phase Transitions and Crystal Symmetry*, 1990 Dordrecht:Kluwer Academic Publishers

The program calculates the basis functions for sets of individual atomic sites in the cry stall cell. Such a set, consisting of a selected site and all the symmetry equivalents sites, is called an orbit in a given group. The orbit is specified by selection of the first atom in the orbit. It is worth mentioning that sometimes one orbit (set of symmetry equivalent sites) in the space group of the crystal splits into two (or more ) orbits for a given wave vector group. Therefor in order to obtain a complete symmetry adapted description of the crystal with a given type of ordering the user has to calculate the basis functions for all the first atoms choices, required for covering of all the sites in the unit cell, for which the ordering is observed (e.g. for magnetic ordering for all the sited on which magnetic moments is encountered)

As described above the information required for basis functions calculation first of all includes the details of the space group. Therefore at the very beginning the user is asked to input the following data regarding the space group:

- space group number (according to Int.Crystalographic Tables)
- alternatively the user can specify the crystallographic system and the Herman-Mauguin symbol of the group
- type of reference system (International or Kovalev)

- the output accuracy (number of decimal places required)
- position of the first atom
- the wave vector or the ordering (taken from the experiment) with detailed values of its components
- arm of the wave vector star
- type of the physical quantity (scalar, vector, tensor)
- translation of the cell with respect to the "zero cell"
- the number the orbit for cases when one orbit in the space group splits into more orbits in the wave vector group

The user is also allowed to select (one or more) irreducible representations, for which the basis vector should be calculated. Once the inputs are specified the program is able to calculate all the required outputs. The calculations can be repeated as many times as possible after changing some of the input parameters e.g. the first atom, irreducible representations, orbits etc

The outputs produced by the program include:

- Symmetry elements - all the symmetry operations in the space group
- Atoms - positions of all atoms in a given orbit in the unit cell
- Representations - all the small irreducible representation for a given space group and a given wave vector
- Transformation matrices - produced only for 3x3 tensor quantities
- The basis functions (basis vectors) in both Kovalev and International reference systems

The main output files (Modes) lists the complex components of the calculated
basis functions for all the crystal sites contained in a given orbit of
equivalent sites in the unit cell. The values are listed for all the irreducible
representations selected by the user. In the header of every section information
about dimension and multiplicity of the respective representation is shown. The
results are presented for one or two wave vectors (the latter case if
simultaneous calculation for **k** and **-k** has been requested).

The calculated basis vectors can be directly applied to construction of
symmetry adapted ordering patterns (ordering modes), which can be very useful
for all experimentalists, who want to interpret the experimental results by
selecting (fitting) a theoretical ordering model which fits best to the measured
data. The only problem encountered is the fact the ordering models describe
actual physical quantities (magnetic moments, atomic displacements etc.) and
**have** to be real not complex. The problem is solved by taking a linear
combination of the calculated basis vectors over the all function belonging to
the given irreducible representation, and over **k** and **-k** if
required (e.g. modulated structures). It can be shown that by appropriate
selection of the coefficients of the linear combination the results can be made
real, and still some free parameters are left. Therefore the field of potential
applications of the symmetry adapted models (thus the calculated basis vectors)
seems quite vast and offering good prospects for futures applications (e.g.
tensor type orderings).

The basis vectors calculated in the MODY program can be used for construction of model structures, which are very helpful as starting configurations in the diffraction profile refinement. The model structures are constructed as linear combinations of the calculated basis vectors. The condition that has to be imposed on the result is the following: all components of the resulting vector have to be purely real (no imaginary part can be present). The condition effectively acts as a set of relations between the coefficients of the linear combination, which guarantee the fulfillment of the reality condition. A program processing the respective set of linear equations is under development, but the whole process can be carried out manually. Three explicit examples of such calculations are given below.

- Space group IT 135 - wave vector (0,0,0)
- Space group IT 62 - wave vector (0,0,1/2)
- Space group IT 139 - wave vector (Qx,Qx,0)

- Before Mody for
Windows: The original DOS version of the Mody program has been
designed and coded by W.Sikora and P.Czapnik in Borland Pascal ver.7. The
program worked completely in the text mode, with the Menu and Input/Output
Boxes implemented in Object Vision(TM). The last version compiled in that
environement was the MODY 5.02 version.

- Ver. 1.00 (Mar. 2003) Completely new remake of
the MODY program, with a new MS Windows Graphical User Interface, coded in C++
Builder. The authors and the essential features of the present version can be
found in the description above. The pre-release and the first version of the
Mody for Windows program used externally loaded
RTL's (Run Time Libraries)

- Ver. 1.01 (Sept. 2003) Final build of the first
version, with the RTL's compiled into the "mody_win.exe" file. Most of the
"general" debugging done.

- Ver. 1.10 (Oct. 2003) Essential error,
affecting the centered space groups, has been found and corrected. The
classification of modes (number and type of independent modes) for the
centered groups had errors for some space groups, because of non-unique
transformation of some atoms during the returning transformation from
primitive to centered lattices.

- Ver. 1.11 (Nov. 10-th, 2003) Additional corrections to
the problem dealed with in the 1.10 version, as there were still problems for
the 227 (Fd-3m) group.
- Ver. 1.20 (Nov. 25-th, 2003) Completely new build of
the program. There are no corrections to the main numerical algorithm. All the changes
can be divided into three groups:

- Reorganization of the program files (the catalog file and help file have been compiled into the main executable file, so there is only one program file now)
- Addition of new features in the user interface. The most essential new feature is the
Show structure button, which is used for visual control of the analyzed structure (Summary => Show structure) . After pressing the button a new window is open,
in which the crystal can be visualized, with different orbits shown in different colors. At the moment there
are two configuration tabs:

- Elementary cell - for setting the cell parameters, and switching between one crystal cell and crystal block (cell repetition) views
- View - for modification of the visualisation details e.g. camera position, projection type, setting specific viewing directions, scaling of atom sizes etc.

- Addition of a binary output resume, written to a selectable disk file, intended for further processing by other applications (Summary => Binary Output)

- Ver. 1.21 (Jan, 2004) - for internal use only.
- Ver. 1.22 (Feb 25-th, 2004) - further corrections in the
Show structure module:
- improved presentation for many atom cases
- removed orbit visibility problems for "repeat cells" option

- Ver. 1.23 (Mar 20-th, 2004) - addition of the so called
Herring coefficient, used for classification of complex representations in a given space group
- Ver. 1.24 (Apr 7-th, 2004) - new options have been added:
- In the Show structure command atoms of the structure may be colored by their numbers, thus improving readability of the structure presentation
- In Show structure => Other tab there is now a possibility to export the whole structure to the PovRay format, which may be used for creation of more advanced 3d structure presentations. At the moment the option is still at the test phase, therefore some errors may occur in the output PovRay file.

- Ver. 1.25 (July 30-th, 2004) - further bug corrections:
Two algorithm corrections:

- in calculation of the Herring coefficient for the cases when
**-k**wave vector does not belong to the**k**wave vector star - in calculation IR occurrence for arms of the wave vector star different from
**k**_{1}

- catalog data has been corrected (rep.190 accoording to Kovalev representation tables)
- table dimenions have been increased in order to avoid the "Table size exceeded" errors for some high symmetry groups with high multiplicity positions

- in calculation of the Herring coefficient for the cases when
- Ver. 1.26 (Sept. 10-th, 2004) - one more bug correction.
The basis vector calculations have been incorrect for a special case when coincidence of the following conditions took place:

- results were calculated simulateneously for
**k**and**-k** - the "lattice translation" vector was non-zero, i.e. the results were calculated for the unit cell different from the "zero-cell"

- results were calculated simulateneously for
- Ver. 1.27 (Oct. 30-th, 2004) - some more error corrections.
Accuracy control has been introduced near special points in the k-vector space. If the combination of the selected k-vector version and the selected parameter values leads to a k-vector which is located in the near vicinity (distance less than 0.001) of a special (high-symmetry) point the input procedure suggests a choice of another k-vector version, which leads to better accuracy and more adequate symmetry description

Some errors has been corrected which affected the display of input data, but had no influence on the calculation process and the final results:

- errors (wrong signs) in the display of k-vectors in the k-vector selection field for monoclinic and some orthorhombic groups (IT 51,52,54,57,60,62,63,64)
- errors in displayed lattice types (P instead of F) for some space groups: IT 203,210,216.
- errors in the display of k-vectors for IT and Kovalev cetered systems (wrong descriptions in the symbolic versions) and missing k-vector versions in some of the F-type cubic space groups: IT 196,202,203,209,210,216.

- Ver. 1.28 (Dec. 15-th, 2004) - accuracy control for atomic coordinates.
Special accuracy control has been introduced with regard to special atomic positions. The user provided values of atomic coordinates are treated as special if they coincide with one of the special values (n/24) up to the third decimal place. If this is the case an exact 8-digit value is assumed, the other values are rounded to the third decimal place. The internal comparison of atomic coordinates is carried out with 4 digit accuracy, in order to avoid the effects of rounding errors.

- Ver. 1.29 (Sept. 25-th, 2006) - two important groups of improvements have
been introduced in this version: one is a complete redesign of the calculations for centered monoclinic groups
and the other is related to further developement of the graphic procedures for presentation of the calculations
results.
For the groups of the monoclinic system, exhibiting centered lattices (IT 5,8,9,12,15) the calculation procedure has been redesigned and the calculation results are now presented in coordinate systems compatible with the IT(1983) conventions (eg. unique axis c, cell choice 2 or

**"B 112/n"**for the IT 15 group). In the older versions the results have been presented in consistency with the IT (1965) ( i.e.**"B 112/b"**for the IT 15 group).Further developement of the graphic possibilities inludes:

- In the new window shown after clicking the Summary=>Show Structure menu item another tool has been added (in the Other Tab), which allows calculation of the intersite distances for selected atoms (using the information specified in the Elementary Cell Tab).
- In the Select Wave Vector form the fields used for
inputting the
**x**and**y**values are visible only when they are effectively used in the structure specification

- Ver. 1.30a (March 15-th, 2007) - This version includes two corrections related
to the changes introduced in versions 1.27 and later, concerning the centered monoclinic groups, and one error correction in the results calculated for unit cells translated from the origin.
- Transformations of the arms of k-vector stars from the primitive to centred Kovalev and IT systems have been corrected for the centred monoclinic groups (IT 5,8,9,12,15)
- The errors in the display of k-vectors in the k-vector selection field for primitive monoclinic groups (wrong signs), which have been corrected first in the Ver. 1.27 and then returned in the Vers. 1.28 and 1.29, have been finally corrected for good.
- Errors in calculations of modes for translated cells (shifted from the origin) have been eliminated for the groups, where the Kovalev and IT settings differ by some rotation. The respective transformation from Kovalev to IT, required for the "Lattice Translation" option, chosen by the user in the "Select Mode Type" window, has been missing in previous versions.

or read more about the program by downloading it's help file HERE