How We Did Vibrations
The C++ program, written by Andrew Schultz, used to create the .xyz animated
files of the vibrations is available here.
chem.h and vector.h are also
The program first reads in the file to obtain the coordinates and element
of each atom. The next thing the program does is to allow for the
molecule to be enlarged or shrunk. Because the .xyz file format does not
include bonds, Chime and Rasmol must decide where the bonds are, based on
inter-atomic distances. Because vibration cause the atoms to be closer
or farther apart, bonds can be broken and unwanted bonds can be formed.
The vibration program prevents this by allowing the molecule to be scaled
up or down. Here is a water molecule being bent more than in the water page, which illustrates this possibility: