|
377. Programs for the Calculation of Normal Modes and
Structure Factors for Crystals and Molecules
by Flemming Y. Hansen, The Technical University of
Denmark, Lyngby, Denmark
The three programs FYCOOR, FYFRE and FYADJ are used for
normal mode calculations of a crystal or a molecule;
besides frequencies and normal modes, the structure
factor for neutron scattering of crystals may be
calculated and temperature effects may be included.
For practical reasons, the calculations have been
divided into three parts in such a way that the results
of FYCOOR are used as input for FYFRE, which again may
produce input data for FYADJ. The transmission of data
between the programs is done by writing on suitable
units, so there will be no manual work involved.
The FYCOOR Program: The purpose of the program is to
generate a complete set of coordinates and force
matrices to be used in a subsequent normal mode
calculation for a molecule or a crystal. The program
eliminates or reduces time-consuming and error-
producing complexities which have handicapped the
application of some computer programs for calculating
normal modes. Group theory is used in the program in
such a way that many (often most) of the coordinates
are generated from a minimum input of so-called basis-
set coordinates, which may be arbitrary.
All force-constant matrices are set up by the program
with very small "dummy" force constants which are
easily updated in a selective manner by the user to
give the desired potential. The program includes a
logic, which assures that force constants which are
interrelated by symmetry are given the same value.
This means that no matter the complexity of the basis
coordinates our procedure always generates a complete
set of coordinates and force matrices so degeneracies
in the normal mode calculation will be displayed
correctly and the dynamical matrix will always be
blocked correctly, if symmetry coordinates are used to
represent the normal modes.
The FYFRE Program: This program is used to calculate
the normal modes of a crystal or a molecule on the
basis of the complete set of coordinates (D-matrices)
and force matrices generated by FYCOOR. The program
may be run in three different modes:
1. Calculation of the normal modes of a crystal or a
molecule for a specific set of force constants.
2. Generation of an analytical expression for the
elements of the dynamical matrix in terms of the
various force constants. In this mode, one force
constant at a time is updated from the value zero (or
rather, its dummy value ~10-10) to one, while all
other force constants are practically zero. No
eigenvalues are calculated. The dynamical matrix is
scanned and elements about a certain input threshold
value, Alimit, are printed and written on unit 1 for
later use in the force constant adjuster program
FYADJ. The contribution to the dynamical matrix is
then found by multiplying the non-zero elements with
the appropriate force constants; and in this way one
may obtain an analytic expression of the various
elements in terms of the force constant.
3. Calculation of the normal modes and dynamical
structure factors for a given set of force constants
and for a given wave vector. The dynamical structure
factors are calculated both for phonon annihilation
and creation processes. The polarization factors for
each atom in the origin cell are also calculated.
Temperature effects on the structure factors through
the Debye-Waller factor may be taken into account;
and for a given neutron incident wave vector
|O(k,')o|, the partial differential cross sections
for neutron scattering are also calculated at the
given temperature.
The FYADJ Program: This program may be used to find
the values of a given set of force constants which give
an optimal fit to a set of frequencies. The
computations are based on the results of calculations
with FYFRE in mode 2. Thus, it is assumed that for a
suitableset ofwave vectors the
analytic form of the dynamical matrix has been
generated for all relevant force constants and that
they are stored on unit 1 in the format described in
the program documentation. The order of the data on
unit 1 is immaterial because they are sorted out in
this program.
FORTRAN IV (IBM)
Lines of Code: 4223
Recommended Citation: F. Y. Hansen, QCPE 11, 377
(1979).
|