Sei sulla pagina 1di 4

Chapter 10

Theory And methods introduction


This part describes the essentials of HyperChems theoretical and computational chemistry or how
Hyperchem performs Chemical calculations that you request from the setup and compute menus.
While it has pedagogical value, it is not a textbook of computational chemistry; the discussions are
restricted to topics of immediate relevance to HyperChem only. Nevertheless, you can learn much
about computational chemistry by reading this manual while using HyperChem.
The theory and methods discussed in this book are HyerChems two fundamental force-energy-
generator modules: one for molecular mechanics and one for quantum mechanics. Molecular
mechanics and quantum mechanics are described in subsequent chapters as modules capable of
delivering an energy, or derivatives of the energy. Other chapters describe the uses for these energies
and their drivatives in more generic parts of HyperChem.
HyperChem Architecture
While yu may not necessarily perceive the difference, HyperChem is designed to consist of two basic
components: a front end and a back end.
The front end is what you see and what you interact with. It provides a user interface to molecular
modeling and provides the visualization of molecules and the results of computations. The front end
can be thought of as the molecular modeling component of HyperChem.
The back end is the component of HyperChem that performs the more time-consuming scientific
calculations. This is where molecular mechanical and quantum mechanical calculations are
performed. The back end can be thought of as thr computational chemistry component of
HyperChem.
The Back Ends
As an aid in understanding how to use HyperChem effectively, this section describes the essentials of
the front end and back end architecture. While this may not be necessary, an intuition as to how the
program operates can be useful in optimizing its efficient use. A network version simply merges the
friont end and back end into the same machine.
The user only interacts with the front end. The front end collects input from the user, initiates back
end calculations, collects results from the back end, and then, if requested, display these results to the
user. The front end launches a back end program, sends it input data, and then recieves output result
from it. The back end programs included with HyperChem are HyperMM+,HyperNewton (performs
AMBER, BIO+, and OPLS calculations), HyperEHT (performs Extended Huckel calculation),
HyperNDO (performs CNDO, INDO, MINDO/#. MNDO, AM1, PM3, ZINDO/1, and ZINDO/S
calculations), HyperTNDO (performs TNDO calculations), HyperGauss (performs ab initio quantum
mechanical calculations), and HyperDFT (perform density functionl calculations). When the front end
initiates a back end program, an icon will appear (for the Microsoft Windows version only)
representing the back end program. The icons are a falling red apple , indicating an ab initio or DFT
calculations. While the icon is visible, a back end program is active. The user can explicitly stop a
back end program is active. The user can explicitly stop a back end program but only the front end
can start a program. A back end program essentially acts as a computational server for thr front end
and then looks for further input or commands from the front end. It can be used over and over for
different calculations. If it has been explicitly stopped, the front end will start the back end executing
again as necessary. If the front end determines that it needs to stop a back end program or start
another copy it will do so. In particular, switching between calculation methods may stop a back end
program and start another one.
For example, if the user request a molecular dynamics calculation using the AMBER force field,
HyperChem starts a copy of HyperNewton running and sends it a copy of the current molecular
system in the work space and the appropriate parameters for thr molecular dynamics run. The back
end runs the dynamics trajectory periodically sending back result to the front and to update the display
of the molecule, plot stucturalor energetic values, etc. The front end and back end communicate via
messages that are as appropriate to a distributed computing environment as they are to the single
machine configuration.
The internal architecture of HyperChem back ends is different from that expected to be used by third-
party packages. To a third-party agent wishing to interface with HyperChem, HyperChem always acts
as a server. Thus a third-party molecular dynamics package would ask HyperChem to send the
coordinates of a molecule rather than HyperChem determining on its own that it should send
coordinates at the appropriate time.
HyperChem Philosophy
The HyperChem philosophy associated with back end computations is one which is intended to instill
confidence, as far as is posible, in the scientific results emanatingfrom HyperChem. This philosophy
is one of openness about the product, the calculations being performed, the science embodied in the
product, etc. Apart from protecting the proprietary code associated with a commercial product,
Hypercube wishes to document and describe as fully as is possible the calculations that HyperChem
performs. There should be no mystery about the scientific results obtained with HyperChem.
HyperChem should not be viewed as a black box that computes only what its designers thought
correct. It has an open architecture taht makes it possible to customize it many ways. As far as is
possible, the parameters of molecular mechanics and semi-empirical calculations are in the users
hands. As thetechniques of software engineering advance and our expertise in building new release of
HyperChem progresses, we intend to make as many facets of HyperChem computations available to
the user as possible. In the past, it was thought necessary to provide source code to users to allow
them to customize a product. The ability to customize a product to ones own use is now attainable
much more simply by means of an open architecture and well-defined, documented ways to use and
customize the product.
In order to balance public domain science with a high quality commercial software product it has been
necessary for us to reimplement almost every aspect of computational chemistry embodied in
HyperChem. All HyperChem source code is written in C or C++, specified, designed, and
implemented by HyperChems developers. We have stood on the scientific shoulders of giants, but we
have not used their FORTRAN code! Thus, although we have had access to MOPAC and other public
domain codes for testing and other purposes, HyperChem computes MINDO, MNDO, and AMI wave
functions, for example, with HyperChem code, not MOPAC code. We have made the effort to
implement modern chemical science in a modern software-engineered product.
Background on Computational Chemistry
The principal theory behind HyperChem is the concept of a potential energy surface and the
distinction between classical and quantum energies, kinetic and potential energies of electrons versus
energies of nuclei, etc. This section provides a concise approach to the problem of defining a potential
energy surface for the motion of nuclei and begins with the usual quantum mechanical definitions
prior to a more rigorous quantum mechanical definition.
Potential Energy Surfaces
A potential energy surface is simply a specification of the classical potential energy, V, as a function
of molecular structure. For example, the potential surface (in this case a poteential curve) for a
diatomic molecule is sketched qualitatively in the following illustration. The potential energy curve
shows the potential energy might depend-for instance the X, Y, and Z coordinates of each of the two
atoms. However, five of these degrees of freedom correspond to translations (3) and rotations (2) of
the rigid molecule and do not affect the energy of the system. This leaves only the internuclear
distance as the variable upon which the potential energy depends.








