Subject: Summary: Anharmonic Vibrations.

From: Artem Masunov <[email-masked]>
Date: Tue, 5 Mar 1996 15:10:29 -0500 (EST)

Dear Netters, 
 Thank you all who replied. 
 I was pleasently surprized by many responces to my question. Here they
are. I edited them a bit to make the text more readable and added some
relevant information. 
____________________Original Question________________________
        I am looking for software to solve (multidimensional) vibrational
Schroedinger equation. Gaussian94 apply harmonic model and just warns you
it is incorrect for soft modes, but what is correct? I can calculate
accurate PES, but how to get frequencies and zero-point vibrational levels
for these selected vibrations (in my case they have double-well shape)?
        Another problem - how to get vibrational modes expressed in
internal (not cartesian) coordinates?
______________________Abstract____________________________
  Besides direct solution of the Schroedinger equation, it is possible to 
"correct" experimental frequencies for anharmonicity or use isotopic 
substitution.
 The molecular vibrations software could be devided into several categories:
 1. Normal coordinate analizes of experimental spectra: 
SprioVib, Prometheus, BGF/NCA, ASYM20, Fitvib, MolVib, Gamma, 
Macrosearch, Specedit, SPSIM, Morass; 
 2. Normal modes (incl. normal modes in internal coordinates) and spectra 
from theoretical calculations (using Hessian from DGauss, Gaussian, etc.):
Vibra, Noko, Cospeco, Gar2ped;
 3. Visualization of normal modes from theoretical calculations:
Molden, Moviemol, XMol, KGNGraph(MOTECC91) 
 4. Anharmonic correction factors from ab initio PPE: Spectro, SurVibTM;
 5. Solution of the vibrational Schroedinger equation (one or 
mutidimensional) Level(=DVibro), QMC, Nivelon.
_________________________ URL Addresses ____________________________
 SPECTRO
http://gmos.ch.cam.ac.uk/spectro.html
 PROMETHEUS
http://www.ruhr-uni-bochum.de/www-public/goetzhbv/prom.html
 SPIROVIB
http://spiro.princeton.edu/spirolabs/svib.html
 SURVIBTM
http://www.cs.qub.ac.uk/cpc/summaries/ABDZ
and other vibrational programs from CPC (mostly, for triatomics)
http://www.cs.qub.ac.uk/cpc/mol.html#molvib

From: Tuomas J Lukka <[email-masked]>
 
 I have done some research on rovibrational properties of small (XY_2 and
XY_3) molecules and have some software. 
 16 degrees of freedom is a LOT when talking about anharmonic molecular
vibrations. I don't think that there's any software available - most work
has so far been done on a per-molecule basis, because simplifications and
models have to be generated. 

From: Martin Jursch <[email-masked]>

 The force constances of an ab initio calculation are related to
carthesian coordinates and not to internal coordinates as in Wilsons
theory. Beside that IR-calculation in molecular modeling are a sideeffect
of geometrie optimization and therefore not made to calculate good
wavenumbers and meaningful force constants. 
 Normal modes are given in displacements of carthesian coordinates. I have
never seen normal modes given in internal coordinates.
 All models for NCA using classic force fields are harmonic but the
experimental wave numbers can be "corrected" to harmonic conditions.
PROMETHEUS offers the posibility to use "correction factors" for wave
numbers beeing strongly anharmonic.
 For installation download either prom.zip or disc1.zip / disc2.zip from
our WWW-page <http://www.ruhr-uni-bochum.de/www-public/goetzhbv/prom.htm>
and unpack them in a temporary directory. Then run nkasetup.exe for
installation.

From: Dr. Philippe Youkharibache <[email-masked]>

If you already have code that calculates normal modes in cartesian
 X = Lx Q
and to determine the "B matrix"
 R = B X ...
(a program that does the former does the latter if the force constants 
are expresse d in internal space) then the Lr matrix you are looking for is
 Lr = B * Lx
where R = int coords
      X  cartesian coords
      Q  normal coords
this is much simpler. programs at QCPE exist for these things.
see the book of Wilson on that topic

From: MR M Govender <[email-masked]>

There is a solution to your problem, i.e you have to use isotopic
substitution, in order to predict the anharmonic vibrations. This is
however a bit difficult if you are going to go via intensities. Vibra can
handle such calcs:))
 The program Vibra (by Dr Steele, for a full normal mode treatment and
ped, and dipole moment derivat. to predict the IR intensities after
correcting for rotation etc..), uses the cartesian force field from
gaussian...I have never tried using the program, with input containing
imaginary freq... But however the soft modes are well predicted by the
program:)... The address of Dr STeele is [email-masked].
 We also have ASYM20, by Ian Mills , obtained from QCPE. I also have
SPectro, author Handy, and Willets, and lastly there is a program
obtainable via ftp iqm.unicamp.br, in the chem or pub dir, which is called
BGF and NCA, similar to ASyM20. 

From: Derek Steele <[email-masked]>

	I am not clear as to what it is that you need. My program
