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] aabi_v1_0.gz(36 Kbytes)
Manuscript Title: A function subprogram in order to calculate the matrix elements of rotation operators.
Authors: F. Brut
Program title: ROTATION MATRIX ELEMENTS D
Catalogue identifier: AABI_v1_0
Distribution format: gz
Journal reference: Comput. Phys. Commun. 36(1985)213
Programming language: Fortran.
Computer: CDC CYBER 750.
Operating system: NOS/BE.
RAM: 7K words
Word size: 60
Keywords: General purpose, Algebras, Quantum mechanics, Angular momentum Projection techniques, Particle physics.
Classification: 4.2.

Nature of problem:
The reduced matrix elements of rotation operators are calculated. The sum is done for all the values for which the argument of the factorials are greater than or equal to zero. Each matrix element is written explicitly as a literal polynomial on the variables cos (beta/2) and sin (beta/2).

Solution method:
The reduced matrix elements djmm'(Beta) are homogeneous polynomials of degree 2j on the variables cos(Beta/2) and sin(Beta/2). With the phase convention of Wigner, namely:
djmm'(Beta) = (-1)m-m' djm'm(Beta) = dj-m',-m(Beta)
only the matrix elements which satisfy simultaneously the following conditions
-j <= m <= 0
|m'| <= |m|
are considered. The others can be deduced from the above relations. Each single term of the polynomial includes three factors : a signed numerical constant, the appropriate power of cos(Beta/2) and the appropriate power of sin(Beta/2). Each of these factors is stored, as data for the first of them, in a variable name and the polynomial is then written explicitly.

Unusual features:
In the present version, the program assumes that the quantum number j can take integer and half-integer values from 0 up to and including 15/2. The range or the values of the spin j can be changed easily. In fact, this function subprogram is the output resulting from a FORTRAN program. Thus, it is somewhat easy to make reasonable changes on the boundaries of the spin j, if required.

Running time:
For the maximum efficiency, the function must be called for very many times, in the same program unit, in order to give the best response time. The execution time required to calculate one matrix element depends mainly upon the values of its arguments. But for instance, 15000 calls, for various values of the Euler angle Beta and for all the values of j between 0 and 15/2, took less than 1s CPU time for execution on a CDC CYBER 750.