The curve above shows that as R , the potential energy approaches a constant, which is the
energy of the two individual atoms. Further, there is a global minimum for this potential surface at
intermediate distances. At very short distances, the energy rises to + as the two atoms repel each
other.
The semi-empirical methods of HyperChem are quantum mechanical methods that can describe the
breaking and formation of chemical bonds, as well as provide information about the distribution of
electrons in the system. HyperChems molecular mechanics techniques , on the other hand, do not
explicitly treat the electrons, but instead describe the energetics only as interactions among the nuclei.
Since these approximations result in substantial computational savings, the molecular mechanics
methods can be applied to much larger systems than the quantum mechanical methods. There are
many molecular properties, however, which are not accurately described by these methods. For
instance, molecular bonds are neither formed not broken during HyperChems molecular mechanics
computations; the set of fixed bonds is provided as input to the computation. This difference is shown
in the next illustration which present the qualitative form of a potential curve for a diatomic molecule
for both a molecular mechanics method (like AMBER) or a semi-empirical method (like AM1). At
large internuclear distances, the differences between the two methods are obvious. With AM1, the
molecule properly dissociates into atoms, while the AMBER potential continuesto rise. However, in
explorations of the potential curve only around the minimum, result from the two methods might be
rather similar. Indeed, it is quite possible that AMBER will give more accurate stuctural results than
AM1. This is due to the closer link between experimental data and computed result of molecular
mechanics calculations.








HyperChem provides three types of potential energy surface sampling algorithms. These are found in
the HyperChem Compute menu: Single Point, Geometry Optimization, and Molecular Dynamics.
Single Point
A single point calculation,as its name suggests, performs a calculation at only a single point on the
potential surface. For a diatomic molecule, this might be a calculation at R=2.0, for example. The
result of a single point calculation give the potential energy of the system at that geometry, as well as
the gradient at that point. For single parameter potential curves like that shown above, the gradient
describes the steepness of the potential curve at that point along the direction in which the energy
decreases. For a poly-

Potrebbero piacerti anche