<VIBRA90> is very comprehensive for harmonic vibrational problems. Among
the many things it will do is to take the cartesian force field (in atomic
units) and the atomic coordinates and recompute the vibrational
frequencies. However this is done in internal valence coordinates which
must be defined (stretches, torsions, angle bends etc.). The resulting
frequencies should be exactly equal to the values from Gaussian. The
potential energy distribution is given; It is possible to scale different
types of internal coordinates separately; Various intensity models for
both i.r. and Raman bands can be tested and various parameter modelling,
such as valence force fields , can be optimised. I will send by e-mail a
document on the programme. The programme is in fortran. If it is of
interest I will send the listing, again via e-mail. Should you find that
you wish to continue using it then I request a nominal payment of $100 to
help maintain the program.
	Reverting to your problem; Clearly it is not possible for any 
classical program to improve the ab initio, except by scaling. It follows
that anything you do has to begin with the ab initio force field. If you
get a negative frequency with the Gaussian , then you will with the 
classical programs. Of course you can derive (from my program for instance)
a symmetrised valence force field and modify the quadratic term for the
torsion to generate a suitable positive frequency to match that derived
by your proposed PES. A comparison of your potential energy barrier
with the ZPE is of course trivial, and the low torsional frequencies are
not going to contribute significantly.

From:  Thomas Nowak <[email-masked]>

 If you have the B matrix which transform the cartesian force constant
matrix to the internal force constant matrix you can build the G matrix by
G=B M**-1 B#. Where B# is the transpose of the B matrix and M**-1 is the
inverse of the M matrix. M is a diagonal matrix of tripels of the mass.
The product FG is a nonsymmetric matrix. The simplest way to get the
eigenvalue and eigenvectors is to bring the matrix to a hessenberg matrix
then you can get the eigenvalue and eigenvectors by the qr methode. 
 I wrote a FORTRAN program which can build the internal force constants
matrix from the cartesian force constant matrix. Futhermore it will
calculate the G matrix and frequences. There is also a procedure which
bild the B matrix.
 My program <NOKO> can handle your problem. It was designed to work with
DGAUSS, therefore it needs the cartesian Hessian in a sepearate file and
in an other file the definition of your internal coordinates. The programm
used the GF-methode from Wilson and is an FORTRAN written program. It is
tesed on ibm and SGI workstation but should be run also on other
platforms.  Most parts of the program are written in German. So if you
have problems with the data, let me know and I will make an english
version.
 If you are loocking for some literature for this topic: 
 Califano Vibrational States, JOHN WILLEY & SONS 1976
 T.Miyazawa J. Chem. Phys. 1958 29 P.246
 R.J.Malriot J. Chem. Phys. 1955 23 P.30
 Prof. Diem at CUNY, Hunter College has a program. The reference is J.
Chem. Educ. 1991, vol. 68, p.35-39. 
 Hedberg and Mills have a program called ASYM20, which is available from
QCPE. The most recent version is ASYM40. The reference is J. Mol. 
Spectroscopy, 1993, vol. 160, p.117-142. 
 Prof. Thomas Bally of the University of Fribourg, Switzerland, has a very
nice program which is able to extract force constants from ab initio
calculations. The program is going to be distributed by Gaussian. I do not
know the date.
 Vijay, A. and Sathyanarayana, D. N. J. Mol. Struct. 1994, 328, 269-276.
 Durig et al. J. Mol. Struct. 1994, 327, 55-69.

From: "Robert J. Le Roy" <[email-masked]>

 The program I believe you are referring to is the one I call LEVEL. For
any radial or effective one-dimensional potential (including
double/multiple minimum cases) it can calculate bound state levels, and if
appropriate, automatically add a centrifugal potential to account for the
effect of rotation.  The potential may be in the form of an array of
points, to be interpolated over in a manner specified by the user in the
input data file, or one of a range of typical diatomic analytic finctions.
However, a user can readily replace the internal potential generating
routine with their own function, if so desired.
 If this code seems useful to you, let me know and I'll e-mail you the
source and post you the user's manual.	

From: Alfonso Nino <[email-masked]>, <[email-masked]>

 The program used for the anharmonic treatment of acetaldehyde is
available from QCPE. The program is designed as a general tool for an
arbitrary number of vibrations. Thus, I think you can use it for your
problem. My only worry is that at present the program uses a
Givens-Houselholder routine for diagonalizing the hamiltonian. The routine
has shown to work well with matrix sizes of several thousands (what we
found with 3 vibrations). In your case, 4 vibrations, the hamiltonian size
can be very large and may be the Givens-Houselholder is not the ideal
routine. 
 In its present implementation the program can use arbitrary potential
functions expressed as Fourier series and Taylor expansions on the
vibrational coordinates. Even gaussian perturbations can be introduced in
the program. Thus, inversion (double-well potentials) can be introduced as
  a) Polynomial forms: 
          something like (a*X^4-b*X^2)
  b) Gaussian perturbed potentials:
          something like (a*X^2+b*exp[-c*X^2])
 We have sent you two references describing the capabilities of the program: 
  a) C. Munoz-Caro & A. Nino. Computers. Chem, 18(4), 413-417 (1994)
  b) A. Nino & C. Munoz-Caro. Computers. Chem, 19(4), 371-378 (1995)
 The first one describes the general features of the first implementation.
The second one describes the use of hybrid free rotor+ harmonic oscillator
basis functions. In addition, this second paper analyzes the ability of
different polynomial and gaussian perturbed functions to describe
double-well potentials. In particular, the inversion of ammonia is used as
a test case. 
 The program is available as:
         NIVELON. QCPE PROGRAM #665 (workstation version)
         NIVELON. QCMP 142 (PC version)

