Interface 3-1V



Summary:

The 3-1V interface is used with potential energy subprograms for 3-body systems. The driver program obtains the energy 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 is needed.

In general, a 3-1V potential energy routine has the following format:
SUBROUTINE PREPOT

DATA STORAGE/HERE/,ETC...
SAVE

RETURN

ENTRY POT( R, E, NVALS, NSURF)
DIMENSION R(NVALS,3), E(NVALS)

DO I=1,NVALS
    E(I) = SOME FUNCTION OF ( R(I,1),  R(I,2), R(I,3), and NSURF )
ENDDO

RETURN

END

Required variables:

The subroutine POT takes the following arguments

POT( R, E, NVALS, NSURF)
DIMENSION R(NVALS,3), E(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.