Introduction To Computational Chemistry
Introduction To Computational Chemistry
Curriculum Project
Capital University
Overall Description
This module will introduce the student to the fundamental concepts of Computational Chemistry.
It prepares the student for more detailed explanations of specific techniques. A brief description
of each of the sub-headings follows:
Overview of Approximations
The use of classical mechanics is first explored as the basis for later approximations. The laws
of Newton, Maxwell, and 19th Century physics are applied to modern, chemical problems.
Self-consistent force fields introduce the concept of iterative solutions to physical problems.
This portion of the module also introduces the algorithms needed in forming the self-consistent
set, tests of goodness of fit, and of convergence.
The Python language has been chosen to implement studies in this module. It is an open-source
and widely supported language. It is platform independent and object-oriented. The Molecular
Modeling Tool Kit (MMTK) is a library of functions for Python designed to permit rapid
development and implement of problems in Computational Chemistry. Unlike the first three
sections of the module, the tools rather than the background of the process of carrying out
calculations are introduced.
Prerequisites
The prerequisites for this module are: (1) General Chemistry, (2) Calculus, (3) General Physics,
and (4) Introduction to Computational Science. The student should be familiar with the concept
of spectroscopy and Newton’s laws of motion, and with a programming language. The latter
could include HTML, C, Python, Java, Javascript, Perl, or some other language. The student
should also be familiar with the use of the Internet and Web-based databases.
Problem Description
The subject of Computational Chemistry is introduced with simplified examples in three areas.
The first of these is the separation of energetic interactions by means of their different overall
energies. The calculation of rotational and vibrational spectra is introduced. The nature of the
isotope effect on rotation and vibration are addressed by calculating spectra of 37Cl, 35Cl, 1H, and
2
H in combinations in hydrogen chloride. Infrared spectroscopy of this molecule is one of the
classical problems in Physical Chemistry and a hallmark of Computational Chemistry. The
second problem involves how one visualizes molecules starting with their three-dimensional
coordinates. The program CHIME is used within web pages to visualize the structures of several
different molecules and a user interface utility is constructed. The third problem concerns the
normal mode analysis of polyatomic molecules and the visualization of those vibrations us
CHIME and the JCAMP-DX chemical mime. Each student will apply knowledge gained and
techniques introduced to contribute to a class project. The molecules of interest and the extent to
which students generate their own normal modes will be adapted to fit the interests and abilities
of each student.
Computational Chemistry encompasses the overall attempt to model physical and chemical
properties of molecules, their associations, and their chemical reactions. This module presents
material suitable for 8 two-hour sessions of lectures and laboratory experiences that introduce the
underpinnings of the areas of molecular mechanics and dynamics. Students completing this
module will understand: (1) calculation of the rotational/ vibrational spectra of diatomic
molecules with emphasis on hydrogen chloride (HCl). This requires the use of Maple or a
similar scripting language such as Python, (2) visualization of molecules using CHIME. A user
interface is constructed using HTML and CHIME scripting commands, and (3) the calculation of
normal modes of vibration of molecules, identification of the modes and their assignment, and
construction of a user interface to simultaneously display spectra and the normal modes in three
dimensions. This example uses a variety of scripting tools, Internet resources, and programs to
calculate the normal modes. Spartan is used in the examples. The student should be familiar
with the use of the Internet, at least one scripting language, and Maple. Introductory Chemistry
and Physics are also required. The module is both lecture and laboratory.
It is useful at this point to introduce the concept of the visualization of molecules. Several
commercial and open-source means of doing this are available. One set of programs that have
been widely used is those of Chime/Rasmol. These can be easily implemented by programming
in commonly used Internet browsers. The resulting web pages allow both manipulation and
comparison of molecules.
Self-consistent force fields introduce the concept of iterative solutions to physical problems.
This portion of the module also introduces the algorithms needed in forming the self-consistent
set, tests of goodness of fit, and of convergence. Approximations such as these may be used in
the semi-classical calculation of the normal modes of vibration of polyatomic molecules. These
in turn may be compared to experimentally determined vibrational spectra.
Preface
Computational Chemistry is, by nature, an approximate science. This is not to say that precise
and accurate answers to important questions involving molecules cannot be obtained using its
techniques. It is, instead, the result of the Heisenberg Uncertainty Principle. Consider the
relatively simple, and abundant, molecule H2. This molecule contains just two protons and two
electrons. In any determination of the energy of this molecule we have to consider all of the
interactions of all of the particles as a function of time. For the moment, suppose that we take a
snapshot of our molecule at just one time. We then have something which looks like the Figure
1 below.
H H
R(nuc)
At this point in time, six distances between pairs of particles and 6 velocities (or momenta)
between particles simultaneously exist. The problem can be simplified by recalling that the
electrons are 1350 times less massive than the protons. This allows us to reduce the problem to
the interaction between the nuclei at a fixed distance and any of the interactions of nucleus:
electron and electron: electron. If we concentrate the effects of the nuclei at their center of mass,
two pairs of position and momentum are left for the nuclear: electron interactions and one for the
electron: electron interaction. Even with this approximation, the Uncertainty Principle states that
we cannot know all of the positions and all of the momenta simultaneously. If the simplest
molecule cannot be completely described, there is no possibility of exactly describing the
properties of something as complex as water or carbon dioxide. To make progress,
Computational Chemistry makes further simplifying assumptions.
The historical development of Computational Chemistry mimics the Aufbau principle presented
in General Chemistry in the addition of electrons to atoms in the Periodic Table. The simplest
approximation is to treat the atoms as hard spheres, at a fixed bond length between bonded
atoms. Construction of all of the possible conformations of the resulting molecule takes into
account the excluded volume of the atoms and bonds. From this approximation, one can then
add on time-dependant terms for bond vibration, rotation, etc. to allow for vibrational and
rotational motion. Through-space interactions such as electrostatic or London forces are the next
level of approximation. Each of these added terms involves an energy of interaction between
two or more atoms. The choice of values for energies of interaction constitutes the force field for
the molecule. At each level of approximation, there are choices made as to how the calculation
is carried out and the energies involved.
The modular nature of Computational Chemistry calculations lends itself to the application of
modular, or library-based computing. One widely employed implementation of this is the Maple
Programming Language. Students in this course will have already been exposed to Maple in
lower division courses.
Nuclear Motion
Consider one molecule of hydrogen chloride (HCl). There are three different kinds of motion
that such a molecule may undergo. The first of these is translation along three spatial axes; i.e. x,
y, and z. In addition to this motion, the molecule can also rotate. Since there is a single bond
between the two atoms in the molecule, the rotations are just the same as found in a larger,
physical object such as a dumbbell. One rotation is around a line drawn between the two nuclei
and the second is perpendicular to that line. For linear molecules such as HCl the number of
degrees of motion due to translation and rotation are then 5. For all other molecules there are
three different axes of rotation and the number is 6. The last kind of motion differs from the first
two in that the position of the atoms of the molecule relative to one another is considered. This
kind of nuclear motion is called vibration. The number of different kinds of vibrations of a
molecule is also known as the number of normal modes of the molecule. The number of normal
modes for any molecule is just three times the number of atoms in the molecule minus the
number of translations and rotations. For most molecules this is 3N – 6, where N is the number
of atoms in the molecule. For linear molecules like HCl, it is 3N –5. For this reason, HCl has
just one normal mode of vibration.
One consideration of Computational Chemistry well illustrated by HCl is the extent to which
different kinds of interactions are important enough to be introduced into approximate
calculations. The basis for the separation is either the difference in energy between the different
kind of interactions or the difference in time during which they take place. For HCl, the
difference between the vibrational and rotational energies is not large enough to consider them
separately. Translation, on the other hand, may be ignored. The second consideration involves
the fact that naturally occurring isotopes of both hydrogen and chlorine exist. The mass of each
of these isotopes differs and the vibration and rotation of the molecules are affected by these
differences. This is commonly known as the isotope effect. For chlorine isotopes with masses of
35 and 37 are common. Less common for hydrogen are isotopes with masses of 2 and 3.
Molecular Visualization
Visual interfaces are now standard in information processing and data analysis in Computational
Chemistry. One reason for this is that the sheer volume of information in even a small
calculation produces an unwieldy amount of data. Another reason is that the comparison of
graphical data is both more intuitive for the researcher and a better way of introducing concepts
for students. A number of software programs and web pages are available including those at the
National Institutes of Health (NCBI Structure) and at MDL Information Systems (Chime).
Additional resources include information at the University of Massachusetts, Amherst (Chime/
Rasmol home page) and at the Computational Chemistry List (ccl.net).
One of the most widely used applications in molecular visualization is the Chime application
from MDL and various modifications and additions to the basic program. Chime runs under
either the Netscape or Internet Explorer web browser and can be extended by programming in a
number formats such as HTML, XML, JavaScript, and others. It is also used in the transmission
of spectra data using the JCAMP-DX format adopted by the International Union of Pure and
Applied Chemistry (JCAMP home page). As such it is a useful application to employ in
Computational Chemistry. Chime accepts a number of data formats and displays two and three-
dimensional renderings of molecules, and animations of their movements.
As mentioned above, the vibrations of polyatomic molecules may be reduced to a set of 3N-6
normal modes, where “N” is the number of atoms in the molecule. The methods of carrying out
the analysis were developed some time ago by Wilson, Decius and Cross using a combination of
quantum and classical mechanics (Wilson, Decius and Cross). When speaking of normal modes
of vibration, it is necessary to introduce the notion of a potential function for the entire molecule.
This consists of all of the forces, in three dimensions and as a function of time, which constrain
the molecule. The potential energy force field governs the motion of the atoms in the molecule,
relative to one another, in space. A classical example of this is the Hook’s Law spring in which
the energy and the displacement of the spring are related by:
E = 12 k ( x − x e ) 2
Where E is the energy, k is the spring constant and xe is the equilibrium distance between the
objects attached by the spring. For more than two objects, a series of force constants, for motion
in three dimensions, are required. The relationship between the force constants and the potential
energy force field is given by:
∂ 2V
Fxy =
∂x∂y
Where Fxy is the force constant between atoms x and y. Generally, each of the xy terms contains
a total of nine different terms for each of the different combinations of motions along three axes
for the two atoms. From these force constants and the positions and types of atoms involved, it
is possible to derive the energy and the normal mode for each vibration in a molecule. The latter
simply consists of a vector indicating how each atom moves during the vibration, relative to its
position at equilibrium. The accuracy of the calculation depends upon: (1) how accurate the
potential energy force field is calculated and (2) the accuracy to which the semi-classical
approximation outlined above applies to the molecule in question. It is usually the case the an
approximate quantum mechanical method is employed to calculate the force field, while the
energies and normal modes are calculated in a classical manner. While not accurate, the method
is useful in demonstrating how different molecules vibrate and are influenced by changes in their
structure.
It is possible to combine the normal mode analysis with molecular visualization using Chime.
Examples of this are found at the JCAMP-DX web page mentioned above and also at an IR
animation site (IR). The CHIME portion of the example demonstrates the three-dimensional
structure and the normal modes of vibration. The spectrum itself allows the viewer to select a
particular vibration and view the motion associated with that vibration. Another example of
these calculations may be viewed at the CompSpec3D home page. These examples then
combine all of the elements of Computational Chemistry to be covered in the current set of
modules. Further, specific material will be covered in modules concerning molecular mechanics
and molecular dynamics.
The starting point in calculations of the physical properties of molecules is the Schroedinger
equation shown below.
HΨ = EΨ (1)
In this equation, H is the Hamiltonian Operator, is the wavefunction and E is the energy. The
Hamiltonian consists of terms involving the potential and kinetic energies of all of the particles
in the molecule. The fundamental approximation in Computational Chemistry is that the overall
Hamiltonian consists of a linear sum of the following components.
In this equation, R and r stand for the spatial positions of the nucleus and electron, T is the
kinetic energy, V is the potential energy, and “hot” stands for higher order terms. Equation (2) is
a series expansion of the Hamiltonian for a molecule with two nuclei and two electrons. The
simplest example of this is H2+. The higher order terms include interactions taken three particles
at a time, and are neglected. These terms are neglected for two reasons. The first involves the
simultaneous interactions of three or more particles and is denoted the three body problem (xx).
Assessment is divided into: (1) homework problems which are within the text of the model and
implementation section, (2) and individual project concerning the concepts of the module as
applied to a specific, polyatomic molecule, and (3) one exam after presentation of the eight
lectures. The details of the individual project are covered in this section.
Each student, with the aide of the instructor, will choose one polyatomic molecule at the
beginning of the module that will be referenced throughout. Specific assignments concerning
this molecule will be given each student during the presentation of the module. At the end of the
module, the student should be able to:
1. Present a set of references in the literature or on the Internet, which concern the physical and
chemical properties of the molecule. This may be summarized in a brief, one-paragraph
description.
2. Present a web page with this molecule implemented in CHIME. The page should have a
user-interface allowing manipulation of the molecule.
This assignment involves incorporating a number of functions and techniques from the module,
as well as introducing the student to two or more programming languages and their applications.
Parts one through four may conveniently be combined on a single web page. Further
assignments and projects in Computational Chemistry will be introduced in other modules in the
CSAC project.
Conceptual Questions
1. How does the classical approximation of a Hook’s Law spring for molecular vibrations differ
from the quantum mechanical approach? You should address energy levels, spacing, and
provide a diagram of Energy vs. nuclear separation with both models included.
2. What are the three possible rotational/ vibrational bands for diatomic spectra? Provide a
cartoon of the three showing their positions relative to either decreasing wavenumbers or
increasing frequency.
3. What is the relationship between the energy of each rotational/ vibrational absorption and its
frequency?
4. What is the effect of the Boltzmann distribution of the population density of the states and
the overall shape of the infrared spectrum?
5. For HCl and DCl, what is the total number of possible infrared bands due to the isotope
effect on rotational/ vibrational spectra?
6. Provide a written description of obtaining a set of molecular coordinates from the PDB and
inserting them into an HTML/CHIME web page. Be specific about commands, references to
pages and frames, and the exact position of the script within each web page.
7. What is the basis of the solid and Van der Waals surfaces portrayed by CHIME?
8. Provide a “recipe” for obtaining (1) the normal modes of a particular molecule, (2) its
coordinates and spectrum, and (3) insertion of this information into an interactive worksheet
displaying both normal modes and IR spectrum.
9. What is a normal mode? Assume that this is for a non-linear molecular with moderate
molecular weight.
10. What are the advantages and disadvantages of calculating normal modes with different
routines in Spartan? Take into account size and accuracy of the calculation.
Solutions to the problems in the Model and Implementation section are available by request.
They are intended for Instructors only.
Clark, M., Cramer III, R.D., and N. van Opdensch, J. Computational Chem., 10, 982 (1989).
Hehre, W.J., Yu, J. and P.E. Klunzinger, “A guide to molecular mechanics and molecular orbital
calculations in Spartan”, Wavefunction, Inc., Irvine, CA, 1997.
Lahti, P.M., and E.J. Motyka, “Interactive Visualization of Infrared Spectral Data: Synergy of
Computation, Visualization and Education for Learning Spectroscopy:, J. Chem. Education 77:5
649-653 (2000).
McDonald, R.S. and P.A. Wilks Jr., “JCAMP-DX: A Atandard For for Exchange of Infrared
Spectra in Readable Form.” Appl. Spect. 42:1 151-162 (1988).
Appendix 1
##TITLE = pyridine
##JCAMP-DX = 5.00 $$
##DATA TYPE = NMR SPECTRUM
##DATA CLASS = XYDATA
##ORIGIN = Widener University
##OWNER = public domain
##.OBSERVE FREQUENCY = 300.150
##.OBSERVE NUCLEUS = ^1H
##.ACQUISITION MODE = SIMULTANEOUS
##SPECTROMETER/DATA SYSTEM = QE 300
##NPOINTS = 8192
##FIRSTX = 3569.771729
##LASTX = -430.228271
##MAXX = 3569.771729
##MINX = -430.228271
##MAXY = 1323200.625000
##MINY = -5601.493164
##XFACTOR = 1.000000
##YFACTOR = 41.350021
##FIRSTY = 193.423828
##DELTAX = -0.488341
##XUNITS = HZ
##YUNITS = ARBITRARY UNITS
##$ASSIGNMENT TYPE= CHIME
##$CHIME TARGET= PROPSTRUCT
##PEAK ASSIGNMENT= (XYWA)
(8.6, -1, 0.1, <select *; spacefill off; wireframe on; select atomno=7 or
atomno=11; spacefill 90>)
(7.6, -1, 0.1, <select *; spacefill off; wireframe on; select atomno=9;
spacefill 90>)
(7.2, -1, 0.1, <select *; spacefill off; wireframe on; select atomno=8
or atomno=10; spacefill 90>)
(5, -1, 5, <select *; spacefill off; wireframe on>)
##XYDATA = (X++(Y..Y))
3569.8Ej5RKp%J1nJ6k0LJ0j1NLj5OJ2j1%qK0plMqnJ6opkMPj1j0lK4Oj0jTRrJ4qnqK0
.........
##END = $$ End of the data block
Appendix 2
##TITLE= Acetophenone
##JCAMP-DX= 4.24 $$Exported GRAMS Data File
##DATA TYPE= INFRARED SPECTRUM
##ORIGIN=EPA-IR VAPOR PHASE LIBRARY
##OWNER=NIST OSRD
##CAS REGISTRY NO=98-86-2
##MOLFORM=C 8 H 8 O
##$ASSIGNMENT TYPE= CHIME
##$CHIME TARGET= MOLECULE
##NPOINTS= 580
##XUNITS= 1/CM
##YUNITS= TRANSMITTANCE
##RESOLUTION=
##FIRSTX= 500
##LASTX= 3980.002
##XFACTOR= 1.0
##YFACTOR= 5.9604E-8
##FIRSTY= 89.485
##MAXY= 103.63
##MINY= 10.162
##PEAK ASSIGNMENT= (XYWA)
(3100, -1, 30, <load "3198.xyz"; select *;
wireframe 0.15; spacefill 0.45; zoom 150;; animation on>)
(3068, -1, 10, <load "3190.xyz"; select *;
wireframe 0.15; spacefill 0.45; zoom 150;; animation on>)
(3058, -1, 10, <load "3184.xyz"; select *;
wireframe 0.15; spacefill 0.45; zoom 150;; animation on>)
(2400, -1, 2000, <load "acetoph.pdb"; spacefill off; wireframe 0.15; spacefill 0.45; zoom 150;;
color bonds none; color atoms cpk>)
##XYDATA= (X++(Y..Y))
data goes here
##END=
Appendix 3
ACETONE
Frequency
AM1
Number of basis functions: 22
Number of electrons: 24
Total molecular charge: 0
Multiplicity: 1
Point group: C2V
Number of independent degrees of freedom: 8
C 1 -.257832 -.275602
C 2 .209889 .522419
O 3 -.292156 -.470084
C 4 -.257832 -.275602
H 5 .105714 .100541
H 6 .096626 .074447
H 7 .096626 .074447
H 8 .105714 .100541
H 9 .096626 .074447
H 10 .096626 .074447