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] aarl_v1_0.gz(12 Kbytes)
Manuscript Title: Programs for the coupling of spherical harmonics.
Authors: E.J. Weniger, E.O. Steinborn
Program title: YLM-COUPLING
Catalogue identifier: AARL_v1_0
Distribution format: gz
Journal reference: Comput. Phys. Commun. 25(1982)149
Programming language: Fortran.
Computer: TR 440.
Operating system: BS3 MV 19.
RAM: 12K words
Word size: 48
Keywords: General purpose, Function, Spherical harmonics, Gaunt coefficient, Condon-shortley Coefficient, Coupling of two orbital Angular momenta.
Classification: 4.7.

Nature of problem:
The subroutines GAUNT and RECYLM allow the linearization of the product of two spherical harmonics. The summation limits are determined by certain selection rules for the GAUNT coefficients.

Solution method:
The subroutine GAUNT computes a whole string of Gaunt coefficients <l3m3|l2m2|l1m3-m2> for all allowed l1 values (l2,m2,l3 and m3 are mixed input quantities) using their representation in terms of 3jm-symbols. The 3jm-symbols are computed using a homogeneous 3-term recurrence relation derived by Schulten and Gordon. The computational algorithm used is apart from certain modifications the same as that developed by Schulten and Gordon. The subroutine RECYLM computes a string of spherical harmonics Ylm for all l with lmin = |m| <= l <= lmax (m and lmax are input quantities) recursively using their homogeneous 3-term recurrence relation in l. Both programs use DOUBLE PRECISION arithmetic for floating point numbers.

Unusual features:
In order to avoid complex arithmetic the azimuth angle theta is set to equal to zero, i.e. RECYLM calculates a string of spherical harmonics Ylm(theta,0). In order to prevent overflow or underflow two DOUBLE PRECISION variables HUGE and TINY have to be defined.

Running time:
Approximately 1 ms per Gaunt coefficient for the string < 15 0|15 0| l 0>, approx. 3 ms for the string <15 15|15 15|l 0> and approx. 4.5 ms for the string <8 -5|10 7|l-12>. Approximately 1.3 ms per spherical harmonic for the string Ylo, 0<= l<= 15, and approx. 1.5 ms for the string Yl**-2,2<= l<= 5. To make these absolute numbers comparable: On the TR 440 one evaluation of DSQRT requires approx. 0.43 ms.