From: Brian Hammond <[email-masked]>

 Bill Lester's group at Berkeley has a QMC program that will give a number
of vibrational states to very high accuracy. The person to contact is Will
Brown at UC Berkeley, [email-masked]

From: "Eric R. Bittner" <[email-masked]>

 Your problem is a matter of how large of a system are you talking about
and how accurate you want the vibrational energy levels. If you want very
high accuracy, you're limited to (at most) a few internal degrees of
freedom + rotation.  John Zhang (at NYU) and John Light (at U. Chicago)
are the world experts in this domain. As far as I know (being one of
Light's former students), neither group has made their codes avalable to
the public, but all the details are in the literature. This also means
you're going to have to do a lot of work to really nail down the potential
energy surface for a large number of accessible classical configurations
and then fit to some functional form. 
 If the dimensionality of the problem is relatively small (2-3 degree of
vibrational freedom) then I'd recommend using DVR methods (ala Light). For
big molecules, ala proteins,there was a paper in Science a few months ago
by Roitberg, Gerber, Elber, and Ratner (Science 268, 1319 (1995)) where
they computed the vibrational spectra of BPTI using a SCF treatment of the
vibrational modes.  You may want to check out their results and
methodology. 
 The matrix which diagonalizes the Hessian (2nd deriv. of potential)
matrix is the transformation between the cartesian (lab) frame and the
internal normal vibrational modes.  These are OK for the normal modes, but
are not so hot for the really floppy modes. 

From: William Mccarthy <[email-masked]>

 The short answer to the question of "how to get frequencies ... for these
selected vibrations" is: it takes a lot of work.  Here are the steps: 1)
get an analytical form for your PES and for the dependence of mass on your
chosen internal coordinates. 2) expand your nuclear wavefunction into a
suitable basis. Now your 90% of the way there. There is a freeware program
out there called dvibro. I haven't used it though.  (I wrote my own, and
feel more comfortable with it since it allows me complete control over the
subroutines that determine contributions to the Hamiltonian and Overlap
matrices.) 
 If you want to get the secular equation in internal coordinates, check
out J Chem Phys 103(2)(1995) 656-662. 
 With regard to getting the Hessian in internal coordinates, then getting
its eigenvalues and eigenvectors, you could just read the Hessian in
internal coords from the g94 output and diagonalize it. Otherwise, you'r
stuck with determining the B matrix and the "L" matrix which diagonalizes
the Hessian in cartesian coords.  Several people have offered their
programs over CCL which will probable do what you want in this regard, but
it isn't hard to code it yourself (see Califano's "Vibrational States",
pages 81-88)

From: "A. Willetts" <[email-masked]>

	In response to your request for some information about the
SPECTRO program, I have included below a short description of some of
the major features.
     SPECTRO v3.0 is a modular FORTRAN77 computer program which has been
developed at the University of Cambridge. It now consists of approximately
48000 lines of code. As it was originally developed to verify the accuracy
of ab initio calculated potentials (and dipole fields), it is typically
used with the output of electronic structure theory codes such as CADPAC.
However, it is flexible enough to accept, for example, an experimentally 
derived internal coordinate potential. 
     The program itself uses the formulae derived from perturbation theory 
to calculate a wide variety of spectroscopic properties. For example,
the following list includes a selection of these properties:

Equilibrium and vibrationally excited rotational constants;
Quartic and sextic centrifugal distortion constants;
Harmonic and fundamental frequencies;
Anharmonic constants;
Fermi and coriolis resonance;
Absolute intensities of fundamentals and first overtones and 
combination bands.

      Originally the program was used to examine the detailed effects of
anharmonicity on small gas phase molecules. Recently, however, it has been
used in the calculation of such properties as reaction rates  (using
semiclassical transition state theory) and the vibrational correction to 
(hyper)polarisabilities. 
      Ongoing work with SPECTRO includes the integration of a sophisticated
least squares fitting program (developed at the University of Bologna) which
allows us to refine an entire internal coordinate quartic potential to all 
of the experimental data which SPECTRO is able to calculate. 
      If you would like a copy of the program (along with a sample 
input/output and documentation in LaTeX) please let me know and I will
be happy to send it to you. SPECTRO has been distributed to a number of
groups throughout the World, both theoretical and experimental. It is
currently running on a number of platforms ranging from an Apple Macintosh
(where some code amendment was required) to a Cray YMP. The program is free.

From: Kris Van Alsenoy <[email-masked]>

  Jan Martin and myself have develloped the utility gar2ped (a fortran
program) which reads a Gaussian94 archive record containing the cartesian
second derivatives and calculates PED's and a few other things.

pullarc.f : extracts the archive record from a log file and
            writes this to a file with extension .arch
gar2ped.f : reads the archive record (extension .arch) and
            calculates PED's.

The program gar2ped produces :
an output file, tetrazine.out, and several .xyz files which can be viewed
using XMOL.
The file tetrazine.nomos.xyz contains all normal modes (one after
another) with arrows indicating in which direction atoms will move.
The files tetrazine.'number'.xyz contain for normal mode 'number' the
input for the normal mode 'to be played' using XMOL, showing the
molecule as it vibrates.
A script 'go' contains the input as it can be given interactively,
for triazine it shows how internal coordinates can de defined.

From: "Andrey V. Khavryutchenko" <[email-masked]>, 
[email-masked]

 We have program set to calculate vibrational spectra and it has the
