Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] abrb_v1_0.gz(228 Kbytes)
Manuscript Title: A program system for ab initio MO calculations on vector and parallel processing machines. Part 1: evaluation of integrals.
Authors: R. Ernenwein, M.-M. Rohmer, M. Benard
Program title: ASTERIX-INTEGS
Catalogue identifier: ABRB_v1_0
Distribution format: gz
Journal reference: Comput. Phys. Commun. 58(1990)305
Programming language: Fortran.
Computer: CRAY-2.
Operating system: UNICOS 4.0.
Word size: 64
Peripherals: disc.
Keywords: Molecular physics, Integrals, Mcmurchie-davidson Formalism, Vectorization, Parallelism, Cray-2.
Classification: 16.10.

Nature of problem:
Evaluation of the one- and two-electron molecular integrals generated by a basis of contracted Gaussian-type orbitals (CGTOs).

Solution method:
Implementation of the McMurchie and Davidson algorithm by taking advantage of the shell structure of the CGTO basis set and of the molecular symmetry. The parallelism is ensured by distributing over a limited number of logical tasks the calculation of the 55 relevant classes of integrals (from (SSSS) to (FFFF)). All steps of the calculation, including contraction, are carried out within vector loops. The length of the vector loops is adapted through dynamic storage allocation:
i) to the maximal high-speed storage available.
ii) to the storage partitioning required by multitasking.
iii) to the amount of storage necessary to compute the integrals belonging to a given class.

The present version of the program is limited to s, p, d and f Gaussian type orbitals (GTOs). Other limitations are as follows:
 Number of atoms:                              100                       
 Number of Gaussian shells:                    1000                      
 Number of CGTOs:                              511                       
 Number of contracted shells:                  400                       
 Number of GTOs for one CGTO:                  8                         
 Number of GTOs per atom and per orbital type: 25

Unusual features:
The present program system has been designed for and optimized on the CRAY-2. This machine is somewhat apart from the presently available "supercomputers" due to the combination of i) a very large memory, ii) a high vector efficiency and iii) a quadriprocessor architecture allowing for parallelism. Our goal was to take as much advantage as possible of these combined facilities. In order to achieve it, several functions and Fortran extensions were introduced that are specific to Cray systems. These nonstandard features include vector functions taken from the Cray scientific library 3SCI (WHENFGE, WHENNE, ISMIN), vector treatment of conditional statements (CVMG), functions monitoring the asynchroneous IOs (BUFFER IN, BUFFER OUT) and Fortan-77 extensions used to manage the dynamic storage allocation (POINTER type statements, HPALLOC function and GETJMEM facility) or to implement multitasking (TASK COMMON statement, TSKVALUE, TSKWAIT, TSKATART amd ISELFSCH functions). These features are documented in the program. Although they restrict the portability of the present version to CRAY systems, we consider that they are necessary for an optimal performance. A version of this program system adapted to IBM 3090/VF computers is being developed.

Running time:
The running time approximately varies as N**4/S, where N is the size of the GTO basis and S is the number of symmetry operations retained by the program. Illustrative timings are given and discussed in Section 6. See also Part II of this series.