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] adfv_v10_0.tar.gz(532 Kbytes)
Manuscript Title: Maple procedures for the coupling of angular momenta. An up-date of the RACAH module.
Authors: S. Fritzsche
Program title: RACAH
Catalogue identifier: ADFV_v10_0
Distribution format: tar.gz
Journal reference: Comput. Phys. Commun. 180(2009)2021
Programming language: Maple 11 and 12.
Computer: All computers with a license for the computer algebra package Maple [1].
Operating system: Suse Linux 10.2+ and ubuntu 8.10.
Keywords: Angular momentum theory, bipolar harmonic, Clebsch-Gordan coefficient and expansion, Gaunt coefficient, Racah algebra techniques, recoupling coefficient, Sharp's symbol, spherical harmonic, spinor, vector and tensor spherical harmonic, sum rule evaluation, Wigner n-j symbol, D-function and rotation matrix, Yutsis graph.
PACS: 31.10.+z, 32.10-f.
Classification: 4.1, 5.

Does the new version supersede the previous version?: Yes

Nature of problem:
The theories of angular momentum and spherical tensor operators, sometimes known also as Racah's algebra, provide a powerful calculus for studying spin networks and (quantum) many-particle systems. For an efficient use of these theories, however, one requires not only a reliable handling of a large number of algebraic transformations and rules but, more often than not, also a fast access to their standard quantities, such as the Wigner n-j symbols, Clebsch-Gordan coefficients, spherical harmonics of various kinds, the rotation matrices, and many others.

Solution method:
A set of Maple procedures has been developed and maintained during the last decade which supports both, algebraic manipulations as well as fast computations of the standard expressions and symbols from the theory of angular momentum [2, 3]. These procedures are based on a sizeable set of group-theoretical (and often rather sophisticated) relations which has been discussed and proven in the literature; see the monograph by Varshalovich et al. [5] for a comprehensive compilation. In particular the algebraic manipulation of complex (Racah) expressions may result in considerable simplifications, thus reducing the 'numerical costs', and often help obtain further insight into the behaviour of physical systems.

Reasons for new version:
A revision of the RACAH module became necessary for mainly three reasons: (i) Since the last extension of the RACAH procedures [4], which was developed within the framework of Maple 8, several updates of Maple were distributed by the vendors (currently Maple 13) and required a number of adaptations to the source code; (ii) the increasing size and program structure of the RACAH module made it advisible to separate the (procedures for the treatment of the) atomic shell model from the manipulation and computation of RACAH expressions. Therefore, the computation of angular coefficients for different coupling schemes, (grand) coefficients of fractional parentage as well as the matrix elements (of various irreducible tensors from the shell model) is to be maintained from now on independently within the JUCYS module; (iii) a number of bugs and inconsistencies have been reported to us and corrected in the present version.

Summary of revisions:
In more detail, the following changes have been made:
  1. Since recent versions of Maple now support the automatic type checking of all incoming arguments and the definition of user-defined types; we have adapted most of the code to take advantage of these features, and especially those commands that are accessible by the user.
  2. In the computation of the Wigner n-j symbols and Clebsch-Gordan coefficients, we now return a '0' in all cases in which the triangular rules are not fulfilled, for example, if δ(a, b, c) = 0 for (a b cmambmc) or {a b cd e f}. This change in the program saves the user making these tests on the quantum numbers explicitly everytime (in the summation over more complex expressions) that such a symbol or coefficient is invoked. The program still terminates with an error message if the (half-integer and integer) angular momentum quantum numbers appear in an inproper combination.
  3. While a recursive generation of the Wigner 3-j and 6-j symbols [6] may reduce the costs of some computations (and has thus been utilized in the past), it also makes the program rather sophisticated, especially if an algebraic evaluation or computations high number of Digits need to be supported by the same generic commands. The following procedures are therefore no longer supported by the RACAH module:
    Racah_compute_w3j_jrange(), Racah_compute_w3j_mrange(),
    Racah_compute_w3j_recursive(), Racah_compute_w6j_range(), and
    On most PCs, a sequential computation of all requested symbols is carried out within the same time basically.
  4. Because the module JUCYS has grown to a size of about 35,000 lines of code and data, it appears helpful and necessary to maintain it independently. The procedures from the JUCYS modules were designed to facilitate the computation of matrix elements of the unit tensors, the coefficients of fractional parentage (of various types) as well as transformation matrices between different coupling schemes [7] and are, thus, independent of the RACAH module (although they typically require that the RACAH code is available). The JUCYS module is no longer distributed together with the present code.
  5. Apart from the Wigner n-j symbols (see above), some minor bugs have been reported and corrected in Racah_expand() and Racah_set().
  6. To facilitate the test of the installation and as a first tutorial on the module, we now provide the Maple worksheet Racah-tests-2009-maple12.mw in the Racah2009 root directory. This worksheet contains the examples and test cases from the previous versions. For the test of the installation, it is recommended that a 'copy' of this worksheet is saved and compared to the results from the re-run. It can be used also as a helpful source to define new examples in interactive work with the RACAH module.
The RACAH module is distributed in a tar file adfv_v10_0.tar.gz from which the RACAH2009 root directory is (re-)generated by the command tar -zxvf adfv_v10_0.tar.gz. This directory contains the source code libraries (tested for Maple 11 and 12), a Read.me for the installation of the program, the worksheet Racah-tests-2009-maple12.mw as well as the document Racah-commands-2009.pdf. This .pdf document serves as a Short Reference Manual and provides the definition of all the data structures of the RACAH program together with an alphabetic list of all user relevant (and exported) commands. Although emphasis was placed on preserving the compatibility of the program with earlier releases of Maple, this cannot always be guarranted due to changes in the Maple syntax. The Racah2009 root also contains an example of a .mapleinit file that can be modified and incorporated into the user's home directory to make the RACAH module accessible like any other module of Maple. As mentioned above, the worksheet Racah-tests-2009-maple12.mw, help test the installation and may serve as a first tutorial.