feature you need - the vibrational modes are treated in internal
coordinates. The cartesian force field from external program is converted
to the force field in internal coord's.  Then you can calculate
frequencies, the distribution of the potential energy between internal
vibration coordinates, the amplitudes of vibrations and directions of atom
movement, etc.  IR and inelatric neutron scattering spectra intensities
could be calculated to. 
 Unfortunaly it is the comercial product, which may be unsuitable for you.
 We are using home-made semiempirical package to produce the force field.  
But since the input format is simply ASCII, I beleive our spectroscopy 
programs can read almost every output after little reformating (done by 
computer).
                      C O S P E C O
            A Computational Spectroscopy Program.
--- Functional Description 
Geometry structure:
   - Input of structure from different molecular files formats
   - Matrix conversion  from Cartesian to internal dependent
     coordinates. 
   - Calculation of a matrix of kinematic coefficients.
   - Calculation of a set of equivalent vibrational coordinates.
   - Calculation of a set of vibrational coordinates that have no 
     common atoms.
Force field:
   - Convertion of a force field matrix from Cartesian coordinates 
     to dependent internal coordinates.
   - Scaling of force constants obtained in the course of quantum
     chemistry calculations.
   - Creation of a force field matrix from a force constant
     data bank.
   - Creation of  force constant and scaling factor banks.
Vibrational problem:
   - Solving of a direct harmonic vibrational problem.
   - Solving of an inverted frequency problem.
   - Incorporation of different models for force field.
Intensity:
   - Calculation of IR-spectrum intensities.
   - Calculation of inelastic neutron scattering spectrum
     intensities.
   - Solving of an inverted intensity problem and seeking of
     scaling factors.
   - Creation of a scaling intensity factor bank.
--- Application Field 
   - COSPECO is used in many areas of material science,
	just some of them:
	       high temperature superconductors, 
	       vitamines, 
	       proteins and DNA 
     surface and inteface studies 
	       catalysis, 
	       adsorption,
	       surface zone vibrations study
--- Requirements 
Hardware:
   - IBM PC-compatible computers:
	Intel 486 with 8 Mb of RAM or more and 10 Mb of free disk space
   - SUN SPARCStation ( 2 or better )
   - other ports available on request
Operating system:
   - IBM PC-compatible computers:
	DOS
	Windows 3.11
	Windows'95
	Windows NT 3.5
   - Unix SYSV
User interface:
   - Windows GUI (Graphical User Interface) under Windows on PC's
   - X Windows on Unix'es

____________________ Vibration Programs in QCPE ___________________

665. NIVELON: Calculation of Anharmonic Vibrational Energy Levels

by Camelia Munoz-Caro and Alfonso Nino, E.  U. Inform tica de Ciudad Real,
Universidad de Castilla-La Mancha, Ronda de Calatrava 5, 13071 Ciudad
Real, Espa*a

NIVELON is a program for the computation of energy levels and populations
for any kind of anharmonic vibration.  Several coupled vibrations can be
handled simultaneously with the kinetic and potential terms expanded in
Fourier or Taylor series.  Within a variational framework [1], free rotor
and harmonic oscillator eigenfunctions can be used in the basis set. The
program permits one to introduce Gaussian perturbations in the potential
function and to compute the quantum mechanical average of a magnitude in
different vibrational states.  The non-rigid group theory can be used for
the factorization of the Hamiltonian and the classification of vibrational
states.  NIVELON is written in standard FORTRAN 77 and

[1] C. Mu*oz Caro, A.  Ni*o and D. C. Moule, Chem. Phys., l86, 221-231
(1994). 

Lines  of Code:  1826
FORTRAN 77

656. spiroVib:  Graphics-Based Normal Mode Analysis

by Arka Mukherjee and Thomas G. Spiro, Department of Chemistry, Princeton
University, Princeton, New Jersey 08544

The spiroVib program is a graphics-based, menu-driven interface to Normal
Mode Analysis.  It allows the user to interactively perform vibrational
analysis of small to medium-size molecules (<150 atoms) and to visualize
the frequencies, eigenvectors and potential energy distributions of the
normal modes almost instantaneously.  The program enables users to perform
calculations with relative ease and to output the frequency and mode
compositions in clear formats. 

The important features of the program are as follows: 
 Graphics-based, menu-driven Normal Coordinate Analysis program.
 Real-time, mouse-driven rotation (in the x, y and z directions) and
scaling of molecule
 Compatible with Schachtschneider original programs^1.  The ability to run
CART, GMAT, ZSYM, UBZM, GFROOT and VSEC using the menu-driven user
interface. 
 Visual description of normal modes through animation
 The ability to import other formats like BIOGRAF (bgf) and BROOKHAVEN (pdb)
 Limit the input to Cartesians, masses, connectivity and force 
constants:  The program will be capable of automatically generating the 
complete z-matrix, which the user can edit.  Symmetry coordinates can be 
generated automatically.
 The ability to measure geometric parameters (distances, angles, dihedrals
and wags)
 Capable of producing plots of eigenvectors
 Can be easily redimensioned to perform calculations on larger molecules
 Hypertext help available
 Can generate macros that record menu-selection and data input-output

Reference:

1.   Schachtschneider, J. M., Shell Development
 Company, Technical Reports No. 57-65 and 231-264
 (1962).

