Interface 3-2V
Summary:
The 3-2V interface is used with potential energy subprograms
that calculate the potential energy and the analytical derivatives for
a 3-body system. The driver program obtains the energy and its derivatives at one or more
nuclear geometries by passing them as arguments between the subprogram and the driver
program.
Format and selected details:
The subroutine PREPOT, which takes no arguments, is called once
before subsequent calls to the subroutine POT. PREPOT is usually used
to initialize constant parameters of the surface, which are stored using
the FORTRAN command save. Alternatively, the parameters may be stored
in common blocks. Once the surface has been initialized, the
subroutine POT may be called whenever the potential energy and its
derivatives are needed.
In general, a 3-2V potential energy routine has the following format:
SUBROUTINE PREPOT
DATA STORAGE/HERE/,ETC...
SAVE
RETURN
ENTRY POT( R, E, DE, NVALS, NSURF)
DIMENSION R(NVALS,3), E(NVALS), DE(3,NVALS)
DO I=1,NVALS
E(I) = SOME FUNCTION OF ( R(I,1), R(I,2), R(I,3), and NSURF )
DE(1,I) = . . .
DE(2,I) = . . .
DE(3,I) = . . .
ENDDO
RETURN
END
Required variables:
The subroutine POT takes the following arguments
POT( R, E, DE, NVALS, NSURF)
DIMENSION R(NVALS,3), E(NVALS), DE(3,NVALS)
where
NVALS |
input, integer |
The energy and the derivatives are computed for
NVALS different geometries.
|
NSURF |
input, integer |
NSURF labels the potential energy surface. For a
single-surface potential, NSURF=1. For a two-state
potential, NSURF=1 and 3 for the two diagonal diabatic
potential energy surfaces, and NSURF=2 for the diabatic
coupling surface.
|
R(NVALS,3) |
input, double precision |
A two dimensional array containing the internuclear
bond distances. The first index labels the NVALS
different geometries, and the second index labels the
three internuclear distances. Atomic units are used.
|
E(NVALS) |
output, double precision |
An array containing the potential energies of surface
NSURF at each of the NVALS geometries. Atomic units are used.
|
DE(3,NVALS) |
output, double precision |
A two dimensional array of the first derivatives
of state NSURF with respect to the three internuclear
distances. The first index labels the three
internuclear distances, and the second index labels
the NVALS different geometries. Atomic units are used.
|