The (RACAH) program is based on the concept of Racah expressions [cf. Fig. 1 in Ref. [4]] which, in principle, may contain any number of Wigner n-j symbols (n ≤ 9), Clebsch Gordan coefficients, spherical harmonics and/or rotation matrices. In practise, of course, the required time and the success of an evaluation procedure depends on the complexity of the expressions and on the storage available, sometimes also on MAPLE's internal garbage treatment. In some cases, it is advisable to attempt first a simplification of the magnetic quantum numbers for a given expression before the summation over further 6-j and 9-j symbols should be taken into account. For all other quantities (that are compiled in Ref. [8], Tables 1 and 2 and explained in more detail in the Short Reference Manual, Racah-commands-2009.pdf), we currently just facilitate fast numerical computations by exploiting, as far as possible, MAPLE's hardware floating-point model.
The program also supports simplifications on the Wigner rotation matrices. In integrals over the rotation matrices, products of up to three Wigner D-functions or reduced matrices (with the same angular arguments) are recognized; for the integration over a solid angle, however, the domain of integration must be specified explicitly for the Euler angles α and γ in order to force MAPLE to generate a constant of integration.
In the course of the evaluation of Racah expressions, it is, in practice, often difficult to check internally whether all substructures of an expression are defined properly. Therefore, the user must ensure that all angular momenta (if given explicitly) must finally evaluate to integer and half-integer values and that they satisfy proper coupling conditions.

Unusual features:
The RACAH program is designed for interactive use and for providing a quick and algebraic evaluation of (complex) expressions from Racah's algebra. In the evaluation, it exploits a large set of sum rules which are known from Racah's algebra and which may include (multiple) summations over dummy indices; see Varshalovich et al. [5] for a more detailed account of the theory. One strength of the program is that it recognizes automatically the symmetries of the symbols and functions, and that it applies also (some of) the graphical rules due to Yutsis and coworkers [9]. As before, the result of the evaluation process will be provided as Racah expressions, if a further simplification could be achieved, and may hence be used for further derivations and calculations within the given framework.
In dealing with recoupling coefficients, these coefficients can be entered simply as a string of angular momenta (variables), separated by commas, and very similar to how they appear in mathematical texts. This is a crucial advantage of the program, compared with previous developments, for which the angular momenta and coupling coefficients had often to be given in a very detailed format.
A Short Reference Manual to all procedures of the RACAH program is provided by this distribution; it also contains the worksheet Racah-tests-2009-maple12.mw that contains the examples from all previous versions and may help test the installation. This worksheet can serve as a first tutorial to the RACAH procedures.
In the past, the RACAH program has been utilized extensively in a number of applications including angular and polarization studies of heavy ions [10], angular distributions and correlation functions following photon-induced excitation processes [11], entanglement studies [12], in application of point-group symmetries and several others.

Running time:
The worksheet supplied with the distribution takes about 1 minute to run.

[1] Maple is a registered trademark of Waterloo Maple Inc.
[2] S. Fritzsche, Comp. Phys. Commun. 103, 51 (1997).
[3] S. Fritzsche, S. Varga, D. Geschke, and B. Fricke, Comp. Phys. Commun. 111, 167 (1998). T. Ingho , S. Fritzsche, and B. Fricke, Comp. Phys. Commun. 139, 297 (2001). S. Fritzsche, T. Ingho , T. Bastug and M. Tomaselli, Comp. Phys. Commun. 139, 314 (2001).
[4] J. Pagaran, S. Fritzsche and G. Gaigalas; Comput. Phys. Commun. 174, 616 (2006).
[5] D. A. Varshalovich, A. N. Moskalev, V. K. Khersonskii, Quantum Theory of Angular Momentum (World Scientific, Singapore a.o., 1988).
[6] K. Schulten and R. G. Gordon, Comp. Phys. Commun. 11, 269 (1976).
[7] G. Gaigalas, S. Fritzsche, B. Fricke, Comp. Phys. Commun. 135, 219 (2001); G. Gaigalas and S. Fritzsche, Comp. Phys. Commun. 149, 39 (2002); G. Gaigalas, O. Scharf and S. Fritzsche; Comput. Phys. Commun. 166, 141 (2005).
[8] S. Fritzsche, T. Ingho and M. Tomaselli, Comp. Phys. Commun. 153, 424 (2003).
[9] A. P. Yutsis, I. B. Levinson and V. V. Vanagas, The Theory of Angular Momentum (Israel Program for Scientific Translation, Jerusalem, 1962).
[10] S. Fritzsche, P. Indelicato and T. Stöhlker, J. Phys. B38, S707 (2005).
[11] M. Kitajima, M. Okamoto, M. Hoshino et al. J. Phys. B35, 3327 (2002); N. M. Kabachnik, S. Fritzsche, A. N. Grum-Grzhimailo et al. Phys. Reports 451, 155 (2007); S. Fritzsche, A. N. Grum-Grzhimailo, E. V. Gryzlova and N. M. Kabachnik, J. Phys. B41, 165601 (2008).
[12] T. Radtke and S. Fritzsche, Comput. Phys. Commun. 175, 145 (2006).