Lines of Code:  75,387
FORTRAN 77 (Silicon Graphics)

658. FITVIB:  Refinement of Kinetic and Potential Energy Functions for
Several Large Amplitude Vibrations Using Experimental Data

by Alfonso Nino and Camelia Munoz-Caro, E. U. Informatica de Ciudad Real,
Universidad de Castilla-La Mancha, Ronda de Calatrava 5, 13071 Ciudad
Real, Spain

FITVIB is a program for refining kinetic and potential energy functions
for several large amplitude vibrations.  These functions are expressed as
Fourier expansions on the anharmonic large amplitude coordinates^1,2.  The
program minimizes the sum of squares of the differences between calculated
and experimental energy levels using a multidimensional Newton-like
algorithm.  For large amplitude vibrations the position of the energy
levels depends on the kinetic and potential terms.  Thus, all these terms
are included in the minimization procedure.  The program is especially
useful for deriving accurate potential functions for torsional (internal
rotation) motions. Thus, reliable values for the barriers to rotation and
the equilibrium conformations can be obtained.  The program is written in
standard FORTRAN 77 and runs under the UNIX operating system. 

References:

1. A. Ni*no, C. Munoz-Caro and D. C. Moule, J. Phys. Chem., 98, 1519 (1994).
2. C. Mu*oz-Caro, A. Ni*o and D. C. Moule, Chem. Phys., in press.

Lines of Code:  2731
FORTRAN 77 (UNIX)

QCMP142.  NIVELON:  Calculation of Anharmonic Vibrational Energy Levels

by Camelia Mu*oz-Caro and Alfonso Ni*o

This is the PC version of QCPE 665, announced in this issue of the QCPE
Bulletin (see page 48). 

QCMP103.  MOLVIB:  Calculation of Harmonic Force Fields and Vibrational
Modes of Molecules

by T.  Sundius, Department  of Physics,  University  of
Helsinki, SF-00170 Helsinki, Finland

MOLVIB is a program for the calculation of harmonic force fields and
vibrational modes of molecules with up to 30 atoms.  In the calculation of
crystal vibrations, a totality of 50 atoms divided among 11 sub-units can
be treated.  However, the main sub-unit should not contain more than 30
atoms. 

Lines of Code: 5200

FORTRAN (Microsoft v. 4.01)

628. REDONG and VISUVIB

by A. Allouche, CNRS URA 773, Campus de St. Jer*me, Box 541, 13397
Marseille Cedex 13, France

This package  consists of two separate programs, REDONG and VISUVIB.

REDONG is designed to carry out vibrational analysis for internal
coordinates starting from a GAUSSIAN 88 ab initio calculation of
vibrational frequencies.  The full set of internal coordinates can be
transformed into any set of symmetry coordinates after scaling of the
vibrational force field. 

The atomic Cartesian coordinates and the Cartesian force-constant matrix
(f) are read from the GAUSSIAN output file (file 22). 
     f is transformed into the mass-weighted matrix f«. 
     f« is diagonalized in order to obtain the vibrational frequencies. 
The full set of internal coordinates is read from file 5 and the B matrix
is built (BMAT--QCPE 576--is included in REDONG). 

Vibrational frequencies can be fitted to experiment by direct scaling. 

The program VISUVIB is a fully interactive program designed to produce a
graphical representation of the normal vibrational coordinates.  It uses
the IBM GDDM graphics library and an IBM color display station. 

The only input is the GAUSSIAN 88 or 86 OUTPUT file. 

VISUVIB displays the atomic coordinates and then the symmetry class,
vibrational frequency and eigenfunction for each normal mode as it is read
from G88 output file.  One can then select one of the normal modes for
display. 

 Lines of Code:  3183
VS FORTRAN  (IBM) operating  under VM/CMS  on IBM  30XX
systems.

629. KICO:  Kinetic Constants Calculation Program

by Camelia Mu*oz-Caro and Alfonso Ni*o, E.  U. Inform tica de Ciudad Real,
Universidad de Castilla-La Mancha, Ronda de Calatrava s/n, 13071 Ciudad
Real, Spain

KICO (KInetic COnstants calculation program) is a software tool designed
to obtain the kinetic part of the molecular Hamiltonian for internal
motions.  The program evaluates the vibrational-rotational G matrix1
(which represents the kinetic energy corresponding to the overall rotation
and vibrations of the molecule). the internal coordinates are defined as
bond lengths, bond angles and dihedral angles through the Z matrix. Dummy
atoms are identified with chemical symbol X, and deuterium is identified
with chemical symbol D.  The program calculates the Cartesian coordinates,
the inertial tensor and the principal inertial moments and axis.  It
obtains the atomic coordinates referred to the center of mass coordinates
using the principal axis system.  The program is particularly useful for
obtaining the kinetic constants of large amplitude vibrations such as
internal rotation, inversion or ring puckering.

Reference:

1.  M. A.  Harthcock and J. Laane, J. Phys. Chem., 89, 4231-4240 (1985). 

Lines of Code:   1609
FORTRAN 77 (SUN, IBM RS/6000, etc.)

631. FCARTP:  A Series of Programs Used to Generate a Predicted Set of
Fundamental Vibrational Frequencies

by William B. Collier, Department of Chemistry, Oral Roberts University,
Tulsa, Oklahoma 74171

