SCELib: a parallel computational library of molecular properties in the single centre approach. N. Sanna, F.A. Gianturco.

PROGRAM SUMMARY
Title of program: SCELib
Catalogue identifier: ADMG
Ref. in CPC: 128(2000)139
Distribution format: tar gzip file
Operating system: Compaq True64 V4.0X, SUN Solaris V2.X, AIX V4.3.X, Linux RedHat V6.0
High speed store required: 200MK words
Number of bits in a word: 64
Number of lines in distributed program, including test data, etc: 71182
Keywords: Single centre expansion, Library, SCE molecular properties, Electron molecule, Scattering, Molecular physics.
Programming language used: C
Computer: Compaq ES40 , SUN ES4500 , IBM SP .

Nature of physical problem:
In this set of codes an efficient procedure is implemented to describe the wavefunction and related molecular properties of a polyatomic molecular system within the Single Centre of Expansion (SCE) framework of reference. The resulting SCE wavefunction, electron density, electrostatic and exchange/correlation potentials can then be used via a proper Application Program Interface (AFI) to describe the target molecular system in electron-molecule scattering calculations. The generated molecular properties which are expanded over a single centre turn out to be of more general application and some possible uses in quantum chemistry, biomodelling and drug design are also outlined.

Method of solution
The polycentre Hartree-Fock solution for a molecule of arbitrary geometry, based on linear combination of Gaussian-Type Orbital (GT0), is expanded over a single centre, typically the Centre of Mass (C.O.M.), by means of a Gauss Legendre/Chebyschev quadrature over the theta, phi angular coordinates. The resulting SCE numerical wavefunction is then used to calculate the one-particle electron density, the electrostatic potential, a model exchange potential and two correlation/polarization potentials induced by the impinging electrons, with the correct aymptotic behaviour for the leading dipole molecular polarizabilities.

Restrictions on the complexity of the problem
Depending on the molecular system under study and on the operating conditions the program may or may not fit into available RAM memory. In this case a feature of the program is to memory map a disk file in order to efficiently access the memory data through a disk device.

Typical running time
The execution time strongly depends on the molecular target description and on the hardware/OS chosen, but it is directly proportional to the (r,theta,phi) grid size and to the number of angular basis functions used. Thus, from the program printout of the main arrays memory occupancy, the user can approximately derive the expected computer time needed for a given calculation executed in serial mode. For parallel executions the overall efficiency must be further taken into account, and this depends on the number of processors used as well as on the parallel architecture chosen, so a simple general law is at present not determinable.

Unusual features of the program
The code has been engineered to use dynamical, runtime determined, global parameters with the aim to have all the data fitted in RAM memory. Some unusual circumstances, e.g. when using large values of those parameters, may cause the program to run with unexpected performance reductions due to runtime bottlenecks like memory swap operations which strongly depend on the hardware used. In these cases a parallel execution of the code is generally sufficient to fix the problem since the data size is partitioned over the available processors. When a suitable parallel system is not available for execution, a mechanism of memory mapped file can be used; with this option on, all the available memory will be used as buffer for a disk file which contains the whole data set, thus having a better throughput with respect to the traditional swapping/paging of the Unix OS.