Computer Physics Communications 75 (1993) 379-395 North-Holland
Computer Physics Communications
DVR3D: programs for fully pointwise calculation of vibrational spectra
James R. Henderson, C. Ruth Le Sueur and Jonathan Tennyson
Department of Physics and Astronomy, University College London, Gower St., London WCIE 6BT, UK
Received 18 September 1992
DVR3D calculates rotation less (J = 0) vibrational energy levels and wavefunctions for triatomic systems using scattering (Jacobi) coordinates, or optionally unsymmetrised Radau coordinates, for a given potential energy surface. The program uses a discrete variable representation (DVR) based on Gauss-Legendre and Gauss-Laguerre quadrature for all 3 internal coordinates and thus yields a fully pointwise representation of the wavefunctions. Successive diagonalisation and truncation is implemented for 4 of the possible 6 possible coordinate orderings. DVR3D is best used for problems for which many (several hundred) vibrational states are required. Given appropriate dipole surfaces, the accompanying program DIPJODVR computes vibrational band intensities for wavefunctions generated by DVR3D.
PROGRAM SUMMARY
Title of program: DVR3D
Catalogue number: ACNE
Program obtainable from: CPC Program Library, Queen's University of Belfast, N. Ireland (see application form this issue)
Licensing provisions: none
Computer: Convex C3840 running BSD unix; Installation:
University of London Computer Centre
Other machines on which program has been tested: Cray-YMP8i, IBM RS6000
Programming language used: FORTRAN 77
Memory required to execute with typical data: case dependent
Peripherals used: card reader, line printer, disk files.
Correspondence to: J. Tennyson, Department of Physics and Astronomy, University College London, Gower St., London, WC1E 6BT, UK.
No. of lines in distributed program including test data, etc.: 3848
Keywords: vibrations, body-fixed, discrete variable representa¬tion, Coriolis decoupled, finite elements, Gaussian quadra¬ture, vectorised
Nature of physical problem
DVR3D calculates the bound vibrational or Coriolis decou¬pled rovibrational states of a triatomic system in body-fixed Jacobi (scattering) or Radau coordinates coordinates [1].
Method of solution
All co-ordinates are treated in a discrete variable representa-tion (DVR). The angular coordinate uses a DVR based on (associated) Legendre polynomials and the radial coordinates utilise a DVR based on either Morse oscillator-like or spherical oscillator functions. Intermediate diagonalisation and truncation is performed on the hierarchical expression of the Hamiltonian operator to yield the final secular problem. DVR3D provides the data necessary for DIPJODVR [2] to calculate vibrational band intensities.
Restrictions on the complexity of the problem
(1) The size of the final Hamiltonian matrix that can practically be diagonalised. DVR3D allocates arrays dynami¬cally at execution time and in the present version the total
0010-4655/93/$06.00 © 1993 - Elsevier Science Publishers B.V. All rights reserved
380
l.R. Henderson et al. / Fully pointwise calculation of' ribrational spectra
space available is a single parameter which can be reset as required. (2) The order of integration in the radial co-ordinates that can be dealt within the machine exponent range. Some adjustment in the code may be necessary when large order Gauss-Laguerre quadrature is used.
Typical running time
Case dependent but dominated by the final (3D) matrix diagonalisation. The test data takes 229 s on a Convex C3840.
PROGRAM SUMMARY
Title of program: DIPJODVR
Catalogue number: ACNF
Program obtainable from: CPC Program Library, Queen's University of Belfast, N. Ireland (see application form this issue)
Computer: Convex C3840 running BSD unix; Installation:
University of London Computer Centre
Other machines on which program has been tested: Cray- YMP8i.
Programming language used: FORTRAN 77
Memory required to run with typical data: case dependent
Peripherals used: card reader, line printer, at least two disk files
No. of lines in 'distributed program, including test data, etc.: 1999
Keywords: vibrational band intensities, vectorised, discrete variable representation
Nature of physical problem
DIPJODVR calculates the vibrational band intensities be¬tween eigenstates calculated using the DVR method.
LONG WRITE-UP
1. Introduction
Unusual features of the program
A user supplied subroutine containing the potential energy as an analytic function (optionally a Legendre polynomial expan¬sion) is a program requirement.
References
[1] l.R. Henderson, PhD Thesis, University of London (1990). [2] J.R. Henderson, CR. Le Sueur and J. Tennyson, this
article, second program (DIPJODVR).
Method of solution
The amplitude of the eigenstates at the DVR points are read in. The value of the dipole components are then calculated at these points and transformed into components along the Eckart axes [1]. The vibrational band intensity is the sum of the products of the dipole and the eigenstate amplitudes at all these points.
Restrictions on the complexity of' the problem
The number of transitions to he calculated. DIPJODVR allocates arrays dynamically at execution time and in the present version the total space available is a single parameter which can be reset as required.
Typical running time
7 seconds to run test data on Convex C3840.
Unusual features of the program
Most data is read directly from DVR3D [2]. A user supplied subroutine providing the dipole at any point in configuration space is a program requirement.
References
[I] CR. Le Sueur, l. Tennyson, S. Miller and B.T. Sutcliffe, Mol. Phys. 76 (1992) 1147.
[2] J.R. Henderson, CR. Le Sueur and J. Tennyson, this article, first program (DVR3D).
The discrete variable representation, DVR, along with other pointwise methods, is becoming more and more popular and successful as a technique for determining highly excited bound rotation-vibration
J.R. Henderson et al. / Fully pointwise calculation of vibrational spectra
381
states of triatomic molecules [1]. The experimental community is also enjoying new found enthusiasm and success in this area of spectroscopy and molecular dynamics, due largely to advanced laser technology and techniques such as stimulated emission pumping.
The DVR was introduced by Harris et al. [2] and further developed by Light and co-workers [1,3,4] who showed the power of the DVR for obtaining many vibrational bound states of triatomic molecules. Henderson, Tennyson and co-workers subsequently exploited this [5-9] using mixed DVR and finite basis representation (FBR) studies, which also included rotationally excited states in a DVR (DVRI¬FBR2) [5,11]. There are now a number of triatomic systems for which estimates of more than 500 vibrational band origins have been made using a DVR. This is a goal more traditional FBR based methods struggle hard to meet. More recently Whitnell and Light [10] and us [12-14] have studied triatomic species using a full 3-dimensional (3D) DVR, ie. treating all three internal co-ordinates in a pointwise manner. This method has proved remarkably successful in determining all the vibrational (J = 0) bound states of Hr [14] and even more powerful than a comparable DVRI_FBR2 study [5].
We present here our DVR3 program, DVR3D, which utilises a DVR in each of the scattering (or Radau) coordinates 'I' 'z and (J. The code calculates vibrational (J = 0) eigenenergies and wavefunction values, and has been used successfully on Hr [14], HCN/HNC [13] and HzS. Optionally the code will also calculate Coriolis decoupled rotationally excited states of the molecule, although there is as yet no means of coupling these states to give a full rotational calculation.
Using the wavefunctions provided by DVR3D, we have developed a further program to calculate vibrational band intensities using the theory of Le Sueur et al. [15]. This program, DIPJODVR, is included as part of the suite.
2. Method
2.1. The vibrational problem: DVR3D
2.1.1. Formulating and solving the 3D DVR Hamiltonian
We use a multidimensional DVR in scattering (Jacobi) or Radau co-ordinates. In scattering coordi¬nates 'I represents the "diatom" distance between atom 1 and atom 2, and 'z the separation of the third atom from the diatom centre of mass. The angle between 'I and 'z is (J. A formal definition of ('I' 'z, (J) in Radau coordinates can be found elsewhere [16].
Using a finite basis representation (FBR), the zero rotational angular momentum (J = 0) Hamiltonian matrix can be written as [17]
Cm , n, j I If I m', n', r) = (m I h(1) I m')8n,n,8j,j' + (n I h(2) I n')8m,m,8j,f'
+ (m I g(l) I m')8n•n, + (n I g(2) I n')8m,m,)jU + 1)8j,j' + Cm, n, j I V('p '2' (J) 1m', n', i'>.
(1 )
If J> 0 and the projection of J along the body-fixed z-axis is designated k, then an extra, diagonal in k term is added to (1):
(m, n , i. J, k I If 1m', n', i'. J, k) = (m, n, j I If 1m', n', i')
+ (t I g(i) I t')8j,j'8s,s,(J(J + 1) - 2kZ).
(2)
In (2), if the body-fixed z-axis is taken along 'I then It) = 1m), s = nand i = 1; conversely if z is along 'z, It) = In), s = m and i = 2.
3K2
l.R. Henderson et al. / Fully pointwise calculation of' ribrational spectra
A DVR is essentially a unitary transformation of an FBR defined for some quadrature scheme associated with the FBR polynomials. When using a multidimensional DVR (i.e. a totally pointwise representation), one needs always to start (at least notionally anyway) by defining the FBR. Further, it is comforting to know that one can, at any time, transform between the two representations uniquely.
In this work the angular basis functions I j> are Legendre polynomials, or associated Legendre functions if k i= O. The radial basis functions are similar to those employed in our FBR3 and DVRI_FBR2 programs [6,19]. These are either Morse oscillator-like functions or spherical oscillators. The Morse oscillator-