The method can be summarized as follows.  First, a force constant matrix
in Cartesian coordinates is generated using a suitable molecular orbital
program or other method.  Second, from the structure of the molecule a B
matrix is calculated and used as input to the FCARTP program.  Lastly,
FCARTP reads the Cartesian F matrix file and its main input file to obtain
all the input data necessary to complete the calculations and produce a
set of predicted fundamental vibrational frequencies.  Version 1.10 of
FCARTP has the capability of: 

 1.  Calculating the fundamental vibrational frequencies of a molecule or
series of molecules or molecular symmetry blocks after scaling (or not
scaling) the input Cartesian F matrix according to the method of Pulay, et
al., J.A.C.S., 101, 2550 (1979); J. Chem. Phys., 72, 3999 (1980). 
 2.  Adjusting the user-specified scale factors according to the method of
nonlinear least squares so that the predicted frequencies of the scaled
molecular orbital calculated Cartesian F matrices are minimized with
respect to user-entered and weighted experimental vibrational frequencies. 
 3.  Calculating the Cartesian components of and the total intensity of
each vibration from user-inputted Cartesian dipole derivatives calculated
from the AMPAC molecular orbital program or others. 
 4.  Calculating and printing the scaled and adjusted molecular F matrix
in internal coordinates for each molecule entered, the potential energy
distribution of each vibrational frequency calculated, the Cartesian
vibrational displacements of each vibration calculated, the initial and
final adjusted scale factors, and various other spectroscopic quantities
and matrices of interest. 
 5.  Performing overlay isotopic calculations and refining scale factors
for an isotopic set of vibrational frequencies. 
 6.  Providing instructions for modifying matrices for use in FCARTP. 
 7.  Giving specific line by line instructions for modifying QCPE 506
(AMPAC) and BMAT. FOR of QCPE 342 to provide the user with the necessary
Cartesian F matrices and B matrices needed for input into the program. 

Lines of Code:  5235
FORTRAN 77 (VAX)

QCMP128.  
 ASYM20: A Program for Force Constant and Normal Coordinate Analysis

by Lise Hedberg, Department of Chemistry, Oregon State University,
Corvallis, Oregon 97331 and Ian M. Mills, Department of Chemistry,
University of Reading, Reading RG6 2AD, England

Program ASYM20 is a normal coordinate program which may be used to refine
force constants in the harmonic approximation using the following
experimental data: wave numbers, isotopic wavenumber shifts, Coriolis
coupling constants, root-mean-square amplitudes of vibration, and
centrifugal distortion constants.  The name ASYM20 is intended to indicate
that the calculations may be carried out for molecules of any symmetry
with up to 20 atoms.  The program has special provisions for handling
molecules of higher symmetry, specifically molecules with doubly and
triply degenerate normal modes. 
 The theory behind the calculations, and the way it is implemented in the
program, is discussed in the paper by Lise Hedberg and Ian Mills, "ASYM20: 
A Program for Force Constant and Normal Coordinate Calculations, with a
Critical Review of the Theory Involved", which is scheduled for
publication in the Journal of Molecular Spectroscopy in the spring of
1993. 
 The refinement is usually carried out using symmetrized force constants. 
For small molecules where there are no redundancies, it is possible to
carry out a refinement based on valence force constants.  If redundancies
are present, these must be eliminated before the calculations can be
carried out. The structure of the molecule is entered in the form of
Cartesian coordinates, and the symmetry coordinates are defined by use of
the U-matrix.  When symmetry coordinates are used, the G-matrix will be
blocked according to symmetry species, and the program will calculate
normal coordinates for one symmetry species at a time.  These will be kept
separate throughout the calculations.  Consequently, the observed
wavenumbers must be entered according to the symmetry species to which
they belong. 
 There is no provision in the program for calculation of Urey-Bradley
coordinates, but if these are known, they may be entered in terms of the
Z-matrix, and the refinement may be carried out based on Urey-Bradley
force constants. 
 The FORTRAN code has been written in very simple form to make it easy to
transfer the program to different computers.  But there are two
statements, CALL DATE and CALL TIME, which are dependent on the compiler
and the operating system one is using.  The information obtained from
these calls is listed at the top of the output file, and we find it
useful.  It may be necessary to write a small subroutine to make these
calls compatible with the computer one is using. 

Lines of Code:  5647
FORTRAN (Microsoft 5.0)

639. ASYM40:  A Program for Force Constant and Normal Coordinate Analysis

by Lise Hedberg, Department of Chemistry, Oregon State University,
Corvallis, Oregon 97331 and Ian M. Mills, Department of Chemistry,
University of Reading, Reading RG6 2AD, England

Program ASYM40 is a normal coordinate program which may be used to refine
force constants in the harmonic approximation using the following
experimental data: wave numbers, isotopic wavenumber shifts, Coriolis
coupling constants, root-mean-square amplitudes of vibration, and
centrifugal distortion constants.  The name ASYM40 is intended to indicate
that the calculations may be carried out for molecules of any symmetry
with up to 40 atoms.  The program has special provisions for handling
molecules of higher symmetry, specifcally molecules with doubly and triply
degenerate normal modes. 
 The theory behind the calculations, and the way it is implemented in the
program, is discussed in the paper by Lise Hedberg and Ian Mills, "ASYM20:
A Program for Force Constant and Normal Coordinate Calculations, with a
Critical Review of the Theory Involved", which is scheduled for
publication in the Journal of Molecular Spectroscopy. 
 The refinement is usually carried out using symmetrized force constants. 
