| ezPES
ezPES is a library of full-dimensional potential energy surfaces (PESs) and dipole
moment surfaces (DMSs) produced by fitting a polynomial representation of each to
high-level ab initio calculations. We provide a uniform C++ interface to PESs and DMSs
developed at iOpenShell and by other groups. Using this interface, you can integrate
these surfaces into your own program for dynamics or spectroscopy modeling.
The 32-bit version also allows users to fit their own surfaces for systems
of the form AxByCz where x + y + z ≤ 9.
To use the PESs, you need to download the precompiled library and a set of parameters
for a specific PES, or to fit your PES using the tools provided (32-bit distribution only).
In your code, you first need to initialize the PES by specifying
the type of the molecule (number of permutationally equivalent atoms of each type,
i.e., multiplicties) and providing a local path to a directory with the PES parameters.
Once initialized, the value of energy can be computed for a specific values of Cartesian
coordinates. Both energies and coordinates are in atomic units. A sample main program
showing how this is done for HCOH is included. A similar initialization must
be performed for the DMS, and illustrative code is included in the sample program. (Note
that a DMS does not exist for the HCOH potential and so the code to call it is
commented out.)
Caveats and details:
- Only one instance of a PES can be used in a program program.
- When determining the PES type, first list the largest number of
permurtationally identically atoms, e.g., for H2CO it is pes_x2y1z1, for C2H3 it
is pes_x3y2, etc.
- The PES must be initialized before the DMS.
- The coordinates are passed as a 1-dimensional array in the following
order:
- largest multiplicity first, i.e., for water: H1(x,y,z), H2(x,y,z), O(x,y,z), but for
HO2: O1(x,y,z),O2(x,y,z),H(x,y,z)
- If there are several groups of atoms that have the same multiplicity, list
these groups by increasing atomic number, e.g.,
for H2O2: H1(x,y,z), H2(x,y,z), O1(x,y,z), O2(x,y,z)
for H2CO: H1(x,y,z), H2(x,y,z), C(x,y,z), O(x,y,z)
- The DMS returns effective partial charges for each atom which the user must then
convert to a dipole by multiplying by the approriate atomic coordinates.
- The details of algorithm used, fit procedure, level of ab initio data, etc
can be found in original publications.
- Certain "legacy" potentials are provided as built in functions using the
same calling structure as the standard ezPES potentials. Details for each of
these can be found in the /pes/ subdirectories that contain the coefficients
for these potentials. In general they are initialized by invoking, for
example, ezPES.Init(pes_h2co,"/pes/H2CO/coeff.dat"), which would initialize
the formaldehyde potential.
- Please acknowledge ezPES as follows:
ezPES library by E. Kamarchik, B. Braams, A.I. Krylov, J.M Bowman supported
by iOpenShell Center (iopenshell.usc.edu); the PES parameters and algorithm are
from Ref. [original PES reference as shown below].
This distribution includes three components:
- The library files: libezPES-64 (or libezPES-32), libinv, libpes, libpx are
located in the directory lib/ and must be linked against the executable program.
The user is also expected to provide BLAS and LAPACK libraries which are not
included in the distribution.
- The include files: ezPES-v2.0.h which is located in the directory include/ and is
the header file for the ezPES class.
- A sample program contained in main.cpp which will initialize the HCOH
PES and then call for a single energy evaluation. The program also includes
sample code for calling the corresponding DMS. A makefile is provided as well,
although the users may have to change their paths so that they conform to their setup.
Download Linux 32-bit distribution (This version also allows users to fit their own surfaces for systems of the form AxByCz where x + y + z ≤ 9)
Download Linux 64-bit distribution
To install, execute:
gzip d < ezPES-v2.0-32.tar.gz | tar xvf -
and consult README for the compilation instructions
(Please substitute the appropriate file name instead of ezPES-v2.0-32.tar.gz)
Download PESs data files (The surfaces in bold are built into the libraries above):
PES |
Download gzipped tar file |
Where published |
C2H3-radical |
C2H3-radical.tar.gz |
J. Chem. Phys. in press (2009) |
C3H2-singlet |
C3H2-singlet.tar.gz |
J. Chem. Phys. 125, 081101 (2006) |
C3H2-triplet |
C3H2-triplet.tar.gz |
J. Chem. Phys. 125, 081101 (2006) |
H4CF |
H4CF.tar.gz |
J. Chem. Phys. 130, 084301 (2009)
|
HCOH+ |
HCOH+.tar.gz |
J. Phys. Chem. A, submitted (2009)
|
HCOH high energies |
HCOH-high-energies.tar.gz |
Unpublished, for a similar PES please see J. Chem. Phys. 128, 204310 (2008)
|
HCOH low energies |
HCOH-low-energies.tar.gz |
J. Chem. Phys. 128, 204310 (2008)
|
(H2O)2+ |
h4o2+.tar.gz |
J. Chem. Phys. 132, 194311 (2010)
|
C2H5O+ |
c2h5o+.tar.gz |
J. Chem. Phys. 132, 114308 (2010) |
CH2CH2OH |
ch2ch2oh.tar.gz |
J. Phys. Chem. Lett. 1, 3058 (2010) |
H5+ |
h5+.tar.gz.tar.gz |
J. Phys. Chem. Lett. 1, 758 (2010) |
OH+H2 |
OH+H2.tar.gz |
J. Chem. Phys. 133, 164306 (2010) |
C2H2 |
C2H2PES-64.tar.gz |
Chem. Phys. Lett. 368, 421 (2003)
Chem. Phys. Lett. 377, 582 (2003) |
CH3OH |
CH3OHPES-64.tar.gz |
J. Phys. Chem. A 111, 7317 (2007) |
H2CO |
H2COPES-64.tar.gz |
J. Phys. Chem. A 108, 8980 (2004)
J. Phys. Chem. A 112, 13267 (2008) |
H3O2- |
H3O2-PES-64.tar.gz |
J. Am. Chem. Soc. 126, 5042 (2004)
J. Chem. Phys. 123, 064317 (2005) |
H3O+ |
H3O+PES-64.tar.gz |
J. Chem. Phys. 118, 5431 (2003) |
H5O2+ |
H5O2+PES-64.tar.gz |
J. Chem. Phys. 122, 044308 (2005) |
|