For small molecules where there are no redundancies, it is possible to
carry out a refinement based on valence force constants.  If redundancies
are present, these must be eliminated before the calculations can be
carried out. In an earlier version of the program the van der Waals radii
of atoms consist of internal data.  In this version these values are
contained in a text file named "VDW.DAT".  Thus the user can edit this
file in order to change the radius of an atom or to add non-existing
values. 

Lines of Code:  6791
FORTRAN 77 (VAX)

642.  RKR (Rydberg, Klein, Rees) Method Program

by Emilio Gallicchio, Department of Chemistry, Columbia University, New
York, New York 10027 and Franco Battaglia, Dipartimento di Chimica,
Universita degli Studi della Basilicata, 85100 Potenza, Italy

 The RKR method is a computational tool in the spectroscopy of diatomic
molecules since it provides the Born-Oppenheimer nuclear potential energy
curve for a particular electronic state given the experimental vibrational
levels of the electronic state. 
 This program differs from older implementations in that it does not
require as input the coefficients of a Taylor Series expansion in (v+1/2)
of the standard spectroscopy terms G(v).  This approach can achieve good
accuracy over the entire range of v. 

Lines of Code:  621
FORTRAN 77 (IBM RS/6000)

648.  ROVI:  RO-VIbrational Properties Calculation Program

by Alfonso Nino and Camelia Munoz-Caro, E. U. Informatica de Ciudad Real,
Universidad de Castilla-La Manca, Ronda de Calatrava s/n, 13071 Ciudad
Real, Spain

 ROVI is a software tool designed to obtain the fine vibrational structure
of electronic spectra for large amplitude vibrations.  The program permits
the user to obtain the energy levels for the transitions and the
intensities.  ROVI generates two files for plotting the spectrum where the
transitions are represented by vertical lines or Lorentzian shapes. 
Potential energy functions, kinetic constants and transitions dipole
moments can be input as a function of the vibrational coordinates.  The
non-rigid group theory can be used for factorizing the Hamiltonian matrix
and classifying the energy levels.  The user must supply the basis
functions for the calculations. ROVI has been written in standard FORTRAN
77 and has been tested under the UNIX operating system. 

Lines of Code:  1748

QCMP012.  General Vibrational Analysis Programs Utilizing the Wilson GF
Matrix Method for a General Unsymmetrized Molecule

by Douglas F.  McIntosh and Michael R. Peterson, Department of Chemistry,
University of Toronto, Toronto, Ontario Canada M5S 1A1

Converted by Timothy J.  O'Leary, Department of Health and Human Services,
Bethesda, Maryland 20205

 This set of three programs allows the user to analyze a general
vibrational problem in terms of the method of Wilson, Decius and Cross1. 
The programs allow for a general solution with a complete set of internal
coordinates or, if desired, a less complete and more restricted basis set. 
 Previous  methods   of  solving  the  general
   vibrational equation

                 GFL  =  Ll

where G and F are the familiar matrices of the Wilson method, L is the
eigenvector matrix and l is the diagonal eigenvalue matrix, have been
hampered by the requirement that the basis vectors (internal coordinates)
be orthonormalized.  This is generally accomplished by applying both
symmetry projection operators and a Schmidt orthogonalization process. 
 In the methodology of the present programs, the basis vectors need not be
orthogonal. This allows for the direct solution of the vibrational problem
without recourse to the use of symmetry coordinates, although provision
has been made for their use if desired.  The programs will generate the
required 3N-6 (or 3N-5, for linear molecules) eigenvalues expected for a
complete analysis from 3N-6 (3N-5) to 3N basis vectors.  The normal
difficulties inherent in redundant coordinates or modes present no
problems. 
 Program 1 computes the Wilson B matrix which will be used in all the
remaining programs. The BMAT program is a modification of the original
GMAT program of J.  H. Schactschneider2 and allows for the calculation of
six different types of internal coordinates, namely:  (1) Bond Stretch,
(2) Valence Angle Bend, (3) Out-of- Plane Wag, (4) Torsion, (5) Linear
Bend (defining 2 internal coordinates), and (6) Linear Bend (defining 1
internal coordinate). Two important differences between Schactschneider's
original GMAT program and BMAT is the inclusion of R. L. Hilderbrandt's
method of normalization of the torsional coordinate3 and the use of new
formulae for the Out-of-Plane Wag. 
 Program 2 is a dual-purpose program allowing the user to compute either
the complete set of eigenvalues for a series of isotopically related
molecules or the series of matrices important to the interpretation of a
vibrational problem.  These matrices include (1) the L matrix, (2) the
Potential Energy Distribution matrix, (3) the Atom Displacement matrix,
and (4) the Root Mean Square Amplitudes of Vibration between Atom Pairs
(bonded and nonbonded), Cartesian Displacements for the equilibrium
geometry and Internal Coordinates.  The first part of program 2 also
allows the user to manipulate the F matrix with individual calculations to
obtain an approximate fit of experimental data. 
 Program 3 utilizes the SIMPLEX optimization algorithm of Nelder and Mead4
to refine the guessed force constants via a non-linear least-squares
analysis between calculated and observed frequencies (eigenvalues).

References:

1.  E. Bright Wilson, Jr., J. C. Decius and Paul Cross, Molecular
Vibrations: The Theory of Infrared and Raman Vibrational Spectra (New
York:  McGraw-Hill Book Co.), 1955. 

2.  J. H. Schactschneider, Reports 231/64 and 57/65, Shell Development
Co., West Hollow Research Center, P.O.  Box 1380, Houston, Texas 77001. 

3.  R. L. Hilderbrandt, J. Mol. Spectroscopy, 44, 599 (1972). 

4.  J.  A.  Nelder and R.  Mead, Computer Journal, 7, 1809 (1965). 

FORTRAN 77 (Microsoft FORTRAN) Lines of Code:  2650

QCMP038.       
 NCRDWC:  A Program to Determine Vibration Frequencies and Normal Modes of
Vibration

by H.  L. Sellers, L. B. Sims, Lothar Schafer and D.  E. Lewis, Department
of Chemistry, University of Arkansas, Fayetteville, Arkansas 72701

Converted by K. J. Tupper, QCPE

The potential energy for vibration of a molecule is expressed in terms of
internal valence displacement coordinates.  The internal coordinates which
are used are bond stretching, valence-angle bending, out-of- plane bending
and torsion about chemical bonds.  For details, see the article by J. C.
Decius in J. Chem. Phys., 17, 1315 (1949). 
 As small displacements are involved, the potential energy is expanded in
the displacements from equilibrium, yielding:
...
The program accepts a general or simple valence force field with force
constants corresponding to the previously mentioned internal coordinates
as described in Molecular Vibrations (New York:  McGraw-Hill Book Co.,
1955), pp. 54-61, by Wilson, Decius and Cross. 
 The program converts the potential energy matrix to one which is
appropriate to mass- weighted Cartesian displacement coordinates, since
this affords an efficient solution for the frequencies. 
 This software differs from QCPE 339 in that no output is written to the
screen as in the original program, and two files, INPUT and OUTPUT, are
opened for I/O of data.  Thus, a data file must be named INPUT in order to
be read.  This may be changed by the user to suit his individual needs by
changing the statement: 
      OPEN(5,FILE='INPUT',STATUS='OLD') Also note that the output file is
given a status of NEW, so all existing files of this name will be deleted
by executing this program.  The name of the output file may also be
changed by the user by changing the "OPEN(6, "  statement.  Data which the
user does not want written to the OUTPUT file may be written to the screen
by substituting a ' * ' for the number '6' in the appropriate WRITE
statements. 
 The software package includes a complete version of QCPE 339 as well as
the individual subroutines.  Sample input and the resulting output are
provided, as is the executable program QCP339.EXE which was used to
generate the output.  The software was compiled using Microsoft
FORTRAN-77, version 3.2, using an 8087 coprocessor.  The data for cis and
trans (NO)2 are not included in the INPUT data file but have been included
in the file CISTRANS.DAT. 

FORTRAN 77 (Microsoft FORTRAN)
Lines of Code:  624

QCMP067.  UMAT:  General Vibrational Analysis Program

by Douglas F.  McIntosh and Michael R. Peterson, Depatment of Chemistry,
Lash Miller Chemical Laboratories, University of Toronto, 80 St.  George
Street, Toronto, Ontario, Canada M5S 1A1

This set of four programs is version 2.0 of the system BMAT (QCMP012),
which is designed to allow the user to analyze the general vibrational
problem in terms of the method of Wilson, Decius, and Cross.1 The program
allows for a general solution with a complete set of internal coordinates
or, if desired, a less complete and more restrictive basis set. 
 The four programs included in this package are: 
  1) UMAT - A multifunctional program which is intended to "set-up" the
entire analysis,
 2) BMAT - A modification of the GMAT program of J. H.  Schachtschneider.2
BMAT generates an unsymmetrical B matrix in a form suitable for use by
programs 3 and 4.  BMAT is included as a subroutine in UMAT. 
 3) FTRY-ATOM-RMSA-INTY - May be used to obtain the complete set of
frequencies for a set of isotopically related molecules, the normal
coordinate analysis of the first atom of this series, the R.M.S. 
amplitude of vibration, and the infrared intensities of the frequencies of
a series of isotopically related molecules. 
 4) FFIT - Uses the Simplex method of Nelder and Mead3 to refine the
best-guess force constants via a non-linear least-squares analysis between
the calculated and observed frequencies.

References:

1.  E. Bright Wilson, Jr., J. C. Decius, and Paul Cross, Molecular
Vibrations:  The Theory of Infrared and Raman Vibrational Spectra (New
York:  McGraw-Hill Co.), 1955. 

2.  J. H. Schachtschneider, Report 231/64 and 57/65, Shell Development
Co., West Hollow Research Center, P.O. Box 1380, Houston, Texas 77001. 

3.  J. A. Nelder and R. Mead, Computer Journal, 7, 1809 (1965). 

FORTRAN 77 (Microsoft, v. 4.1) 
Lines of Code:  6309

      __   _________ 
     /  \ /  _   _  \   Artem Masunov - [email-masked]
    /    \\  \\  \\  \       Chemistry Department, Hunter College
   /  /\  \\  \\  \\  \          City University of New York
  /  ____  \\  \\  \\  \     695 Park Avenue, New York, NY 10021
 /__/\__/\__\\__\\__\\__\ Tel: (212) 725-0317, Fax: (212) 772-5332
 \__\/  \/__//__//__//__/